Expand description
Visualization utilities for metrics
This module provides tools for visualizing metrics results, including confusion matrices, ROC curves, precision-recall curves, calibration plots, and learning curves.
The visualization module is designed to work with popular Rust plotting libraries and provides data structures that can be easily converted to formats used by those libraries.
§Basic Usage
use scirs2_metrics::visualization::{
VisualizationData, VisualizationMetadata, PlotType, PlottingBackend, backends
};
// Create visualization data
let mut data = VisualizationData::new();
data.add_series("x", vec![1.0, 2.0, 3.0, 4.0, 5.0]);
data.add_series("y", vec![2.0, 4.0, 1.0, 3.0, 7.0]);
// Create visualization metadata
let mut metadata = VisualizationMetadata::new("Example Plot");
metadata.set_plot_type(PlotType::Line);
metadata.set_x_label("X Axis");
metadata.set_y_label("Y Axis");
// Get the default backend
let backend = backends::default_backend();
// Save the visualization to a file
backend.save_to_file(&data, &metadata, &Default::default(), "plot.html").unwrap();§Using Specific Visualizers
The module provides specialized visualizers for common metrics visualizations:
use scirs2_core::ndarray::array;
use scirs2_metrics::classification::confusion_matrix;
use scirs2_metrics::visualization::{
confusion_matrix::confusion_matrix_visualization,
PlottingBackend, backends
};
// Example data
let y_true = array![0, 1, 2, 0, 1, 2];
let y_pred = array![0, 2, 1, 0, 0, 2];
// Create confusion matrix
let (cm, _classes) = confusion_matrix(&y_true, &y_pred, None).unwrap();
let cm_f64 = cm.mapv(|x| x as f64);
// Create visualizer
let visualizer = confusion_matrix_visualization(
cm_f64,
Some(vec!["Class 0".to_string(), "Class 1".to_string(), "Class 2".to_string()]),
false
);
// Get data and metadata
let viz_data = visualizer.prepare_data().unwrap();
let viz_metadata = visualizer.get_metadata();
// Save the visualization
let backend = backends::default_backend();
backend.save_to_file(&viz_data, &viz_metadata, &Default::default(), "confusion_matrix.html").unwrap();Re-exports§
pub use advanced_interactive::CollaborationConfig;pub use advanced_interactive::CollaborationManager;pub use advanced_interactive::DashboardConfig;pub use advanced_interactive::DashboardState;pub use advanced_interactive::DataSource;pub use advanced_interactive::EventResponse;pub use advanced_interactive::EventSystem;pub use advanced_interactive::ExportConfig;pub use advanced_interactive::InteractionConfig;pub use advanced_interactive::InteractiveDashboard;pub use advanced_interactive::InteractiveWidget;pub use advanced_interactive::LayoutConfig;pub use advanced_interactive::LayoutManager;pub use advanced_interactive::RealtimeConfig;pub use advanced_interactive::RenderingEngine;pub use advanced_interactive::ThemeConfig;pub use advanced_interactive::UpdateManager;pub use advanced_interactive::WidgetConfig;pub use advanced_interactive::WidgetEvent;pub use advanced_interactive::WidgetType;pub use backends::PlottingBackend;pub use calibration::CalibrationVisualizer;pub use confusion_matrix::ConfusionMatrixVisualizer;pub use interactive::interactive_roc_curve_from_labels;pub use interactive::interactive_roc_curve_visualization;pub use interactive::InteractiveOptions;pub use interactive::InteractiveROCVisualizer;pub use learning_curve::LearningCurveVisualizer;pub use precision_recall::PrecisionRecallVisualizer;pub use roc_curve::ROCCurveVisualizer;pub use helpers::*;
Modules§
- advanced_
interactive - Advanced interactive visualization with real-time capabilities
- backends
- Backend adapters for visualization
- calibration
- Calibration curve visualization
- confusion_
matrix - Confusion matrix visualization
- helpers
- Helper functions for visualization
- interactive
- Interactive visualization utilities
- learning_
curve - Learning curve visualization
- precision_
recall - Precision-Recall curve visualization
- roc_
curve - ROC curve visualization
Structs§
- Visualization
Data - Data structure for visualization
- Visualization
Metadata - Metadata for visualization
- Visualization
Options - Options for visualization
Enums§
Traits§
- Metric
Visualizer - Common trait for metric visualizers
- Visualization
- Helper functions for saving visualizations