Explore · SVG gallery

SVG Template Gallery

Every chart template in the vfairness rendering module: 44 templates, shown as 49 example cards. Select any card for a full preview and the code that renders it.

How the 44 are counted

The machine count is stats.svg_templates in vfairness-manifest.json, which counts renderable charts only. The templates directory holds 46 .svg files (as of 2026-08-28): two are partials included by other templates, _shared_defs and _could_not_check, so list_templates() reports 46. The 49 cards show the reporting dashboard at its three tiers (executive, operational, technical) and three facade helpers (FairnessDashboard, MetricsStore, ReportGenerator). Every chart uses the Blanco design language: sharp corners, near-monochrome, with colour kept for four semantic tones (pass, warn, info, neutral).

SVG Rendering Module

The vfairness.rendering module provides polished, card-based SVG dashboards using Jinja2 templates. SVG rendering needs the [rendering] extra (Jinja2): pip install vfairness[rendering]. The rendered SVG output is self-contained, with no runtime, browser, or JavaScript dependency.

Every chart on this page is synthetic demonstration data

Nothing in this gallery is a real evaluation of a real model. Each render is produced by scripts/regenerate_gallery_examples.py, which drives the real library over invented inputs so the pictures stay honest to the code, and none of it describes anybody's system.

That is a design property, not a disclaimer. A demonstration chart must never be mistakable for an audit result, so the twelve renders that come from the library's own built-in demo fixtures carry an EXAMPLE ONLY: SYNTHETIC DEMONSTRATION DATA, NOT A REAL EVALUATION band on the canvas itself and repeat it at the front of the accessible <desc>, so the marking survives being screenshotted, pasted into a slide, or read aloud by a screen reader. Those fixtures are reachable only by passing example=True: an adapter called with no data does not quietly fall back to the sample, it reports that it measured nothing.

Three states, never two

Every chart here distinguishes assessed-pass, assessed-fail and could-not-check, and never collapses the third into either of the others. A row or a chart that measured nothing gets no number, no badge, no colour and no plot point, and it is counted in no total that would imply it was measured. Verdicts are graded over the graded subset only, the count of ungraded items is stated on the canvas, and an unqualified all-clear is withheld while anything is ungraded: a partly-run gate reads PASS with "2 passed, 0 failed, 1 not run" rather than ALL PASS. Several captions below note where a chart shows this third state.

Jupyter notebook, SVG Rendering Demo: vfairness_0_svg_rendering_demo.ipynb Interactive walkthrough of every SVG template with live rendering and synthetic dataOpen it to see this run end to end. Every notebook is executed on each build, so the code here matches the library you installed.

Preprocessing & Feature Engineering

Bias detection and feature analysis visualizations

10 entries

Training-Time Interventions

Fairness-aware training analysis and method comparison

4 entries

Post-Processing Interventions

Threshold optimization and prediction reweighting

3 entries

Calibration Visualizations

Group-specific calibration analysis and reliability diagrams

5 entries

Evaluation & Metrics

Fairness metrics visualization and statistical analysis

10 entries

Monitoring & Operations

Real-time fairness monitoring, drift detection, and alert visualizations

4 entries

Reporting & Dashboards

Interactive dashboards, automated reports, and metrics storage for stakeholder communication

6 entries

Experimentation & A/B Testing

Fairness-aware A/B testing, power analysis, Pareto optimization, and causal decomposition

4 entries

Workflow Integration

MLOps, CI/CD gates, and PR report cards

Complete Template Reference

Every SVG template in vfairness.rendering plus interactive components from vfairness.operations.reporting and vfairness.operations.experimentation:

Template Adapter Function Category Description
bias_audit.svgbias_audit_to_svg()PreprocessingBias detection dashboard
correlation_heatmap.svgcorrelation_heatmap_to_svg()PreprocessingFeature correlation matrix
correlation_matrix.svgcorrelation_matrix_to_svg()PreprocessingGeneral multi-method correlation matrix
proxy_risk.svgproxy_risk_to_svg()PreprocessingProxy variable detection
transformation_comparison.svgtransformation_comparison_to_svg()PreprocessingFeature transformation impact
intersectional_analysis.svgintersectional_analysis_to_svg()PreprocessingSubgroup analysis
intersectional_disparity.svgintersectional_disparity_to_svg()PreprocessingRanked intersectional disparity, ground truth vs prediction
fairness_report.svgfairness_report_to_svg()PreprocessingSummary dashboard
data_validation.svgdata_validation_to_svg()PreprocessingPre-training data validation
auto_discovery.svgauto_discovery_to_svg()PreprocessingProtected attribute scanner
training_report.svgtraining_report_to_svg()TrainingCompact training report
training_analysis_report.svgtraining_analysis_report_to_svg()TrainingFull training analysis
method_comparison.svgmethod_comparison_to_svg()TrainingMethod bar chart
tradeoff_analysis.svgtradeoff_analysis_to_svg()TrainingPareto scatter plot
threshold_optimization_report.svgthreshold_optimization_to_svg()Post-ProcessingThreshold dashboard
reweighting_comparison_report.svgreweighting_comparison_to_svg()Post-ProcessingReweighting methods
cicd_pipeline.svgcicd_pipeline_to_svg()Post-ProcessingDeployment gate
calibration_report.svgcalibration_report_to_svg()CalibrationCalibration dashboard
reliability_diagram.svgreliability_diagram_to_svg()CalibrationClassic reliability plot
group_calibration.svggroup_calibration_to_svg()CalibrationPer-group calibration
calibration_disparity.svgcalibration_disparity_to_svg()CalibrationCalibration gap
pareto_frontier.svgpareto_frontier_to_svg()CalibrationTrade-off frontier
fairness_detailed_report.svgfairness_detailed_report_to_svg()EvaluationExecutive report
radar_chart.svgradar_chart_to_svg()EvaluationMulti-metric radar
disparity_heatmap.svgdisparity_heatmap_to_svg()EvaluationPairwise disparities
metrics_bar_chart.svgmetrics_bar_chart_to_svg()EvaluationMetrics comparison
group_comparison.svggroup_comparison_to_svg()EvaluationGroup metrics
effect_sizes.svgeffect_sizes_to_svg()EvaluationEffect magnitudes
confidence_intervals.svgconfidence_intervals_to_svg()EvaluationStatistical CIs
robustness_testing.svgrobustness_testing_to_svg()EvaluationRobustness & sensitivity testing
ranking_fairness.svgranking_fairness_to_svg()EvaluationRanking fairness metrics
regression_fairness.svgregression_fairness_to_svg()EvaluationRegression equity report
monitoring_dashboard.svgmonitoring_dashboard_to_svg()MonitoringLive fairness dashboard
drift_report.svgdrift_report_to_svg()MonitoringMulti-scale drift report
alert_timeline.svgalert_timeline_to_svg()MonitoringAlert history timeline
temporal_analysis.svgtemporal_analysis_to_svg()MonitoringTrend & pattern analysis
experiment_results.svgexperiment_results_to_svg()ExperimentationA/B test results & forest plot
experiment_recommendation.svgexperiment_recommendation_to_svg()ExperimentationDeployment recommendation
power_analysis.svgpower_analysis_to_svg()ExperimentationStatistical power analysis
causal_decomposition.svgcausal_decomposition_to_svg()ExperimentationCausal mediation analysis
workflow_overview.svgworkflow_overview_to_svg()WorkflowDevelopment workflow pipeline
hierarchical_gate.svghierarchical_gate_to_svg()WorkflowHierarchical fairness gate
report_card.svgreport_card_to_svg()WorkflowPR fairness report card
reporting_dashboard.svgreporting_dashboard_to_svg(tier="executive"|"operational"|"technical")ReportingMulti-tier fairness report dashboard
MetricsStoreMetricsStore()ReportingUnified metrics data layer
FairnessDashboardFairnessDashboard()ReportingInteractive Plotly dashboard
ReportGeneratorReportGenerator()ReportingAutomated multi-format reports
FairnessExperimentFairnessExperiment()ExperimentationFairness A/B testing
FairnessPowerAnalyzerFairnessPowerAnalyzer()ExperimentationPower analysis & SPRT
ExperimentAnalysisExperimentAnalysis()ExperimentationPareto & causal analysis

Quick Usage

python
from vfairness.rendering import (
    render_svg, list_templates,
    # Report dashboards
    bias_audit_to_svg, calibration_report_to_svg, fairness_report_to_svg,
    # Feature engineering
    correlation_matrix_to_svg,
    # Training
    training_report_to_svg, training_analysis_report_to_svg,
    # Post-processing
    threshold_optimization_to_svg, reweighting_comparison_to_svg,
    # Evaluation
    fairness_detailed_report_to_svg, radar_chart_to_svg,
    # Monitoring
    monitoring_dashboard_to_svg, drift_report_to_svg,
    alert_timeline_to_svg, temporal_analysis_to_svg,
    # Reporting
    reporting_dashboard_to_svg,
    # Experimentation
    experiment_results_to_svg, experiment_recommendation_to_svg,
    power_analysis_to_svg,
    # Workflow integration
    workflow_overview_to_svg,
    hierarchical_gate_to_svg,
    report_card_to_svg,
)

# List all available templates
print(list_templates())

# Render using adapter functions
svg = training_analysis_report_to_svg(report, save_path='report.svg')

# Or use render_svg directly
svg = render_svg('radar_chart', {'metrics': [...], 'groups': [...]})

# ── Reporting ──────────────────────────────────────────────
from vfairness.operations.reporting import (
    MetricsStore, FairnessDashboard, ReportGenerator, InteractiveDashboard
)

store = MetricsStore()
store.ingest_from_monitor(monitor)          # Feed from monitoring
dashboard = FairnessDashboard(store)
fig = dashboard.create_executive_view()     # Plotly figure

gen = ReportGenerator(store, dashboard)
report = gen.generate_executive_report()    # HTML / PDF / JSON

# ── Experimentation ────────────────────────────────────────
from vfairness.operations.experimentation import (
    FairnessExperiment, FairnessPowerAnalyzer, ExperimentAnalysis
)

exp = FairnessExperiment(
    control_data=df_ctrl, treatment_data=df_treat,
    protected_attributes=['gender', 'race'], outcome_column='approved',
)
result = exp.run_full_analysis()
analysis = ExperimentAnalysis(result, experiment=exp)
rec = analysis.decision_recommendation()   # Deploy / hold / revert