pub struct GnuplotSettings {
pub x_label: String,
pub x_axis: Option<GnuplotAxis>,
pub y_label: String,
pub y_axis: Option<GnuplotAxis>,
pub title: String,
pub terminal: GnuplotTerminal,
pub palette: GnuplotPalette,
pub cb_range: Option<(f64, f64)>,
pub size: String,
}
Expand description
§Settings for gnuplot
- implements default
- implements builder pattern for itself
§Safety
These gnuplot options are not meant for production! If you allow arbitrary user input for this, the resulting gnuplot scripts can contain arbitrary system calls!
Thus calling the resulting gnuplot scripts is not safe, if you have not sanitized the inputs!
This is not an issue if you only create scripts for yourself, i.e., if you are your own user.
Fields§
§x_label: String
x label for gnuplot
x_axis: Option<GnuplotAxis>
how to format the labels of the x axis?
y_label: String
y label for gnuplot
y_axis: Option<GnuplotAxis>
how to format the labels of the y axis?
title: String
title for gnuplot
terminal: GnuplotTerminal
which terminal to use for gnuplot
palette: GnuplotPalette
Color palette for heatmap
cb_range: Option<(f64, f64)>
Define the cb range if this option is set
size: String
§Size of the terminal
- Anything gnuplot accepts (e.g. “2cm, 2.9cm”) is acceptable
§Note
the code does not check, if your input for size
makes any sense
Implementations§
Source§impl GnuplotSettings
impl GnuplotSettings
Sourcepub fn cb_range(&mut self, range_start: f64, range_end: f64) -> &mut Self
pub fn cb_range(&mut self, range_start: f64, range_end: f64) -> &mut Self
§Builder pattern - set cb_range
Sourcepub fn remove_cb_range(&mut self) -> &mut Self
pub fn remove_cb_range(&mut self) -> &mut Self
§Builder pattern - remove cb_range
Sourcepub fn x_label<S: Into<String>>(&mut self, x_label: S) -> &mut Self
pub fn x_label<S: Into<String>>(&mut self, x_label: S) -> &mut Self
§Builder pattern - set x_label
Sourcepub fn y_label<S: Into<String>>(&mut self, y_label: S) -> &mut Self
pub fn y_label<S: Into<String>>(&mut self, y_label: S) -> &mut Self
§Builder pattern - set y_label
Sourcepub fn terminal(&mut self, terminal: GnuplotTerminal) -> &mut Self
pub fn terminal(&mut self, terminal: GnuplotTerminal) -> &mut Self
§Builder pattern - set terminal
Sourcepub fn palette(&mut self, palette: GnuplotPalette) -> &mut Self
pub fn palette(&mut self, palette: GnuplotPalette) -> &mut Self
§Builder pattern - set color palette
Sourcepub fn x_axis(&mut self, axis: GnuplotAxis) -> &mut Self
pub fn x_axis(&mut self, axis: GnuplotAxis) -> &mut Self
Set x_axis - See GnuplotAxis or try it out
Sourcepub fn remove_x_axis(&mut self) -> &mut Self
pub fn remove_x_axis(&mut self) -> &mut Self
Remove x_axis
Sourcepub fn y_axis(&mut self, axis: GnuplotAxis) -> &mut Self
pub fn y_axis(&mut self, axis: GnuplotAxis) -> &mut Self
Set y_axis - See GnuplotAxis or try it out
Sourcepub fn remove_y_axis(&mut self) -> &mut Self
pub fn remove_y_axis(&mut self) -> &mut Self
Remove y_axis
Sourcepub fn write_heatmap<F, W>(
&self,
writer: W,
closure: F,
x_len: usize,
y_len: usize,
) -> Result<()>
pub fn write_heatmap<F, W>( &self, writer: W, closure: F, x_len: usize, y_len: usize, ) -> Result<()>
§Write a heatmap with the given gnuplot Settings
closure
has to write the heatmap. It must writey_len
rows withx_len
values each, where the latter values are separated by a space. This data will be used for the heatmap.x_len
: The number of entries in each column, that you promise theclosure
will writey_len
: The number of columns you promise that theclosure
will write
§Safety
These gnuplot options are not meant for production! If you allow arbitrary user input for the gnuplot settings, the resulting gnuplot scripts can contain arbitrary system calls!
Thus calling the resulting gnuplot scripts is not safe, if you have not sanitized the inputs!
This is not an issue if you only create scripts for yourself, i.e., if you are your own user.
Sourcepub fn write_heatmap_external_matrix<W, P>(
&self,
writer: W,
matrix_width: usize,
matrix_height: usize,
matrix_path: P,
) -> Result<()>
pub fn write_heatmap_external_matrix<W, P>( &self, writer: W, matrix_width: usize, matrix_height: usize, matrix_path: P, ) -> Result<()>
Same as write_heatmap but it assumes that the heatmap matrix is available in the file “heatmap”
§Safety
These gnuplot options are not meant for production! If you allow arbitrary user input for the gnuplot settings, the resulting gnuplot scripts can contain arbitrary system calls!
Thus calling the resulting gnuplot scripts is not safe, if you have not sanitized the inputs!
This is not an issue if you only create scripts for yourself, i.e., if you are your own user.
Trait Implementations§
Source§impl Clone for GnuplotSettings
impl Clone for GnuplotSettings
Source§fn clone(&self) -> GnuplotSettings
fn clone(&self) -> GnuplotSettings
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for GnuplotSettings
impl Debug for GnuplotSettings
Source§impl Default for GnuplotSettings
impl Default for GnuplotSettings
Source§impl<'de> Deserialize<'de> for GnuplotSettings
impl<'de> Deserialize<'de> for GnuplotSettings
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for GnuplotSettings
impl RefUnwindSafe for GnuplotSettings
impl Send for GnuplotSettings
impl Sync for GnuplotSettings
impl Unpin for GnuplotSettings
impl UnwindSafe for GnuplotSettings
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more