preexplorer

Download License Docs Crate

Easy plotter and saver of simple data. Handy tool for development stage or small computational projects. Save data, have a quick view and an initial gnuplot script to plot it.

If you are looking for a pure Rust plotter, check out plotters.

Purpose

Do you have a costly process in Rust and want to save the data for postprocessing?

Would you like to still have a basic glance to check it and leave fine-tuning of the plot for later?

This is the crate for you!

Work flow

  1. Compute your thing in Rust
  2. Pass the results to a suitable struct from preexplorer, or use the preexplore method.
  3. Use the method plot or plot_later.

After cargo run, your data is saved and a suitable first script for gnuplot to plot the data is saved. If you used plot, you will get a plot by gnuplot that you can save.

The gnuplot script is located in

target\\preexplorer\\plots\\my_identifier.gnu

where my_identifier is the name you gave in rust to the plot.

Therefore, to run it in gnuplot (and get the plot again), run from the console

gnuplot target\\preexplorer\\plots\\my_identifier.gnu

Main features

Gallery

Sequences

Processes

Densities

Heatmaps

For more, see the folder examples.

Installation

Future

Q & A

  1. When comparing processes (Process-related structs), why must they be the same structs? The comparison of processes (Processes-related structs) are a collection of processes. As such, it works as Vec<Process>, so two process structs must be the same type to be compared.
  2. Are there n-dimensional variants? No, it is out of scope. If you want to implement similar functionalities, you can do so easily based on the source code for Data.
  3. How to deactivate some options, e.g. tics? All structs implement the trait Configurable. Each option has documented how to disable it in its corresponding method.

Disclaimer

There is no connection with the gnuplot project.

Changelog

See Changelog.

References

A nice overview of what a good plot should look like: https://serialmentor.com/dataviz/