VisJudge is a specialized model fine-tuned on Qwen2.5-VL-7B-Instruct for visualization quality and aesthetics assessment. It significantly outperforms state-of-the-art multimodal large language models (MLLMs) including GPT-5, GPT-4o, and Claude-4-Sonnet on visualization evaluation tasks.
VisJudge addresses the significant gaps between general MLLMs and human expert judgment in visualization quality assessment. Trained using GRPO (Group Relative Policy Optimization) on the VisJudgeBench dataset containing 3,090 expert-annotated samples, VisJudge evaluates visualizations across the Fidelity-Expressiveness-Aesthetics framework.
Key Features
🏆 State-of-the-Art Performance: 19.8% MAE improvement over GPT-5
📊 Six-Dimensional Evaluation: Data Fidelity, Semantic Readability, Insight Discovery, Design Style, Visual Composition, Color Harmony
🎨 Comprehensive Coverage: Supports 32 visualization types including single charts, multi-panel views, and dashboards
🔬 Expert-Level Assessment: Achieves 0.681 correlation with human experts (vs. 0.429 for GPT-5)
🏆 Performance Benchmarks
Overall Performance Comparison
Model
MAE ↓
MSE ↓
Correlation ↑
VisJudge
0.442
0.306
0.681
GPT-5
0.551
0.484
0.429
GPT-4o
0.609
0.575
0.482
Claude-4-Sonnet
0.618
0.596
0.470
Gemini-2.0-Flash
0.680
0.716
0.395
Gemini-2.5-Pro
0.661
0.674
0.266
Claude-3.5-Sonnet
0.823
1.006
0.395
Qwen2.5-VL-7B
1.048
1.502
0.322
Key Achievements:
🎯 19.8% MAE improvement over GPT-5 (0.551 → 0.442)
📈 58.7% higher correlation with human experts vs GPT-5 (0.429 → 0.681)
🏅 Outperforms all commercial MLLMs across all metrics
Performance by Evaluation Dimensions (MAE ↓)
Model
Overall
Data Fidelity
Semantic Readability
Insight Discovery
Design Style
Visual Composition
Color Harmony
VisJudge
0.442
0.662
0.649
0.679
0.581
0.546
0.604
GPT-5
0.551
0.861
0.780
0.776
0.648
0.698
0.682
GPT-4o
0.609
0.986
0.804
0.742
0.608
0.694
0.657
Claude-4-Sonnet
0.618
0.839
0.757
0.830
0.678
0.733
0.785
Gemini-2.0-Flash
0.680
0.828
0.910
0.818
0.637
0.728
0.798
Gemini-2.5-Pro
0.661
1.241
0.944
0.898
0.839
0.918
0.980
Claude-3.5-Sonnet
0.823
0.977
0.902
1.152
0.782
0.939
0.862
Qwen2.5-VL-7B
1.048
1.169
1.294
0.857
0.755
0.812
0.772
Performance by Evaluation Dimensions (Correlation ↑)
Model
Overall
Data Fidelity
Semantic Readability
Insight Discovery
Design Style
Visual Composition
Color Harmony
VisJudge
0.681
0.571
0.625
0.572
0.567
0.512
0.385
GPT-5
0.429
0.256
0.438
0.383
0.463
0.277
0.295
GPT-4o
0.482
0.382
0.539
0.442
0.472
0.277
0.363
Claude-4-Sonnet
0.470
0.392
0.548
0.453
0.422
0.164
0.228
Gemini-2.0-Flash
0.395
0.371
0.458
0.418
0.460
0.157
0.209
Gemini-2.5-Pro
0.266
0.180
0.379
0.357
0.447
0.194
0.208
Claude-3.5-Sonnet
0.395
0.325
0.491
0.366
0.456
0.137
0.259
Qwen2.5-VL-7B
0.322
0.340
0.349
0.278
0.356
0.148
0.155
Key Observations:
All models struggle most with Aesthetics dimensions (Design Style, Visual Composition, Color Harmony)
Data Fidelity is relatively easier but still challenging for most models
VisJudge consistently outperforms baseline models across all six dimensions
🔍 Evaluation Framework
VisJudge evaluates visualizations across three fundamental dimensions with six measurable metrics:
1. Fidelity - Data Accuracy and Truthfulness
Data Fidelity: Ensures visual encodings accurately reflect original data without misleading interpretations
2. Expressiveness - Information Clarity and Understandability
Semantic Readability: Assesses clarity of information encoding and unambiguous decoding
Insight Discovery: Evaluates effectiveness in revealing data patterns, trends, and outliers
3. Aesthetics - Visual Aesthetics and Refinement
Design Style: Measures innovation and uniqueness of design elements
Visual Composition: Focuses on spatial layout, balance, and element positioning
Color Harmony: Assesses color coordination and functional effectiveness
🚀 Usage
Installation
pip install transformers peft torch pillow
Quick Start
python
1from peft import PeftModel
2from transformers import Qwen2_5_VLForConditionalGeneration, AutoProcessor
3from PIL import Image
4import torch
56# Load base model7base_model = Qwen2_5_VLForConditionalGeneration.from_pretrained(8"Qwen/Qwen2.5-VL-7B-Instruct",9 torch_dtype=torch.bfloat16,10 device_map="auto"11)1213# Load VisJudge LoRA adapter14model = PeftModel.from_pretrained(15 base_model,16"xypkent/visjudge-7b"17)1819# Load processor20processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct")2122# Prepare your visualization23image = Image.open("path/to/your/visualization.png")2425# Evaluation prompt26messages =[27{28"role":"user",29"content":[30{"type":"image","image": image},31{"type":"text","text":"""You are a rigorous data visualization evaluation expert. Please evaluate this visualization based on the "Fidelity-Expressiveness-Aesthetics" framework.
3233The evaluation follows the "Fidelity-Expressiveness-Aesthetics" principle:
34- Fidelity: Data accuracy and truthfulness
35- Expressiveness: Information clarity and understandability
36- Aesthetics: Visual aesthetics and refinement
3738For each evaluation dimension below, provide a score from 1 to 5 and reasoning based on the scoring criteria:
39401. Data Fidelity: Does the visual encoding accurately reflect the data without distortion?
412. Semantic Readability: Is the information clearly encoded and easy to decode?
423. Insight Discovery: Does it effectively reveal patterns, trends, and insights?
434. Design Style: Is the design innovative and distinctive?
445. Visual Composition: Is the layout balanced and well-organized?
456. Color Harmony: Are colors coordinated and effective?
4647Return Format: JSON object with the following structure:
48{
49 "data_fidelity": {"score": 1-5, "reasoning": "Your explanation here."},
50 "semantic_readability": {"score": 1-5, "reasoning": "Your explanation here."},
51 "insight_discovery": {"score": 1-5, "reasoning": "Your explanation here."},
52 "design_style": {"score": 1-5, "reasoning": "Your explanation here."},
53 "visual_composition": {"score": 1-5, "reasoning": "Your explanation here."},
54 "color_harmony": {"score": 1-5, "reasoning": "Your explanation here."},
55 "average_score": "the average of the above six scores, rounded to 2 decimals"
56}
5758Do not include any additional text, only the JSON object."""}59]60}61]6263# Process and generate64text = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)65inputs = processor(text=[text], images=[image], return_tensors="pt").to(model.device)6667with torch.no_grad():68 outputs = model.generate(**inputs, max_new_tokens=512)6970response = processor.batch_decode(outputs, skip_special_tokens=True)[0]71print(response)
Example Output
json
1{2"data_fidelity":{3"score":4,4"reasoning":"The visual encoding accurately represents the data with appropriate scales and minimal distortion."5},6"semantic_readability":{7"score":5,8"reasoning":"Clear labels, legend, and annotations make the information very easy to understand and decode."9},10"insight_discovery":{11"score":4,12"reasoning":"The chart effectively reveals key trends and patterns, though some subtle insights could be more emphasized."13},14"design_style":{15"score":3,16"reasoning":"Uses standard design elements without much innovation, but maintains professional appearance."17},18"visual_composition":{19"score":4,20"reasoning":"Well-balanced layout with good spacing between elements and clear visual hierarchy."21},22"color_harmony":{23"score":4,24"reasoning":"Color palette is well-coordinated and supports readability, with good contrast and consistency."25},26"average_score":4.0027}
✅ Human-like Scoring: Mean score μ=3.11 (vs. human μ=3.13), eliminating the score inflation bias seen in other models
✅ Balanced Assessment: Avoids both overly conservative (Gemini-2.5-Pro μ=3.02) and overly generous (Qwen2.5-VL-7B μ=3.89) biases
✅ Complexity Handling: Maintains performance across single visualizations (0.577), multi-panel views (0.565), and complex dashboards (0.375)
📈 Supported Visualization Types
Single Visualizations (22 types)
Bar Chart, Pie Chart, Line Chart, Area Chart, Treemap, Sankey Diagram, Heatmap, Scatter Plot, Histogram, Donut Chart, Funnel Chart, Bubble Chart, Choropleth Map, Radar Chart, Network Graph, Candlestick Chart, Gauge Chart, Box Plot, Point Map, Word Cloud, Violin Plot, and more
Multiple Visualizations (5 types)
Comparison Views, Small Multiples, Coordinated Views, Overview+Detail
Performance degrades with increasing visualization complexity (dashboards are most challenging)
Best suited for visualization types seen during training
Aesthetic dimensions (especially Visual Composition in complex dashboards) remain challenging
Inherits any biases present in the base Qwen2.5-VL model
📝 Citation
If you use VisJudge in your research, please cite:
bibtex
1@misc{xie2025visjudge,
2 title={VisJudge-Bench: Aesthetics and Quality Assessment of Visualizations},
3 author={Yupeng Xie and Zhiyang Zhang and Yifan Wu and Sirong Lu and Jiayi Zhang and Zhaoyang Yu and Jinlin Wang and Sirui Hong and Bang Liu and Chenglin Wu and Yuyu Luo},
4 year={2025},
5 eprint={2510.22373},
6 archivePrefix={arXiv},
7 primaryClass={cs.CL},
8 url={https://arxiv.org/abs/2510.22373}
9}