embedded-plots/examples/single_plot_rgb.rs
Michał Chodzikiewicz f0909be13d Refactor - split axis
2021-01-04 22:20:07 +01:00

45 lines
No EOL
1 KiB
Rust

use embedded_graphics::{
pixelcolor::Rgb565,
prelude::*,
};
use embedded_graphics_simulator::{
SimulatorDisplay,
Window,
OutputSettingsBuilder,
};
use embedded_plots::{
single_plot::{SinglePlot},
curve::{PlotPoint, Curve},
axis::Scale,
};
fn main() -> Result<(), core::convert::Infallible> {
let mut display: SimulatorDisplay<Rgb565> = SimulatorDisplay::new(Size::new(480, 272));
let data = vec![
PlotPoint { x: 0, y: 0 },
PlotPoint { x: 1, y: 2 },
PlotPoint { x: 2, y: 2 },
PlotPoint { x: 3, y: 0 },
];
let curve = Curve::from_data(data.as_slice());
let plot = SinglePlot::new(
&curve,
RgbColor::YELLOW,
Point { x: 50, y: 10 },
Point { x: 430, y: 250 },
Scale::RangeFraction(3),
Scale::RangeFraction(2)
);
plot.draw(&mut display)?;
let output_settings = OutputSettingsBuilder::new()
.build();
Window::new("Basic plot", &output_settings).show_static(&display);
Ok(())
}