[package]
name = "velociplot"
version = "0.1.0"
edition = "2021"
rust-version = "1.70"
authors = ["Ibrahim Cesar <email@ibrahimcesar.com>"]
license = "MIT"
description = "Fast, publication-quality scientific plotting library - Quick, precise, and deadly effective"
homepage = "https://github.com/ibrahimcesar/velociplot"
repository = "https://github.com/ibrahimcesar/velociplot"
documentation = "https://docs.rs/velociplot"
keywords = ["plotting", "visualization", "graphics", "charts", "scientific"]
categories = ["graphics", "visualization", "science"]
readme = "README.md"
[lib]
name = "velociplot"
path = "src/lib.rs"
[[bin]]
name = "vplot"
path = "src/bin/vplot.rs"
required-features = ["cli"]
[dependencies]
thiserror = "1.0"
tiny-skia = { version = "0.11", optional = true }
fontdue = { version = "0.9", optional = true }
clap = { version = "4.5", features = ["derive", "cargo"], optional = true }
csv = { version = "1.3", optional = true }
serde = { version = "1.0", features = ["derive"], optional = true }
serde_json = { version = "1.0", optional = true }
png = { version = "0.17", optional = true }
ndarray = { version = "0.16", optional = true }
polars = { version = "0.44", optional = true, default-features = false, features = [
"dtype-full",
] }
[dev-dependencies]
approx = "0.5"
[features]
default = ["raster"]
raster = ["dep:tiny-skia", "dep:png", "dep:fontdue"]
cli = ["dep:clap", "dep:csv", "dep:serde", "dep:serde_json", "raster"]
svg = []
pdf = []
latex = []
ndarray-support = ["dep:ndarray"]
polars-support = ["dep:polars"]
full = [
"cli",
"raster",
"svg",
"pdf",
"latex",
"ndarray-support",
"polars-support",
]
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true
[profile.dev]
opt-level = 0
[profile.bench]
opt-level = 3
lto = true
[[example]]
name = "basic_line"
path = "examples/basic_line.rs"
[[example]]
name = "scatter"
path = "examples/scatter.rs"
[[example]]
name = "histogram"
path = "examples/histogram.rs"
[[example]]
name = "custom_font"
path = "examples/custom_font.rs"
[[example]]
name = "legend_alignment_test"
path = "examples/legend_alignment_test.rs"
[[example]]
name = "scatter_markers"
path = "examples/scatter_markers.rs"
[[example]]
name = "bar_plot"
path = "examples/bar_plot.rs"
[[example]]
name = "box_plot"
path = "examples/box_plot.rs"
[[example]]
name = "qq_plot"
path = "examples/qq_plot.rs"
[[example]]
name = "pp_plot"
path = "examples/pp_plot.rs"
[[example]]
name = "violin_plot"
path = "examples/violin_plot.rs"
[[example]]
name = "axis_labels"
path = "examples/axis_labels.rs"
[[example]]
name = "legend_auto_position"
path = "examples/legend_auto_position.rs"
[[example]]
name = "svg_export"
path = "examples/svg_export.rs"
[[example]]
name = "math_notation"
path = "examples/math_notation.rs"
[[example]]
name = "legend_below"
path = "examples/legend_below.rs"
[[example]]
name = "colormaps"
path = "examples/colormaps.rs"
[[example]]
name = "legend_separate"
path = "examples/legend_separate.rs"
[[example]]
name = "ndarray_integration"
path = "examples/ndarray_integration.rs"
[[example]]
name = "polars_integration"
path = "examples/polars_integration.rs"
[[example]]
name = "heatmap"
path = "examples/heatmap.rs"
[[example]]
name = "bubble"
path = "examples/bubble.rs"
[[example]]
name = "legend_types"
path = "examples/legend_types.rs"
[[example]]
name = "bar_legend"
path = "examples/bar_legend.rs"
[[example]]
name = "stacked_bar"
path = "examples/stacked_bar.rs"
[[example]]
name = "area"
path = "examples/area.rs"
[[example]]
name = "treemap"
path = "examples/treemap.rs"
[[example]]
name = "timeline"
path = "examples/timeline.rs"
[[example]]
name = "datelistplot"
path = "examples/datelistplot.rs"
[[example]]
name = "climate_nasa"
path = "examples/real-world/climate_nasa.rs"