Point Distributions by Set Scores
✓ Published0🌍 Public
TTennisVisuals
Last edited Feb 18, 2016
Created on Feb 17, 2016
This visualization compares tennis match statistics by showing the distribution of total points (and total shots) across different set scores, such as 6-0 or 7-5. Sets are grouped along the x-axis, with each group displaying an animated, exploding boxplot that highlights quartiles, outliers, and individual data points. The chart uses D3.js v3 with SVG and supports dynamic transitions when switching between point or shot metrics. Tooltips are configurable via d3-tip or Bootstrap popovers, and the data comes from parsed ATP and WTA match records.
AI-generated descriptionreusable updating exploding boxplot
Design based on original: mcaule
See this block in production with Live Data
Features:
- Dynamic data transitions
- Events are configurable as options such that external functions can be seamlessly integrated
- e.g. external tooltips can be configured for mouseover events
var container = d3.select('body');
var xbp = explodingBoxplot();
xbp.options({
data: {
group: 'Set Score',
color_index: 'Set Score',
identifier: 'h2h'
},
axes: {
x: { label: 'Set Score' },
y: { label: 'Total Points' }
}
});
xbp.data(data);
container.call(xbp);
xbp.update();
Change the dimension for y axis:
xbp.options( { axes: { y: { label: 'Total Shots' } } });
xbp.update();
Data for this example was generated by mcpParse
Accessors:
by default accessors with no parameters return current values
- chart.options(object) // for options that don't have accessors
- chart.width(width)
- chart.height(height)
- chart.data(data) // set data
- chart.update() // update chart
- chart.colors(object) // chart.colors({'group': 'color1', 'group': 'color2'})
- chart.events() // trigger functions for i.e. mouseover/mouseout events
operations on data held in chart instance
- chart.pop()
- chart.push(row) -or- chart.push([row, row])