use vega_lite_4::*;
use ndarray::{Array, Array2};
use ndarray_rand::RandomExt;
use ndarray_rand::rand_distr::StandardNormal;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let values: Array2<f64> = Array::random((100, 2), StandardNormal);
let chart = VegaliteBuilder::default()
.title("Random points")
.data(values)
.mark(Mark::Point)
.encoding(
EdEncodingBuilder::default()
.x(XClassBuilder::default()
.field("data.0")
.position_def_type(Type::Quantitative)
.build()?)
.y(YClassBuilder::default()
.field("data.1")
.position_def_type(Type::Quantitative)
.build()?)
.build()?,
)
.build()?;
chart.show()?;
eprint!("{}", chart.to_string()?);
Ok(())
}