docs
evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "Evaluates how well the solution uses Plotly.js restyling APIs to initialize a scatter plot once and apply targeted trace and layout mutations without rebuilding the figure. It rewards in-place use of Plotly.restyle, Plotly.relayout, and Plotly.update to manage traces, visibility, ranges, and annotations.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Init with newPlot",
"description": "Creates the initial two-trace scatter chart using Plotly.newPlot with the provided container and series data.",
"max_score": 15
},
{
"name": "Per-trace restyle",
"description": "Applies marker color/line width changes for a specific trace index via Plotly.restyle (or Plotly.update with data/layout arguments) without touching other traces.",
"max_score": 25
},
{
"name": "Visibility toggle",
"description": "Uses Plotly.restyle or Plotly.update to flip a trace's visible state instead of removing or recreating data.",
"max_score": 15
},
{
"name": "Relayout ranges/title",
"description": "Adjusts axis ranges and title through Plotly.relayout (or the layout portion of Plotly.update) while preserving existing data and legend state.",
"max_score": 20
},
{
"name": "Annotation relayout",
"description": "Adds the requested single annotation by updating the annotations array through Plotly.relayout rather than redrawing the plot.",
"max_score": 15
},
{
"name": "No replotting",
"description": "Subsequent style/layout changes avoid re-calling Plotly.newPlot, relying on restyle/relayout/update APIs for in-place mutations.",
"max_score": 10
}
]
}