general_3d_plot/
general_3d_plot.rs

1use plotting::{Color, Figure, Format, FormatBuilder, LineStyle, NamedColor, Trace};
2use std::path::Path;
3
4fn main() {
5    // Define the traces.
6    let trace_1 = Trace::new_3d([1.0, 2.0, 5.0], [1.0, 2.0, 3.0], [1.0, 2.0, 4.0])
7        .name("Trace 1")
8        .line_color(Color::named(NamedColor::Red))
9        .line_width(2.0)
10        .line_style(LineStyle::Dash);
11    let trace_2 = Trace::new_3d([1.0, 2.0, 5.0], [3.0, 2.0, 1.0], [1.0, 2.0, 4.0])
12        .name("Trace 2")
13        .line_color(Color::named(NamedColor::Blue))
14        .line_width(2.0)
15        .line_style(LineStyle::Dot);
16
17    // Figure formatting.
18    let format: Format = FormatBuilder::default()
19        .title("z vs. x and y")
20        .x_label("x")
21        .y_label("y")
22        .z_label("z")
23        .width(800)
24        .height(600)
25        .build()
26        .unwrap();
27
28    // Create the figure.
29    let fig = Figure::new(vec![trace_1, trace_2], format);
30
31    // Save the figure so it can be displayed right below this example.
32    fig.save_inline_html(Path::new("book/src/figures/general_3d_plot.html"));
33
34    // Alternatively, you can show the figure in a web browser.
35    // fig.show();
36}