Classification performance
Start with a confusion matrix when you need class-by-class errors, use ROC curves for threshold tradeoffs, and add precision-recall curves when the positive class is rare or operationally important.
Publication-ready visualizations for machine learning, deep learning, clustering, and computational research. Every chart includes complete Python code you can copy and run.
Computational papers require figures that clearly communicate model performance, training dynamics, and data structure. From confusion matrices summarizing classification accuracy to t-SNE projections revealing cluster geometry, each chart type answers a specific analytical question. The code examples below follow formatting conventions expected by NeurIPS, ICML, JMLR, and similar venues, with proper axis labels, legends, and colorblind-accessible palettes.
Chart selection guide
Computational and machine learning figures work best when each chart has a clear job: diagnose a model, explain a prediction, compare thresholds, or reveal structure in high-dimensional data. Use this section as a fast route from analysis intent to the most relevant Plotivy chart guide.
Start with a confusion matrix when you need class-by-class errors, use ROC curves for threshold tradeoffs, and add precision-recall curves when the positive class is rare or operationally important.
Use learning curves to compare training and validation scores across dataset sizes, then review loss behavior when a model fails to converge or begins to overfit.
Use feature importance plots for model explanation, UMAP scatter plots for high-dimensional structure, and residual plots when regression assumptions need visual checking.
Principal component analysis, scree plots, and biplot construction in Python.
Step-by-step guide to computing and plotting ROC curves with AUC.
Volcano plots, survival curves, heatmaps, and life science visualizations.
Use AI-assisted plotting workflows for model diagnostics, heatmaps, and publication figures.
Band structures, phase diagrams, spectra, and experimental physics figures.
Compute the confusion matrix with sklearn.metrics.confusion_matrix, then visualize it using seaborn.heatmap or matplotlib.imshow with annotated cell values. Normalize rows to show per-class recall rates. Use a sequential colormap (e.g., Blues or Viridis) and include both raw counts and percentages. See our confusion matrix guide for complete code.
Use precision-recall curves when your dataset has significant class imbalance (e.g., fraud detection, rare disease diagnosis). ROC curves can appear optimistic on imbalanced data because the false positive rate is diluted by the large negative class. Precision-recall curves focus on the minority class and provide a more informative assessment of model utility in such settings.
UMAP generally preserves more global structure, runs faster on large datasets, and produces more reproducible layouts than t-SNE. t-SNE excels at revealing fine-grained local cluster structure but can distort inter-cluster distances. For exploratory analysis, try both and compare. UMAP also supports supervised and semi-supervised modes, making it more versatile for embedding tasks.
NeurIPS, ICML, and ICLR accept PDF submissions, so vector-format figures (PDF, SVG) embedded directly in LaTeX are standard. Use matplotlib's savefig with PDF backend for crisp output at any resolution. Ensure fonts are embedded, minimum text size is 8 pt, and figures fit within the paper's column width. Avoid bitmap formats for line plots and charts.