[package]
edition = "2024"
rust-version = "1.92"
name = "ruviz"
version = "0.4.13"
authors = ["Ruviz Contributors"]
build = false
include = [
"/src/**",
"/assets/NotoSans-Regular.ttf",
"/benches/*.rs",
"/examples/**/*.rs",
"/gallery/**/*.rs",
"/scripts/generate_gallery.rs",
"/docs/assets/readme/readme_example.png",
"/Cargo.toml",
"/Cargo.lock",
"/README.md",
"/CHANGELOG.md",
"/LICENSE",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance 2D plotting library for Rust"
readme = "README.md"
keywords = [
"plotting",
"visualization",
"graphics",
"charts",
]
categories = [
"visualization",
"graphics",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Ameyanagi/ruviz"
resolver = "2"
[features]
animation = [
"gif",
"color_quant",
"crossbeam-channel",
]
animation-gif = ["animation"]
animation-hq-gif = [
"animation",
"gifski",
]
animation-video = [
"animation",
"rav1e",
"av1-grain",
]
default = [
"ndarray",
"parallel",
]
full = [
"ndarray_support",
"polars_support",
"nalgebra_support",
"window",
"serde",
"performance",
"gpu",
"svg",
"pdf",
"interactive-gpu",
"animation",
"typst-math",
]
gpu = [
"wgpu",
"bytemuck",
"wgsl_bindgen",
"pollster",
"futures-intrusive",
]
interactive = ["window"]
interactive-gpu = [
"interactive",
"gpu",
]
nalgebra = ["nalgebra_support"]
nalgebra_support = ["dep:nalgebra"]
ndarray_support = ["ndarray"]
parallel = ["rayon"]
pdf = ["svg2pdf"]
performance = [
"parallel",
"simd",
]
polars_support = ["polars"]
serde = [
"dep:serde",
"serde_json",
"palette/serde",
]
simd = ["wide"]
svg = []
typst-math = [
"dep:typst",
"dep:typst-svg",
"dep:typst-render",
"dep:typst-kit",
]
window = [
"winit",
"raw-window-handle",
"dep:softbuffer",
"dep:rfd",
"dep:arboard",
]
[lib]
name = "ruviz"
path = "src/lib.rs"
[[bin]]
name = "generate_gallery"
path = "scripts/generate_gallery.rs"
[[example]]
name = "animation_basic"
path = "examples/animation_basic.rs"
required-features = ["animation"]
[[example]]
name = "animation_easing"
path = "examples/animation_easing.rs"
required-features = ["animation"]
[[example]]
name = "animation_reactive"
path = "examples/animation_reactive.rs"
required-features = ["animation"]
[[example]]
name = "animation_simple"
path = "examples/animation_simple.rs"
required-features = ["animation"]
[[example]]
name = "animation_wave"
path = "examples/animation_wave.rs"
required-features = ["animation"]
[[example]]
name = "annotations_example"
path = "examples/annotations_example.rs"
[[example]]
name = "axis_legend_test"
path = "gallery/basic/axis_legend_test.rs"
[[example]]
name = "axis_scales_example"
path = "examples/axis_scales_example.rs"
[[example]]
name = "basic_example"
path = "gallery/basic/basic_example.rs"
[[example]]
name = "basic_interaction"
path = "examples/basic_interaction.rs"
required-features = ["interactive"]
[[example]]
name = "boxplot_example"
path = "examples/boxplot_example.rs"
[[example]]
name = "create_performance_plot"
path = "examples/create_performance_plot.rs"
[[example]]
name = "data_brushing"
path = "examples/data_brushing.rs"
required-features = ["interactive"]
[[example]]
name = "debug_bar_chart"
path = "examples/debug_bar_chart.rs"
[[example]]
name = "doc_bar_chart"
path = "examples/doc_bar_chart.rs"
[[example]]
name = "doc_boxplot"
path = "examples/doc_boxplot.rs"
[[example]]
name = "doc_colors"
path = "examples/doc_colors.rs"
[[example]]
name = "doc_contour"
path = "examples/doc_contour.rs"
[[example]]
name = "doc_ecdf"
path = "examples/doc_ecdf.rs"
[[example]]
name = "doc_errorbar"
path = "examples/doc_errorbar.rs"
[[example]]
name = "doc_heatmap"
path = "examples/doc_heatmap.rs"
[[example]]
name = "doc_histogram"
path = "examples/doc_histogram.rs"
[[example]]
name = "doc_international"
path = "examples/doc_international.rs"
[[example]]
name = "doc_kde"
path = "examples/doc_kde.rs"
[[example]]
name = "doc_legend"
path = "examples/doc_legend.rs"
[[example]]
name = "doc_legend_positions"
path = "examples/doc_legend_positions.rs"
[[example]]
name = "doc_line_plot"
path = "examples/doc_line_plot.rs"
[[example]]
name = "doc_line_styles"
path = "examples/doc_line_styles.rs"
[[example]]
name = "doc_marker_styles"
path = "examples/doc_marker_styles.rs"
[[example]]
name = "doc_pie"
path = "examples/doc_pie.rs"
[[example]]
name = "doc_polar"
path = "examples/doc_polar.rs"
[[example]]
name = "doc_radar"
path = "examples/doc_radar.rs"
[[example]]
name = "doc_scatter_plot"
path = "examples/doc_scatter_plot.rs"
[[example]]
name = "doc_subplots"
path = "examples/doc_subplots.rs"
[[example]]
name = "doc_themes"
path = "examples/doc_themes.rs"
[[example]]
name = "doc_typst_text"
path = "examples/doc_typst_text.rs"
[[example]]
name = "doc_violin"
path = "examples/doc_violin.rs"
[[example]]
name = "ecosystem_data_integration_demo"
path = "examples/ecosystem_data_integration_demo.rs"
[[example]]
name = "fixes_demo"
path = "examples/fixes_demo.rs"
[[example]]
name = "font_demo"
path = "gallery/advanced/font_demo.rs"
[[example]]
name = "generate_animation_gallery"
path = "examples/generate_animation_gallery.rs"
required-features = ["animation"]
[[example]]
name = "generate_golden_images"
path = "examples/generate_golden_images.rs"
[[example]]
name = "gpu_api_test"
path = "examples/gpu_api_test.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_benchmark"
path = "examples/gpu_benchmark.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_debug_test"
path = "examples/gpu_debug_test.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_integration_test"
path = "examples/gpu_integration_test.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_memory_test"
path = "examples/gpu_memory_test.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_performance_plot"
path = "examples/gpu_performance_plot.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_plot_example"
path = "examples/gpu_plot_example.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_scaling_benchmark"
path = "examples/gpu_scaling_benchmark.rs"
required-features = ["gpu"]
[[example]]
name = "gpu_vs_cpu_benchmark"
path = "examples/gpu_vs_cpu_benchmark.rs"
required-features = ["gpu"]
[[example]]
name = "heatmap_example"
path = "examples/heatmap_example.rs"
[[example]]
name = "heatmap_scale_reversed_axes"
path = "examples/heatmap_scale_reversed_axes.rs"
[[example]]
name = "histogram_example"
path = "examples/histogram_example.rs"
[[example]]
name = "interactive_benchmark_runner"
path = "examples/performance/interactive_benchmark_runner.rs"
required-features = [
"serde",
"animation",
]
[[example]]
name = "interactive_heatmap"
path = "examples/interactive_heatmap.rs"
required-features = ["interactive"]
[[example]]
name = "interactive_multi_series"
path = "examples/interactive_multi_series.rs"
required-features = ["interactive"]
[[example]]
name = "interactive_scatter_clusters"
path = "examples/interactive_scatter_clusters.rs"
required-features = ["interactive"]
[[example]]
name = "legend_features_example"
path = "gallery/publication/legend_features_example.rs"
[[example]]
name = "legend_handles_test"
path = "gallery/basic/legend_handles_test.rs"
[[example]]
name = "legend_horizontal_test"
path = "gallery/basic/legend_horizontal_test.rs"
[[example]]
name = "legend_rounded_test"
path = "gallery/basic/legend_rounded_test.rs"
[[example]]
name = "legend_scatter_test"
path = "gallery/basic/legend_scatter_test.rs"
[[example]]
name = "memory_optimization_demo"
path = "examples/memory_optimization_demo.rs"
[[example]]
name = "memory_pool_performance_test"
path = "examples/memory_pool_performance_test.rs"
[[example]]
name = "million_points"
path = "examples/performance/million_points.rs"
[[example]]
name = "minimal_gpu_benchmark"
path = "examples/minimal_gpu_benchmark.rs"
required-features = ["gpu"]
[[example]]
name = "mixed_coordinate_insets"
path = "examples/mixed_coordinate_insets.rs"
[[example]]
name = "montecarlo_heatmap"
path = "examples/montecarlo_heatmap.rs"
[[example]]
name = "parallel_demo"
path = "examples/parallel_demo.rs"
[[example]]
name = "pdf_export_example"
path = "examples/pdf_export_example.rs"
required-features = ["pdf"]
[[example]]
name = "performance_data_collector"
path = "examples/performance_data_collector.rs"
required-features = ["gpu"]
[[example]]
name = "plotting_benchmark_runner"
path = "examples/performance/plotting_benchmark_runner.rs"
required-features = ["serde"]
[[example]]
name = "precise_centering_test"
path = "examples/precise_centering_test.rs"
[[example]]
name = "profile_render_hotspot"
path = "examples/profile_render_hotspot.rs"
[[example]]
name = "profile_small_dataset"
path = "examples/profile_small_dataset.rs"
[[example]]
name = "reactive_example"
path = "examples/reactive_example.rs"
required-features = ["interactive"]
[[example]]
name = "readme_quickstart"
path = "examples/readme_quickstart.rs"
[[example]]
name = "real_time_performance"
path = "examples/real_time_performance.rs"
required-features = ["interactive"]
[[example]]
name = "scaling_benchmark"
path = "examples/performance/scaling_benchmark.rs"
[[example]]
name = "scientific_plotting"
path = "gallery/scientific/scientific_plotting.rs"
[[example]]
name = "scientific_showcase"
path = "examples/scientific_showcase.rs"
[[example]]
name = "scientific_themes_showcase"
path = "examples/scientific_themes_showcase.rs"
[[example]]
name = "seaborn_style_example"
path = "examples/seaborn_style_example.rs"
[[example]]
name = "simple_publication_test"
path = "gallery/publication/simple_publication_test.rs"
[[example]]
name = "simple_scaling_test"
path = "examples/simple_scaling_test.rs"
required-features = ["gpu"]
[[example]]
name = "simple_visual_test"
path = "gallery/basic/simple_visual_test.rs"
[[example]]
name = "streaming_demo"
path = "examples/performance/streaming_demo.rs"
[[example]]
name = "streaming_example"
path = "examples/streaming_example.rs"
[[example]]
name = "subplot_example"
path = "examples/subplot_example.rs"
[[example]]
name = "title_centering_test"
path = "examples/title_centering_test.rs"
[[example]]
name = "typst_check"
path = "examples/typst_check.rs"
[[example]]
name = "wgpu_test"
path = "examples/wgpu_test.rs"
required-features = ["gpu"]
[[bench]]
name = "baseline_benchmarks"
path = "benches/baseline_benchmarks.rs"
harness = false
[[bench]]
name = "memory_benchmarks"
path = "benches/memory_benchmarks.rs"
harness = false
[[bench]]
name = "memory_performance"
path = "benches/memory_performance.rs"
[[bench]]
name = "memory_pool_benchmarks"
path = "benches/memory_pool_benchmarks.rs"
harness = false
[[bench]]
name = "performance"
path = "benches/performance.rs"
harness = false
[[bench]]
name = "plot_traits"
path = "benches/plot_traits.rs"
harness = false
[[bench]]
name = "simple_memory_benchmark"
path = "benches/simple_memory_benchmark.rs"
harness = false
[dependencies.anyhow]
version = "1.0"
[dependencies.arboard]
version = "3.6.1"
optional = true
[dependencies.av1-grain]
version = "0.4"
optional = true
[dependencies.bytemuck]
version = "1.25"
optional = true
[dependencies.color_quant]
version = "1.1"
optional = true
[dependencies.cosmic-text]
version = "0.16"
[dependencies.crossbeam-channel]
version = "0.5"
optional = true
[dependencies.futures-intrusive]
version = "0.5"
optional = true
[dependencies.gif]
version = "0.14"
optional = true
[dependencies.gifski]
version = "1.34"
optional = true
[dependencies.glam]
version = "0.32"
[dependencies.image]
version = "0.25"
features = ["png"]
default-features = false
[dependencies.log]
version = "0.4"
[dependencies.nalgebra]
version = "0.34"
optional = true
[dependencies.ndarray]
version = "0.17"
optional = true
[dependencies.num_cpus]
version = "1.17"
[dependencies.palette]
version = "0.7"
[dependencies.polars]
version = "0.50"
optional = true
[dependencies.pollster]
version = "0.4"
optional = true
[dependencies.rav1e]
version = "0.8"
optional = true
default-features = false
[dependencies.raw-window-handle]
version = "0.6"
optional = true
[dependencies.rayon]
version = "1.11"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1.0"
optional = true
[dependencies.softbuffer]
version = "0.4"
optional = true
[dependencies.svg2pdf]
version = "0.13"
optional = true
[dependencies.thiserror]
version = "2.0"
[dependencies.tiny-skia]
version = "0.12"
[dependencies.tiny-skia-path]
version = "0.12"
[dependencies.typst]
version = "0.13.1"
optional = true
[dependencies.typst-kit]
version = "0.13.1"
features = [
"fonts",
"embed-fonts",
]
optional = true
default-features = false
[dependencies.typst-render]
version = "0.13.1"
optional = true
[dependencies.typst-svg]
version = "0.13.1"
optional = true
[dependencies.unicode-width]
version = "0.2"
[dependencies.wgpu]
version = "29.0"
optional = true
[dependencies.wgsl_bindgen]
version = "0.21"
optional = true
[dependencies.wide]
version = "0.7"
optional = true
[dependencies.winit]
version = "0.30"
optional = true
[dev-dependencies.approx]
version = "0.5"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.env_logger]
version = "0.11"
[dev-dependencies.plotters]
version = "0.3.7"
features = [
"bitmap_backend",
"line_series",
]
default-features = false
[dev-dependencies.proptest]
version = "1.11"
[dev-dependencies.rand]
version = "0.10"
[dev-dependencies.regex]
version = "1"
[dev-dependencies.sha2]
version = "0.10"
[dev-dependencies.tempfile]
version = "3.27"
[dev-dependencies.tokio]
version = "1.50"
features = ["full"]
[dev-dependencies.trybuild]
version = "1.0"
[target.'cfg(target_os = "freebsd")'.dependencies.ctor]
version = "0.8"
[target.'cfg(target_os = "freebsd")'.dependencies.rfd]
version = "=0.15.4"
features = ["gtk3"]
optional = true
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.rfd]
version = "=0.15.4"
features = ["gtk3"]
optional = true
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.rfd]
version = "=0.15.4"
optional = true
default-features = false
[target."cfg(windows)".dependencies.rfd]
version = "=0.15.4"
optional = true
default-features = false
[target."cfg(windows)".dependencies.windows-sys]
version = "0.61"
features = ["Win32_Storage_FileSystem"]
[profile.bench]
debug = 2
[profile.release]
lto = true
codegen-units = 1