From adb41b8a0b8620cb36f1aa9b88e3e7bd95431997 Mon Sep 17 00:00:00 2001 From: Mike Bostock Date: Wed, 26 Jan 2022 13:40:52 -0800 Subject: [PATCH 1/3] ariaLabel, ariaDescription --- src/axis.js | 2 + src/marks/area.js | 1 + src/marks/arrow.js | 1 + src/marks/bar.js | 14 +- src/marks/cell.js | 7 +- src/marks/dot.js | 1 + src/marks/frame.js | 1 + src/marks/image.js | 1 + src/marks/line.js | 1 + src/marks/link.js | 1 + src/marks/rect.js | 4 +- src/marks/rule.js | 1 + src/marks/text.js | 1 + src/marks/tick.js | 1 + src/marks/vector.js | 1 + src/plot.js | 6 +- src/style.js | 22 +- test/output/aaplBollinger.svg | 10 +- test/output/aaplCandlestick.svg | 8 +- test/output/aaplChangeVolume.svg | 8 +- test/output/aaplClose.svg | 10 +- test/output/aaplCloseUntyped.svg | 8 +- test/output/aaplMonthly.svg | 12 +- test/output/aaplVolume.svg | 8 +- test/output/aaplVolumeRect.svg | 10 +- test/output/anscombeQuartet.svg | 28 +- test/output/athletesBinsColors.svg | 8 +- test/output/athletesHeightWeight.svg | 6 +- test/output/athletesHeightWeightBin.svg | 6 +- test/output/athletesHeightWeightBinStroke.svg | 8 +- test/output/athletesHeightWeightSex.svg | 6 +- test/output/athletesHeightWeightSport.svg | 6 +- test/output/athletesNationality.svg | 6 +- test/output/athletesSample.svg | 60 +-- test/output/athletesSexWeight.svg | 8 +- test/output/athletesSportSex.svg | 6 +- test/output/athletesSportWeight.svg | 60 +-- test/output/athletesWeight.svg | 6 +- test/output/athletesWeightCumulative.svg | 6 +- test/output/availability.svg | 10 +- test/output/ballotStatusRace.svg | 36 +- test/output/beckerBarley.svg | 40 +- test/output/caltrain.html | 12 +- test/output/carsMpg.svg | 8 +- test/output/carsParcoords.svg | 8 +- test/output/clamp.svg | 4 +- test/output/collapsedHistogram.svg | 6 +- test/output/covidIhmeProjectedDeaths.svg | 14 +- test/output/crimeanWarOverlapped.svg | 8 +- test/output/crimeanWarStacked.svg | 8 +- test/output/d3Survey2015Comfort.svg | 8 +- test/output/d3Survey2015Why.svg | 8 +- test/output/decathlon.html | 6 +- test/output/diamondsCaratPrice.svg | 6 +- test/output/diamondsCaratPriceDots.svg | 6 +- test/output/documentationLinks.svg | 10 +- test/output/empty.svg | 6 +- test/output/emptyX.svg | 2 +- test/output/figcaption.html | 8 +- test/output/figcaptionHtml.html | 8 +- test/output/firstLadies.svg | 8 +- test/output/footballCoverage.svg | 32 +- test/output/fruitSales.svg | 8 +- test/output/fruitSalesDate.svg | 8 +- test/output/gistempAnomaly.svg | 8 +- test/output/gistempAnomalyMoving.svg | 10 +- test/output/gistempAnomalyTransform.svg | 8 +- test/output/googleTrendsRidgeline.svg | 388 +++++++++--------- test/output/gridChoropleth.svg | 6 +- test/output/hadcrutWarmingStripes.svg | 4 +- test/output/highCardinalityOrdinal.svg | 4 +- test/output/identityScale.svg | 6 +- test/output/industryUnemployment.svg | 8 +- test/output/industryUnemploymentShare.svg | 8 +- test/output/industryUnemploymentStream.svg | 6 +- test/output/industryUnemploymentTrack.svg | 88 ++-- test/output/infinityLog.svg | 4 +- test/output/learningPoverty.svg | 8 +- test/output/letterFrequencyBar.svg | 63 +-- test/output/letterFrequencyCloud.svg | 2 +- test/output/letterFrequencyColumn.svg | 8 +- test/output/letterFrequencyDot.svg | 4 +- test/output/letterFrequencyLollipop.svg | 10 +- test/output/letterFrequencyWheel.svg | 6 +- test/output/logDegenerate.svg | 4 +- test/output/metroInequality.svg | 6 +- test/output/metroInequalityChange.svg | 8 +- test/output/metroUnemployment.svg | 8 +- test/output/metroUnemploymentHighlight.svg | 8 +- test/output/metroUnemploymentIndex.svg | 6 +- test/output/metroUnemploymentMoving.svg | 8 +- test/output/metroUnemploymentNormalize.svg | 8 +- test/output/metroUnemploymentRidgeline.svg | 274 ++++++------- test/output/metroUnemploymentStroke.svg | 8 +- test/output/mobyDick.svg | 2 +- test/output/mobyDickFaceted.svg | 28 +- test/output/mobyDickLetterFrequency.svg | 8 +- test/output/mobyDickLetterPairs.svg | 6 +- test/output/mobyDickLetterPosition.svg | 6 +- .../mobyDickLetterRelativeFrequency.svg | 8 +- test/output/morleyBoxplot.svg | 12 +- test/output/moviesProfitByGenre.svg | 12 +- test/output/musicRevenue.svg | 10 +- test/output/ordinalBar.svg | 8 +- test/output/penguinCulmen.svg | 64 +-- test/output/penguinCulmenArray.svg | 48 +-- test/output/penguinIslandUnknown.svg | 8 +- test/output/penguinMass.svg | 8 +- test/output/penguinMassSex.svg | 22 +- test/output/penguinMassSexSpecies.svg | 48 +-- test/output/penguinMassSpecies.svg | 8 +- test/output/penguinSex.svg | 8 +- test/output/penguinSexMassCulmenSpecies.svg | 22 +- test/output/penguinSizeSymbols.html | 6 +- test/output/penguinSpeciesCheysson.svg | 10 +- test/output/penguinSpeciesGradient.svg | 8 +- test/output/penguinSpeciesGroup.svg | 8 +- test/output/penguinSpeciesIsland.svg | 8 +- test/output/penguinSpeciesIslandRelative.svg | 16 +- test/output/penguinSpeciesIslandSex.svg | 22 +- test/output/polylinear.svg | 8 +- test/output/randomBins.svg | 6 +- test/output/randomBinsXY.svg | 6 +- test/output/randomQuantile.svg | 6 +- test/output/randomWalk.svg | 8 +- test/output/seattlePrecipitationRule.svg | 4 +- test/output/seattleTemperatureBand.svg | 6 +- test/output/seattleTemperatureCell.svg | 6 +- test/output/sfCovidDeaths.svg | 8 +- test/output/sfTemperatureBand.svg | 10 +- test/output/sfTemperatureBandArea.svg | 8 +- test/output/simpsonsRatings.svg | 8 +- test/output/simpsonsRatingsDots.svg | 10 +- test/output/simpsonsViews.svg | 8 +- test/output/singleValueBar.svg | 8 +- test/output/singleValueBin.svg | 6 +- test/output/softwareVersions.svg | 8 +- test/output/stackedBar.svg | 4 +- test/output/stackedRect.svg | 4 +- test/output/stargazers.svg | 10 +- test/output/stargazersBinned.svg | 10 +- test/output/stargazersHourly.svg | 8 +- test/output/stargazersHourlyGroup.svg | 8 +- test/output/stocksIndex.svg | 10 +- test/output/thisIsJustToSay.svg | 4 +- test/output/travelersYearOverYear.svg | 14 +- test/output/uniformRandomDifference.svg | 8 +- test/output/untypedDateBin.svg | 8 +- test/output/usCongressAge.svg | 8 +- test/output/usCongressAgeColorExplicit.svg | 8 +- test/output/usCongressAgeGender.svg | 8 +- test/output/usCongressAgeSymbolExplicit.svg | 8 +- test/output/usPopulationStateAge.svg | 8 +- test/output/usPopulationStateAgeDots.svg | 10 +- test/output/usPresidentFavorabilityDots.svg | 8 +- test/output/usPresidentialElection2020.svg | 8 +- test/output/usPresidentialForecast2016.svg | 10 +- test/output/usRetailSales.svg | 10 +- test/output/usStatePopulationChange.svg | 8 +- test/output/vectorField.svg | 6 +- test/output/vectorFrame.svg | 12 +- test/output/wealthBritainBar.svg | 8 +- test/output/wealthBritainProportionPlot.svg | 10 +- test/output/wordCloud.svg | 2 +- test/output/wordLengthMobyDick.svg | 6 +- test/plots/letter-frequency-bar.js | 4 +- 166 files changed, 1218 insertions(+), 1175 deletions(-) diff --git a/src/axis.js b/src/axis.js index 8a00001b51..815e710a51 100644 --- a/src/axis.js +++ b/src/axis.js @@ -65,6 +65,7 @@ export class AxisX { const offsetSign = axis === "top" ? -1 : 1; const ty = offsetSign * offset + (axis === "top" ? marginTop : height - marginBottom); return create("svg:g") + .attr("aria-label", `${this.name}-axis`) .attr("transform", `translate(0,${ty})`) .call(createAxis(axis === "top" ? axisTop : axisBottom, x, this)) .call(maybeTickRotate, tickRotate) @@ -150,6 +151,7 @@ export class AxisY { const offsetSign = axis === "left" ? -1 : 1; const tx = offsetSign * offset + (axis === "right" ? width - marginRight : marginLeft); return create("svg:g") + .attr("aria-label", `${this.name}-axis`) .attr("transform", `translate(${tx},0)`) .call(createAxis(axis === "right" ? axisRight : axisLeft, y, this)) .call(maybeTickRotate, tickRotate) diff --git a/src/marks/area.js b/src/marks/area.js index 5e9a35a4c8..322f097fb9 100644 --- a/src/marks/area.js +++ b/src/marks/area.js @@ -8,6 +8,7 @@ import {maybeIdentityX, maybeIdentityY} from "../transforms/identity.js"; import {maybeStackX, maybeStackY} from "../transforms/stack.js"; const defaults = { + ariaLabel: "area", strokeWidth: 1, strokeMiterlimit: 1 }; diff --git a/src/marks/arrow.js b/src/marks/arrow.js index b68bdf9388..2788b3fb6b 100644 --- a/src/marks/arrow.js +++ b/src/marks/arrow.js @@ -5,6 +5,7 @@ import {applyChannelStyles, applyDirectStyles, applyIndirectStyles, applyTransfo import {maybeSameValue} from "./link.js"; const defaults = { + ariaLabel: "arrow", fill: "none", stroke: "currentColor", strokeLinecap: "round", diff --git a/src/marks/bar.js b/src/marks/bar.js index d70f2aee29..3fb055ac00 100644 --- a/src/marks/bar.js +++ b/src/marks/bar.js @@ -7,10 +7,8 @@ import {maybeIdentityX, maybeIdentityY} from "../transforms/identity.js"; import {maybeIntervalX, maybeIntervalY} from "../transforms/interval.js"; import {maybeStackX, maybeStackY} from "../transforms/stack.js"; -const defaults = {}; - export class AbstractBar extends Mark { - constructor(data, channels, options = {}) { + constructor(data, channels, options = {}, defaults) { super(data, channels, options, defaults); const {inset = 0, insetTop = inset, insetRight = inset, insetBottom = inset, insetLeft = inset, rx, ry} = options; this.insetTop = number(insetTop); @@ -58,6 +56,10 @@ export class AbstractBar extends Mark { } } +const defaults = { + ariaLabel: "bar" +}; + export class BarX extends AbstractBar { constructor(data, options = {}) { const {x1, x2, y} = options; @@ -68,7 +70,8 @@ export class BarX extends AbstractBar { {name: "x2", value: x2, scale: "x"}, {name: "y", value: y, scale: "y", type: "band", optional: true} ], - options + options, + defaults ); } _transform(selection, {x}, dx, dy) { @@ -94,7 +97,8 @@ export class BarY extends AbstractBar { {name: "y2", value: y2, scale: "y"}, {name: "x", value: x, scale: "x", type: "band", optional: true} ], - options + options, + defaults ); } _transform(selection, {y}, dx, dy) { diff --git a/src/marks/cell.js b/src/marks/cell.js index 905b376124..978c4e0f4b 100644 --- a/src/marks/cell.js +++ b/src/marks/cell.js @@ -1,6 +1,10 @@ import {identity, indexOf, maybeColorChannel, maybeTuple} from "../options.js"; import {AbstractBar} from "./bar.js"; +const defaults = { + ariaLabel: "cell" +}; + export class Cell extends AbstractBar { constructor(data, {x, y, ...options} = {}) { super( @@ -9,7 +13,8 @@ export class Cell extends AbstractBar { {name: "x", value: x, scale: "x", type: "band", optional: true}, {name: "y", value: y, scale: "y", type: "band", optional: true} ], - options + options, + defaults ); } _transform() { diff --git a/src/marks/dot.js b/src/marks/dot.js index 054a480755..95692549c5 100644 --- a/src/marks/dot.js +++ b/src/marks/dot.js @@ -5,6 +5,7 @@ import {Mark} from "../plot.js"; import {applyChannelStyles, applyDirectStyles, applyFrameAnchor, applyIndirectStyles, applyTransform, offset} from "../style.js"; const defaults = { + ariaLabel: "dot", fill: "none", stroke: "currentColor", strokeWidth: 1.5 diff --git a/src/marks/frame.js b/src/marks/frame.js index eac4b8beaf..52876f7680 100644 --- a/src/marks/frame.js +++ b/src/marks/frame.js @@ -4,6 +4,7 @@ import {number} from "../options.js"; import {applyDirectStyles, applyIndirectStyles, applyTransform, offset} from "../style.js"; const defaults = { + ariaLabel: "frame", fill: "none", stroke: "currentColor" }; diff --git a/src/marks/image.js b/src/marks/image.js index 2eaa04ef5c..9c4e0bc4cc 100644 --- a/src/marks/image.js +++ b/src/marks/image.js @@ -5,6 +5,7 @@ import {Mark} from "../plot.js"; import {applyChannelStyles, applyDirectStyles, applyIndirectStyles, applyTransform, applyAttr, offset, impliedString, applyFrameAnchor} from "../style.js"; const defaults = { + ariaLabel: "image", fill: null, stroke: null }; diff --git a/src/marks/line.js b/src/marks/line.js index 32fefee8d1..8431ecdd83 100644 --- a/src/marks/line.js +++ b/src/marks/line.js @@ -6,6 +6,7 @@ import {indexOf, identity, maybeTuple, maybeZ} from "../options.js"; import {applyDirectStyles, applyIndirectStyles, applyTransform, applyGroupedChannelStyles, offset} from "../style.js"; const defaults = { + ariaLabel: "line", fill: "none", stroke: "currentColor", strokeWidth: 1.5, diff --git a/src/marks/link.js b/src/marks/link.js index 7c418e66fb..bf3027f255 100644 --- a/src/marks/link.js +++ b/src/marks/link.js @@ -4,6 +4,7 @@ import {Mark} from "../plot.js"; import {applyChannelStyles, applyDirectStyles, applyIndirectStyles, applyTransform, offset} from "../style.js"; const defaults = { + ariaLabel: "link", fill: "none", stroke: "currentColor", strokeMiterlimit: 1 diff --git a/src/marks/rect.js b/src/marks/rect.js index 4e805b9c25..45aeadcc05 100644 --- a/src/marks/rect.js +++ b/src/marks/rect.js @@ -7,7 +7,9 @@ import {maybeIdentityX, maybeIdentityY} from "../transforms/identity.js"; import {maybeIntervalX, maybeIntervalY} from "../transforms/interval.js"; import {maybeStackX, maybeStackY} from "../transforms/stack.js"; -const defaults = {}; +const defaults = { + ariaLabel: "rect" +}; export class Rect extends Mark { constructor(data, options = {}) { diff --git a/src/marks/rule.js b/src/marks/rule.js index cade4c564f..2a87c84dbf 100644 --- a/src/marks/rule.js +++ b/src/marks/rule.js @@ -6,6 +6,7 @@ import {applyDirectStyles, applyIndirectStyles, applyTransform, applyChannelStyl import {maybeIntervalX, maybeIntervalY} from "../transforms/interval.js"; const defaults = { + ariaLabel: "rule", fill: null, stroke: "currentColor" }; diff --git a/src/marks/text.js b/src/marks/text.js index 31a2041075..e0a998e4a9 100644 --- a/src/marks/text.js +++ b/src/marks/text.js @@ -6,6 +6,7 @@ import {Mark} from "../plot.js"; import {applyChannelStyles, applyDirectStyles, applyIndirectStyles, applyAttr, applyTransform, offset, impliedString, applyFrameAnchor} from "../style.js"; const defaults = { + ariaLabel: "text", strokeLinejoin: "round", strokeWidth: 3, paintOrder: "stroke" diff --git a/src/marks/tick.js b/src/marks/tick.js index f70de8ba50..3e9ebb57b5 100644 --- a/src/marks/tick.js +++ b/src/marks/tick.js @@ -4,6 +4,7 @@ import {identity, number} from "../options.js"; import {applyDirectStyles, applyIndirectStyles, applyTransform, applyChannelStyles, offset} from "../style.js"; const defaults = { + ariaLabel: "tick", fill: null, stroke: "currentColor" }; diff --git a/src/marks/vector.js b/src/marks/vector.js index 4f04d2c495..cda803aa50 100644 --- a/src/marks/vector.js +++ b/src/marks/vector.js @@ -5,6 +5,7 @@ import {Mark} from "../plot.js"; import {applyChannelStyles, applyDirectStyles, applyFrameAnchor, applyIndirectStyles, applyTransform, offset} from "../style.js"; const defaults = { + ariaLabel: "vector", fill: null, stroke: "currentColor", strokeWidth: 1.5, diff --git a/src/plot.js b/src/plot.js index bcbbc92233..2576e45fb2 100644 --- a/src/plot.js +++ b/src/plot.js @@ -6,11 +6,11 @@ import {Dimensions} from "./dimensions.js"; import {Legends, exposeLegends} from "./legends.js"; import {arrayify, isOptions, keyword, range, first, second, where} from "./options.js"; import {Scales, ScaleFunctions, autoScaleRange, applyScales, exposeScales} from "./scales.js"; -import {applyInlineStyles, maybeClassName, styles} from "./style.js"; +import {applyDescription, applyInlineStyles, maybeClassName, styles} from "./style.js"; import {basic} from "./transforms/basic.js"; export function plot(options = {}) { - const {facet, style, caption} = options; + const {facet, style, caption, ariaLabel, ariaDescription} = options; // className for inline styles const className = maybeClassName(options.className); @@ -77,6 +77,8 @@ export function plot(options = {}) { .attr("width", width) .attr("height", height) .attr("viewBox", `0 0 ${width} ${height}`) + .attr("aria-label", ariaLabel) + .call(applyDescription, ariaDescription) .call(svg => svg.append("style").text(` .${className} { display: block; diff --git a/src/style.js b/src/style.js index c0fdad5352..eaa22836a8 100644 --- a/src/style.js +++ b/src/style.js @@ -10,6 +10,8 @@ export function styles( { title, href, + ariaLabel: variaLabel, + ariaDescription, target, fill, fillOpacity, @@ -27,6 +29,7 @@ export function styles( }, channels, { + ariaLabel: cariaLabel, fill: defaultFill = "currentColor", stroke: defaultStroke = "none", strokeWidth: defaultStrokeWidth, @@ -102,6 +105,8 @@ export function styles( } mark.target = string(target); + mark.ariaLabel = string(cariaLabel); + mark.ariaDescription = string(ariaDescription); mark.opacity = impliedNumber(copacity, 1); mark.mixBlendMode = impliedString(mixBlendMode, "normal"); mark.paintOrder = impliedString(paintOrder, "normal"); @@ -111,6 +116,7 @@ export function styles( ...channels, {name: "title", value: title, optional: true}, {name: "href", value: href, optional: true}, + {name: "ariaLabel", value: variaLabel, optional: true}, {name: "fill", value: vfill, scale: "color", optional: true}, {name: "fillOpacity", value: vfillOpacity, scale: "opacity", optional: true}, {name: "stroke", value: vstroke, scale: "color", optional: true}, @@ -138,7 +144,8 @@ export function applyTextGroup(selection, T) { if (T) selection.text(isTemporal(T) ? ([i]) => isoFormat(T[i]) : isNumeric(T) ? (f => ([i]) => f(T[i]))(formatNumber()) : ([i]) => T[i]); } -export function applyChannelStyles(selection, {target}, {title: L, fill: F, fillOpacity: FO, stroke: S, strokeOpacity: SO, strokeWidth: SW, opacity: O, href: H}) { +export function applyChannelStyles(selection, {target}, {ariaLabel: AL, title: T, fill: F, fillOpacity: FO, stroke: S, strokeOpacity: SO, strokeWidth: SW, opacity: O, href: H}) { + if (AL) applyAttr(selection, "aria-label", i => AL[i]); if (F) applyAttr(selection, "fill", i => F[i]); if (FO) applyAttr(selection, "fill-opacity", i => FO[i]); if (S) applyAttr(selection, "stroke", i => S[i]); @@ -146,10 +153,11 @@ export function applyChannelStyles(selection, {target}, {title: L, fill: F, fill if (SW) applyAttr(selection, "stroke-width", i => SW[i]); if (O) applyAttr(selection, "opacity", i => O[i]); if (H) applyHref(selection, i => H[i], target); - applyTitle(selection, L); + applyTitle(selection, T); } -export function applyGroupedChannelStyles(selection, {target}, {title: L, fill: F, fillOpacity: FO, stroke: S, strokeOpacity: SO, strokeWidth: SW, opacity: O, href: H}) { +export function applyGroupedChannelStyles(selection, {target}, {ariaLabel: AL, title: T, fill: F, fillOpacity: FO, stroke: S, strokeOpacity: SO, strokeWidth: SW, opacity: O, href: H}) { + if (AL) applyAttr(selection, "aria-label", ([i]) => AL[i]); if (F) applyAttr(selection, "fill", ([i]) => F[i]); if (FO) applyAttr(selection, "fill-opacity", ([i]) => FO[i]); if (S) applyAttr(selection, "stroke", ([i]) => S[i]); @@ -157,10 +165,11 @@ export function applyGroupedChannelStyles(selection, {target}, {title: L, fill: if (SW) applyAttr(selection, "stroke-width", ([i]) => SW[i]); if (O) applyAttr(selection, "opacity", ([i]) => O[i]); if (H) applyHref(selection, ([i]) => H[i], target); - applyTitleGroup(selection, L); + applyTitleGroup(selection, T); } export function applyIndirectStyles(selection, mark) { + applyAttr(selection, "aria-label", mark.ariaLabel); applyAttr(selection, "fill", mark.fill); applyAttr(selection, "fill-opacity", mark.fillOpacity); applyAttr(selection, "stroke", mark.stroke); @@ -172,6 +181,7 @@ export function applyIndirectStyles(selection, mark) { applyAttr(selection, "stroke-dasharray", mark.strokeDasharray); applyAttr(selection, "shape-rendering", mark.shapeRendering); applyAttr(selection, "paint-order", mark.paintOrder); + applyDescription(selection, mark.ariaDescription); } export function applyDirectStyles(selection, mark) { @@ -226,6 +236,10 @@ export function maybeClassName(name) { return name; } +export function applyDescription(selection, description) { + if (description != null) selection.append("desc").text(description); +} + export function applyInlineStyles(selection, style) { if (typeof style === "string") { selection.property("style", style); diff --git a/test/output/aaplBollinger.svg b/test/output/aaplBollinger.svg index 6bcf2450ff..2af302d754 100644 --- a/test/output/aaplBollinger.svg +++ b/test/output/aaplBollinger.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 60 @@ -71,7 +71,7 @@ 190 ↑ Close - + 2014 @@ -88,13 +88,13 @@ 2018 - + - + - + \ No newline at end of file diff --git a/test/output/aaplCandlestick.svg b/test/output/aaplCandlestick.svg index ad3bc48fb2..b4b4c009f3 100644 --- a/test/output/aaplCandlestick.svg +++ b/test/output/aaplCandlestick.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 155 @@ -47,7 +47,7 @@ 190 ↑ Apple stock price ($) - + December @@ -73,7 +73,7 @@ May - + @@ -195,7 +195,7 @@ - + diff --git a/test/output/aaplChangeVolume.svg b/test/output/aaplChangeVolume.svg index f3c99cfd49..55f8760272 100644 --- a/test/output/aaplChangeVolume.svg +++ b/test/output/aaplChangeVolume.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 7.1 @@ -71,7 +71,7 @@ 8.4 ↑ Volume (log₁₀) - + −6 @@ -105,10 +105,10 @@ +8 Daily change (%) → - + - + diff --git a/test/output/aaplClose.svg b/test/output/aaplClose.svg index a73b880e50..7ae4d5d630 100644 --- a/test/output/aaplClose.svg +++ b/test/output/aaplClose.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -55,7 +55,7 @@ 180 ↑ Close - + 2014 @@ -72,13 +72,13 @@ 2018 - + - + - + \ No newline at end of file diff --git a/test/output/aaplCloseUntyped.svg b/test/output/aaplCloseUntyped.svg index a6afffa8c1..8fcb49e987 100644 --- a/test/output/aaplCloseUntyped.svg +++ b/test/output/aaplCloseUntyped.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -55,7 +55,7 @@ 180 ↑ Close - + 2014 @@ -72,10 +72,10 @@ 2018 - + - + \ No newline at end of file diff --git a/test/output/aaplMonthly.svg b/test/output/aaplMonthly.svg index 4540e67663..5bd158a111 100644 --- a/test/output/aaplMonthly.svg +++ b/test/output/aaplMonthly.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -57,7 +57,7 @@ 260 ↑ Daily trade volume (millions) - + 2014 @@ -74,10 +74,10 @@ 2018 - + - + @@ -140,7 +140,7 @@ - + @@ -203,7 +203,7 @@ - + diff --git a/test/output/aaplVolume.svg b/test/output/aaplVolume.svg index 37b6562d44..c53ce25b8d 100644 --- a/test/output/aaplVolume.svg +++ b/test/output/aaplVolume.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -51,7 +51,7 @@ 16 ↑ Frequency (%) - + 7.0 @@ -77,7 +77,7 @@ 8.4 Trade volume (log₁₀) → - + @@ -94,7 +94,7 @@ - + \ No newline at end of file diff --git a/test/output/aaplVolumeRect.svg b/test/output/aaplVolumeRect.svg index e12fc4133f..4674b0862e 100644 --- a/test/output/aaplVolumeRect.svg +++ b/test/output/aaplVolumeRect.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -71,7 +71,7 @@ 65 ↑ Daily trade volume (millions) - + Mar 18 @@ -97,7 +97,7 @@ May 06 - + @@ -139,7 +139,7 @@ - + @@ -181,7 +181,7 @@ - + \ No newline at end of file diff --git a/test/output/anscombeQuartet.svg b/test/output/anscombeQuartet.svg index 5c7a6ae528..2f4ebf25a8 100644 --- a/test/output/anscombeQuartet.svg +++ b/test/output/anscombeQuartet.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 4 @@ -35,7 +35,7 @@ ↑ y - + 1 @@ -51,7 +51,7 @@ - + 5 @@ -67,7 +67,7 @@ - + 5 @@ -83,7 +83,7 @@ - + 5 @@ -99,7 +99,7 @@ - + 5 @@ -115,8 +115,8 @@ - - + + @@ -131,8 +131,8 @@ - - + + @@ -147,8 +147,8 @@ - - + + @@ -163,8 +163,8 @@ - - + + diff --git a/test/output/athletesBinsColors.svg b/test/output/athletesBinsColors.svg index c2abdf7a68..5bf569317e 100644 --- a/test/output/athletesBinsColors.svg +++ b/test/output/athletesBinsColors.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -54,7 +54,7 @@ 600 ↑ Frequency - + 40 @@ -77,7 +77,7 @@ 160 weight → - + @@ -148,7 +148,7 @@ - + \ No newline at end of file diff --git a/test/output/athletesHeightWeight.svg b/test/output/athletesHeightWeight.svg index 3245536390..e369cb0ee9 100644 --- a/test/output/athletesHeightWeight.svg +++ b/test/output/athletesHeightWeight.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1.25 @@ -95,7 +95,7 @@ 2.20 ↑ height - + 40 @@ -125,7 +125,7 @@ 160 weight → - + diff --git a/test/output/athletesHeightWeightBin.svg b/test/output/athletesHeightWeightBin.svg index 883233cad0..60e4d336cf 100644 --- a/test/output/athletesHeightWeightBin.svg +++ b/test/output/athletesHeightWeightBin.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1.2 @@ -59,7 +59,7 @@ 2.2 ↑ height - + 40 @@ -89,7 +89,7 @@ 160 weight → - + diff --git a/test/output/athletesHeightWeightBinStroke.svg b/test/output/athletesHeightWeightBinStroke.svg index e82504fce6..ddc48a73b3 100644 --- a/test/output/athletesHeightWeightBinStroke.svg +++ b/test/output/athletesHeightWeightBinStroke.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1.2 @@ -59,7 +59,7 @@ 2.2 ↑ height - + 40 @@ -89,7 +89,7 @@ 160 weight → - + @@ -942,7 +942,7 @@ - + diff --git a/test/output/athletesHeightWeightSex.svg b/test/output/athletesHeightWeightSex.svg index 024d6c3ff3..067a3fbe7f 100644 --- a/test/output/athletesHeightWeightSex.svg +++ b/test/output/athletesHeightWeightSex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1.2 @@ -59,7 +59,7 @@ 2.2 ↑ height - + 40 @@ -89,7 +89,7 @@ 160 weight → - + diff --git a/test/output/athletesHeightWeightSport.svg b/test/output/athletesHeightWeightSport.svg index 2d7ad458c5..f7b81607d5 100644 --- a/test/output/athletesHeightWeightSport.svg +++ b/test/output/athletesHeightWeightSport.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1.25 @@ -95,7 +95,7 @@ 2.20 ↑ height - + 40 @@ -125,7 +125,7 @@ 160 weight → - + diff --git a/test/output/athletesNationality.svg b/test/output/athletesNationality.svg index 73cc42da76..e3b2f384ad 100644 --- a/test/output/athletesNationality.svg +++ b/test/output/athletesNationality.svg @@ -13,7 +13,7 @@ white-space: pre; } - + USA @@ -75,7 +75,7 @@ COL - + 0 @@ -101,7 +101,7 @@ 500 Frequency → - + diff --git a/test/output/athletesSample.svg b/test/output/athletesSample.svg index fa2043fc2c..5996facc87 100644 --- a/test/output/athletesSample.svg +++ b/test/output/athletesSample.svg @@ -13,7 +13,7 @@ white-space: pre; } - + aquatics @@ -99,7 +99,7 @@ wrestling sport - + 40 @@ -131,7 +131,7 @@ - + Aaron Younger @@ -183,7 +183,7 @@ - + Adrian Andres Puentes Perez @@ -193,7 +193,7 @@ - + A Jesus Garcia @@ -266,7 +266,7 @@ - + Adam Cwalina @@ -276,7 +276,7 @@ - + Adas Juskevicius @@ -292,10 +292,10 @@ - + - + Adam van Koeverden @@ -314,7 +314,7 @@ - + Aaron Gate @@ -336,7 +336,7 @@ - + Abdelkebir Ouaddar @@ -349,7 +349,7 @@ - + A Lam Shin @@ -362,7 +362,7 @@ - + Abbubaker Mobara @@ -384,7 +384,7 @@ - + Adilson da Silva @@ -394,7 +394,7 @@ - + Aiko Sugihara @@ -413,7 +413,7 @@ - + Abdulrazzaq Murad @@ -429,7 +429,7 @@ - + Adam Dixon @@ -451,7 +451,7 @@ - + Abderrahmane Benamadi @@ -467,7 +467,7 @@ - + Adam Marosi @@ -477,7 +477,7 @@ - + Abdelkhalek Elbanna @@ -502,7 +502,7 @@ - + Abbie Brown @@ -518,7 +518,7 @@ - + Afrodite Zegers @@ -534,7 +534,7 @@ - + Abdel Aziz Mehelba @@ -553,7 +553,7 @@ - + Adam Pattantyus @@ -563,7 +563,7 @@ - + Aaron Cook @@ -573,7 +573,7 @@ - + Agnieszka Radwanska @@ -586,7 +586,7 @@ - + Aaron Royle @@ -596,7 +596,7 @@ - + Aaron Russell @@ -612,7 +612,7 @@ - + Adrian Edward Zielinski @@ -628,7 +628,7 @@ - + Abbos Rakhmonov diff --git a/test/output/athletesSexWeight.svg b/test/output/athletesSexWeight.svg index a3ba8a4405..115e62c32f 100644 --- a/test/output/athletesSexWeight.svg +++ b/test/output/athletesSexWeight.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -59,7 +59,7 @@ 1,000 ↑ Frequency - + 40 @@ -82,7 +82,7 @@ 160 weight → - + @@ -135,7 +135,7 @@ - + \ No newline at end of file diff --git a/test/output/athletesSportSex.svg b/test/output/athletesSportSex.svg index 24919b9fdd..534f71a872 100644 --- a/test/output/athletesSportSex.svg +++ b/test/output/athletesSportSex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + boxing @@ -99,7 +99,7 @@ gymnastics - + 0 @@ -145,7 +145,7 @@ 100 Women (%) → - + diff --git a/test/output/athletesSportWeight.svg b/test/output/athletesSportWeight.svg index 7f6fa375bf..c939a0d448 100644 --- a/test/output/athletesSportWeight.svg +++ b/test/output/athletesSportWeight.svg @@ -13,7 +13,7 @@ white-space: pre; } - + aquatics @@ -99,7 +99,7 @@ wrestling sport - + 40 @@ -132,7 +132,7 @@ - + @@ -178,7 +178,7 @@ - + @@ -214,7 +214,7 @@ - + @@ -277,7 +277,7 @@ - + @@ -303,7 +303,7 @@ - + @@ -345,10 +345,10 @@ - + - + @@ -379,7 +379,7 @@ - + @@ -411,7 +411,7 @@ - + @@ -437,7 +437,7 @@ - + @@ -471,7 +471,7 @@ - + @@ -501,7 +501,7 @@ - + @@ -530,7 +530,7 @@ - + @@ -559,7 +559,7 @@ - + @@ -595,7 +595,7 @@ - + @@ -624,7 +624,7 @@ - + @@ -674,7 +674,7 @@ - + @@ -697,7 +697,7 @@ - + @@ -733,7 +733,7 @@ - + @@ -767,7 +767,7 @@ - + @@ -797,7 +797,7 @@ - + @@ -840,7 +840,7 @@ - + @@ -870,7 +870,7 @@ - + @@ -901,7 +901,7 @@ - + @@ -929,7 +929,7 @@ - + @@ -952,7 +952,7 @@ - + @@ -985,7 +985,7 @@ - + @@ -1032,7 +1032,7 @@ - + diff --git a/test/output/athletesWeight.svg b/test/output/athletesWeight.svg index ea899712bd..beb21bc5bb 100644 --- a/test/output/athletesWeight.svg +++ b/test/output/athletesWeight.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -54,7 +54,7 @@ 600 ↑ Frequency - + 40 @@ -77,7 +77,7 @@ 160 weight → - + diff --git a/test/output/athletesWeightCumulative.svg b/test/output/athletesWeightCumulative.svg index 6588d309d5..b69fd4cc16 100644 --- a/test/output/athletesWeightCumulative.svg +++ b/test/output/athletesWeightCumulative.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -48,7 +48,7 @@ 10,000 ↑ Frequency - + 40 @@ -71,7 +71,7 @@ 160 weight → - + diff --git a/test/output/availability.svg b/test/output/availability.svg index 98d00dec96..ece118ab6b 100644 --- a/test/output/availability.svg +++ b/test/output/availability.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -33,7 +33,7 @@ 5 ↑ value - + 2020 @@ -53,13 +53,13 @@ April - + - + - + \ No newline at end of file diff --git a/test/output/ballotStatusRace.svg b/test/output/ballotStatusRace.svg index a1dd5fbee5..646c7820fa 100644 --- a/test/output/ballotStatusRace.svg +++ b/test/output/ballotStatusRace.svg @@ -13,7 +13,7 @@ white-space: pre; } - + WHITE @@ -39,7 +39,7 @@ NATIVE HAWAIIAN or PACIFIC ISLANDER - + 0 @@ -59,7 +59,7 @@ - + 79.0% @@ -70,12 +70,12 @@ 20.5% - + - + 78.3% @@ -86,12 +86,12 @@ 21.1% - + - + 77.9% @@ -102,12 +102,12 @@ 0.6% - + - + 74.1% @@ -118,12 +118,12 @@ 25.1% - + - + 73.9% @@ -134,12 +134,12 @@ 0.8% - + - + 25.5% @@ -150,12 +150,12 @@ 2.3% - + - + 67.4% @@ -166,12 +166,12 @@ 1.1% - + - + 41.7% @@ -179,7 +179,7 @@ 58.3% - + diff --git a/test/output/beckerBarley.svg b/test/output/beckerBarley.svg index 9c3449fd25..d03ea298c9 100644 --- a/test/output/beckerBarley.svg +++ b/test/output/beckerBarley.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Waseca @@ -33,7 +33,7 @@ Grand Rapids site - + 10 @@ -65,7 +65,7 @@ - + Trebi @@ -109,7 +109,7 @@ - + Trebi @@ -153,7 +153,7 @@ - + Trebi @@ -197,7 +197,7 @@ - + Trebi @@ -241,7 +241,7 @@ - + Trebi @@ -285,7 +285,7 @@ - + Trebi @@ -329,8 +329,8 @@ - - + + @@ -354,8 +354,8 @@ - - + + @@ -379,8 +379,8 @@ - - + + @@ -404,8 +404,8 @@ - - + + @@ -429,8 +429,8 @@ - - + + @@ -454,8 +454,8 @@ - - + + diff --git a/test/output/caltrain.html b/test/output/caltrain.html index 57aa0701c9..f3bd6fe580 100644 --- a/test/output/caltrain.html +++ b/test/output/caltrain.html @@ -47,12 +47,12 @@ white-space: pre; } - Northbound - Southbound - 5a8p9p10p11p8a9a5p6p10a11a12p1p2p3p4p6a7a7p12a - 010101010105050506061011111116161616162123232324242436363636384141414141415454 - 010101020303030303030312121218181821252525262626263636363838384449495151515757 - + Northbound + Southbound + 5a8p9p10p11p8a9a5p6p10a11a12p1p2p3p4p6a7a7p12a + 010101010105050506061011111116161616162123232324242436363636384141414141415454 + 010101020303030303030312121218181821252525262626263636363838384449495151515757 + diff --git a/test/output/carsMpg.svg b/test/output/carsMpg.svg index d87a33d056..c62b32797f 100644 --- a/test/output/carsMpg.svg +++ b/test/output/carsMpg.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -55,7 +55,7 @@ 45 ↑ economy (mpg) - + 70 @@ -96,14 +96,14 @@ 82 year - + - + diff --git a/test/output/carsParcoords.svg b/test/output/carsParcoords.svg index ce58676303..4966ee8586 100644 --- a/test/output/carsParcoords.svg +++ b/test/output/carsParcoords.svg @@ -13,7 +13,7 @@ white-space: pre; } - + economy (mpg) @@ -36,7 +36,7 @@ year - + @@ -45,7 +45,7 @@ - + @@ -450,5 +450,5 @@ - 101520253035404534567810015020025030035040045060801001201401601802002202,0002,5003,0003,5004,0004,5005,0008101214161820222470727476788082 + 101520253035404534567810015020025030035040045060801001201401601802002202,0002,5003,0003,5004,0004,5005,0008101214161820222470727476788082 \ No newline at end of file diff --git a/test/output/clamp.svg b/test/output/clamp.svg index dc1f531e63..646f39d9f7 100644 --- a/test/output/clamp.svg +++ b/test/output/clamp.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 2006 @@ -42,7 +42,7 @@ 2008 - + diff --git a/test/output/collapsedHistogram.svg b/test/output/collapsedHistogram.svg index 7f85ec0637..bf4aecc404 100644 --- a/test/output/collapsedHistogram.svg +++ b/test/output/collapsedHistogram.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -63,12 +63,12 @@ 3.0 ↑ Frequency - + 1 - + \ No newline at end of file diff --git a/test/output/covidIhmeProjectedDeaths.svg b/test/output/covidIhmeProjectedDeaths.svg index 0a9242a732..bf3d10fd7a 100644 --- a/test/output/covidIhmeProjectedDeaths.svg +++ b/test/output/covidIhmeProjectedDeaths.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1 @@ -139,7 +139,7 @@ 4,000 ↑ Deaths per day to COVID-19 (projected) - + March @@ -221,23 +221,23 @@ Jul 12 - + cone of uncertainty - + actual data - + projected values - + - 900 + 900 \ No newline at end of file diff --git a/test/output/crimeanWarOverlapped.svg b/test/output/crimeanWarOverlapped.svg index aeb76ba2a0..7d009fd21d 100644 --- a/test/output/crimeanWarOverlapped.svg +++ b/test/output/crimeanWarOverlapped.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -57,7 +57,7 @@ 2,600 ↑ deaths - + Apr @@ -131,7 +131,7 @@ Mar - + @@ -205,7 +205,7 @@ - + \ No newline at end of file diff --git a/test/output/crimeanWarStacked.svg b/test/output/crimeanWarStacked.svg index 3dc6fc72ec..6265d12c92 100644 --- a/test/output/crimeanWarStacked.svg +++ b/test/output/crimeanWarStacked.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -36,7 +36,7 @@ 3,000 ↑ deaths - + Apr @@ -110,7 +110,7 @@ Mar - + @@ -184,7 +184,7 @@ - + \ No newline at end of file diff --git a/test/output/d3Survey2015Comfort.svg b/test/output/d3Survey2015Comfort.svg index cc1bc0e2d3..869a901e7b 100644 --- a/test/output/d3Survey2015Comfort.svg +++ b/test/output/d3Survey2015Comfort.svg @@ -13,7 +13,7 @@ white-space: pre; } - + I looked at some examples! @@ -30,7 +30,7 @@ How comfortable are you with d3 now? - + 0 @@ -76,14 +76,14 @@ 100 Frequency (%) → - + - + \ No newline at end of file diff --git a/test/output/d3Survey2015Why.svg b/test/output/d3Survey2015Why.svg index 6a53e2e228..cf607f72f6 100644 --- a/test/output/d3Survey2015Why.svg +++ b/test/output/d3Survey2015Why.svg @@ -13,7 +13,7 @@ white-space: pre; } - + For work @@ -60,7 +60,7 @@ to work with open data Why do you want to learn d3? - + 0 @@ -106,7 +106,7 @@ 100 Frequency (%) → - + @@ -123,7 +123,7 @@ - + \ No newline at end of file diff --git a/test/output/decathlon.html b/test/output/decathlon.html index e15b3fac91..f6d9afeb79 100644 --- a/test/output/decathlon.html +++ b/test/output/decathlon.html @@ -65,7 +65,7 @@ white-space: pre; } - + 10.3 @@ -103,7 +103,7 @@ 11.1 ↑ 100 Meters - + 7.2 @@ -125,7 +125,7 @@ 8.0 Long Jump → - + diff --git a/test/output/diamondsCaratPrice.svg b/test/output/diamondsCaratPrice.svg index 4ed6010426..c766134066 100644 --- a/test/output/diamondsCaratPrice.svg +++ b/test/output/diamondsCaratPrice.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1,000 @@ -72,7 +72,7 @@ 19,000 ↑ price - + 0.5 @@ -104,7 +104,7 @@ 5.0 carat → - + diff --git a/test/output/diamondsCaratPriceDots.svg b/test/output/diamondsCaratPriceDots.svg index 49c16b7074..748a1ad8f1 100644 --- a/test/output/diamondsCaratPriceDots.svg +++ b/test/output/diamondsCaratPriceDots.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1,000 @@ -87,7 +87,7 @@ 18,000 ↑ Price ($) - + 0.5 @@ -129,7 +129,7 @@ 5.0 Carats → - + diff --git a/test/output/documentationLinks.svg b/test/output/documentationLinks.svg index 9ed757c5fe..812ec9bcb5 100644 --- a/test/output/documentationLinks.svg +++ b/test/output/documentationLinks.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Observable Plot @@ -90,7 +90,7 @@ Legends - + 0 @@ -128,7 +128,7 @@ 40 likes → - + @@ -179,8 +179,8 @@ - ⚡︎ 296 16 18 6 10 3 9 17 5 11 8 2 2 4 5 1 3 7 12 13 6 3 6 7 18 - + ⚡︎ 296 16 18 6 10 3 9 17 5 11 8 2 2 4 5 1 3 7 12 13 6 3 6 7 18 + \ No newline at end of file diff --git a/test/output/empty.svg b/test/output/empty.svg index 1e5b13297e..bcc24254f7 100644 --- a/test/output/empty.svg +++ b/test/output/empty.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -59,7 +59,7 @@ 1.0 - + 0.0 @@ -105,6 +105,6 @@ 1.0 - + \ No newline at end of file diff --git a/test/output/emptyX.svg b/test/output/emptyX.svg index e23f2415ca..26028ee166 100644 --- a/test/output/emptyX.svg +++ b/test/output/emptyX.svg @@ -13,5 +13,5 @@ white-space: pre; } - + \ No newline at end of file diff --git a/test/output/figcaption.html b/test/output/figcaption.html index 592b2077fc..30d38ce599 100644 --- a/test/output/figcaption.html +++ b/test/output/figcaption.html @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -67,7 +67,7 @@ 12 ↑ Frequency (%) - + A @@ -147,7 +147,7 @@ Z - + @@ -175,7 +175,7 @@ - + diff --git a/test/output/figcaptionHtml.html b/test/output/figcaptionHtml.html index 89e2a3c3bb..616361e3b8 100644 --- a/test/output/figcaptionHtml.html +++ b/test/output/figcaptionHtml.html @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -67,7 +67,7 @@ 12 ↑ Frequency (%) - + A @@ -147,7 +147,7 @@ Z - + @@ -175,7 +175,7 @@ - + diff --git a/test/output/firstLadies.svg b/test/output/firstLadies.svg index b040faffa4..8ae1146835 100644 --- a/test/output/firstLadies.svg +++ b/test/output/firstLadies.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1740 @@ -60,7 +60,7 @@ 2020 - + @@ -116,7 +116,7 @@ - + @@ -172,5 +172,5 @@ - Martha WashingtonAbigail AdamsMartha JeffersonDolly MadisonElizabeth MonroeLouisa AdamsEmily DonelsonSarah JacksonSarah Van BurenAnna HarrisonJane HarrisonLetitia TylerElizabeth Priscilla TylerJulia TylerSarah PolkMargaret "Peggy" TaylorAbigail FillmoreJane PierceHarriet LaneMary LincolnEliza JohnsonJulia GrantLucy HayesLucretia GarfieldMary McElroyRose ClevelandFrances ClevelandCaroline HarrisonMary Harrison McKeeFrances ClevelandIda McKinleyEdith RooseveltHelen "Nellie" TaftEllen WilsonMargaret WilsonEdith WilsonFlorence HardingGrace CoolidgeLou HooverAnna Eleanor RooseveltElizabeth "Bess" TrumanMamie EisenhowerJacqueline "Jackie" KennedyClaudia "Lady Bird" JohnsonThelma "Pat" NixonElizabeth "Betty" FordEleanor Rosalynn CarterNancy ReaganBarbara BushHillary ClintonLaura BushMichelle ObamaMelania TrumpJill Biden + Martha WashingtonAbigail AdamsMartha JeffersonDolly MadisonElizabeth MonroeLouisa AdamsEmily DonelsonSarah JacksonSarah Van BurenAnna HarrisonJane HarrisonLetitia TylerElizabeth Priscilla TylerJulia TylerSarah PolkMargaret "Peggy" TaylorAbigail FillmoreJane PierceHarriet LaneMary LincolnEliza JohnsonJulia GrantLucy HayesLucretia GarfieldMary McElroyRose ClevelandFrances ClevelandCaroline HarrisonMary Harrison McKeeFrances ClevelandIda McKinleyEdith RooseveltHelen "Nellie" TaftEllen WilsonMargaret WilsonEdith WilsonFlorence HardingGrace CoolidgeLou HooverAnna Eleanor RooseveltElizabeth "Bess" TrumanMamie EisenhowerJacqueline "Jackie" KennedyClaudia "Lady Bird" JohnsonThelma "Pat" NixonElizabeth "Betty" FordEleanor Rosalynn CarterNancy ReaganBarbara BushHillary ClintonLaura BushMichelle ObamaMelania TrumpJill Biden \ No newline at end of file diff --git a/test/output/footballCoverage.svg b/test/output/footballCoverage.svg index fd01ddf9c2..0b5e6c0cdb 100644 --- a/test/output/footballCoverage.svg +++ b/test/output/footballCoverage.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0% @@ -59,7 +59,7 @@ - + C2 @@ -84,8 +84,8 @@ - - + + @@ -121,8 +121,8 @@ - - + + @@ -158,8 +158,8 @@ - - + + @@ -195,8 +195,8 @@ - - + + @@ -232,8 +232,8 @@ - - + + @@ -269,8 +269,8 @@ - - + + @@ -306,8 +306,8 @@ - - + + diff --git a/test/output/fruitSales.svg b/test/output/fruitSales.svg index 11b0c64848..726bdb049b 100644 --- a/test/output/fruitSales.svg +++ b/test/output/fruitSales.svg @@ -13,7 +13,7 @@ white-space: pre; } - + bananas @@ -27,7 +27,7 @@ apples - + 0 @@ -62,13 +62,13 @@ 20 units → - + - + \ No newline at end of file diff --git a/test/output/fruitSalesDate.svg b/test/output/fruitSalesDate.svg index 35e859fd95..a4363bd1ab 100644 --- a/test/output/fruitSalesDate.svg +++ b/test/output/fruitSalesDate.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -36,7 +36,7 @@ 30 ↑ units - + 2021-03-15 @@ -44,7 +44,7 @@ 2021-03-16 date - + @@ -53,5 +53,5 @@ - applesorangesgrapesapplesorangesgrapesbananas + applesorangesgrapesapplesorangesgrapesbananas \ No newline at end of file diff --git a/test/output/gistempAnomaly.svg b/test/output/gistempAnomaly.svg index fdf8600790..6e20b20df7 100644 --- a/test/output/gistempAnomaly.svg +++ b/test/output/gistempAnomaly.svg @@ -13,7 +13,7 @@ white-space: pre; } - + −0.6 @@ -55,7 +55,7 @@ +1.2 ↑ Temperature anomaly (°C) - + 1880 @@ -78,10 +78,10 @@ 2000 - + - + diff --git a/test/output/gistempAnomalyMoving.svg b/test/output/gistempAnomalyMoving.svg index 0af2c030e2..97bf126a3b 100644 --- a/test/output/gistempAnomalyMoving.svg +++ b/test/output/gistempAnomalyMoving.svg @@ -13,7 +13,7 @@ white-space: pre; } - + −0.6 @@ -55,7 +55,7 @@ +1.2 ↑ Temperature anomaly (°C) - + 1880 @@ -78,10 +78,10 @@ 2000 - + - + @@ -1727,7 +1727,7 @@ - + \ No newline at end of file diff --git a/test/output/gistempAnomalyTransform.svg b/test/output/gistempAnomalyTransform.svg index df6628b05e..d331451f9f 100644 --- a/test/output/gistempAnomalyTransform.svg +++ b/test/output/gistempAnomalyTransform.svg @@ -13,7 +13,7 @@ white-space: pre; } - + −1.0 @@ -43,7 +43,7 @@ +2.0 ↑ Temperature anomaly (°F) - + 1880 @@ -66,10 +66,10 @@ 2000 - + - + diff --git a/test/output/googleTrendsRidgeline.svg b/test/output/googleTrendsRidgeline.svg index bdf476fff7..64663d667f 100644 --- a/test/output/googleTrendsRidgeline.svg +++ b/test/output/googleTrendsRidgeline.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Australian bushfires @@ -207,7 +207,7 @@ COVID-19 vaccine - + 2020 @@ -247,706 +247,706 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/test/output/gridChoropleth.svg b/test/output/gridChoropleth.svg index 74ee396d47..62ea63e7ef 100644 --- a/test/output/gridChoropleth.svg +++ b/test/output/gridChoropleth.svg @@ -13,7 +13,7 @@ white-space: pre; } - + @@ -66,6 +66,6 @@ - CATXFLNYPAILOHGANCMINJVAWAAZMATNINMOMDWICOMNSCALLAKYOROKCTUTIANVARMSKSNMNEWVIDHINHMEMTRIDESDNDAKDCVTWY - +6%+15%+14%+0%+1%−1%+1%+10%+10%+1%+1%+7%+13%+14%+6%+8%+4%+2%+5%+2%+15%+6%+11%+3%+3%+3%+10%+5%−0%+16%+4%+14%+3%+0%+2%+2%+6%−3%+14%+4%+3%+1%+8%+1%+8%+9%+13%+3%+17%−0%+3% + CATXFLNYPAILOHGANCMINJVAWAAZMATNINMOMDWICOMNSCALLAKYOROKCTUTIANVARMSKSNMNEWVIDHINHMEMTRIDESDNDAKDCVTWY + +6%+15%+14%+0%+1%−1%+1%+10%+10%+1%+1%+7%+13%+14%+6%+8%+4%+2%+5%+2%+15%+6%+11%+3%+3%+3%+10%+5%−0%+16%+4%+14%+3%+0%+2%+2%+6%−3%+14%+4%+3%+1%+8%+1%+8%+9%+13%+3%+17%−0%+3% \ No newline at end of file diff --git a/test/output/hadcrutWarmingStripes.svg b/test/output/hadcrutWarmingStripes.svg index 315641b165..1ea5910546 100644 --- a/test/output/hadcrutWarmingStripes.svg +++ b/test/output/hadcrutWarmingStripes.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1860 @@ -42,7 +42,7 @@ 2020 - + diff --git a/test/output/highCardinalityOrdinal.svg b/test/output/highCardinalityOrdinal.svg index b5100f5fff..5c0056adae 100644 --- a/test/output/highCardinalityOrdinal.svg +++ b/test/output/highCardinalityOrdinal.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -93,7 +93,7 @@ 25 - + diff --git a/test/output/identityScale.svg b/test/output/identityScale.svg index de3836bc48..f25eff0f8f 100644 --- a/test/output/identityScale.svg +++ b/test/output/identityScale.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 350 @@ -36,7 +36,7 @@ 50 - + 100 @@ -56,7 +56,7 @@ 600 - + diff --git a/test/output/industryUnemployment.svg b/test/output/industryUnemployment.svg index 66ed4d013f..1f5ce57054 100644 --- a/test/output/industryUnemployment.svg +++ b/test/output/industryUnemployment.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -47,7 +47,7 @@ 14,000 ↑ unemployed - + 2000 @@ -82,7 +82,7 @@ 2010 - + Wholesale and Retail Trade @@ -126,7 +126,7 @@ Mining and Extraction - + \ No newline at end of file diff --git a/test/output/industryUnemploymentShare.svg b/test/output/industryUnemploymentShare.svg index 2c5ba322a6..fe650db004 100644 --- a/test/output/industryUnemploymentShare.svg +++ b/test/output/industryUnemploymentShare.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0% @@ -59,7 +59,7 @@ 100% ↑ unemployed - + 2000 @@ -94,7 +94,7 @@ 2010 - + Wholesale and Retail Trade @@ -138,7 +138,7 @@ Mining and Extraction - + \ No newline at end of file diff --git a/test/output/industryUnemploymentStream.svg b/test/output/industryUnemploymentStream.svg index 90951b15b7..16e1783192 100644 --- a/test/output/industryUnemploymentStream.svg +++ b/test/output/industryUnemploymentStream.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -39,7 +39,7 @@ 14,000 ↑ unemployed - + 2000 @@ -74,7 +74,7 @@ 2010 - + Wholesale and Retail Trade diff --git a/test/output/industryUnemploymentTrack.svg b/test/output/industryUnemploymentTrack.svg index b66899e9ca..e1710dfd34 100644 --- a/test/output/industryUnemploymentTrack.svg +++ b/test/output/industryUnemploymentTrack.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Construction @@ -57,7 +57,7 @@ Mining and Extraction industry - + 2000 @@ -79,7 +79,7 @@ - + 745 @@ -447,19 +447,19 @@ 2,440 - + 2,440 - + 384 - + 1,000 @@ -827,19 +827,19 @@ 2,071 - + 2,154 - + 701 - + 734 @@ -1207,19 +1207,19 @@ 1,814 - + 2,010 - + 596 - + 782 @@ -1587,19 +1587,19 @@ 1,597 - + 1,804 - + 636 - + 655 @@ -1967,19 +1967,19 @@ 1,740 - + 1,740 - + 504 - + 353 @@ -2347,19 +2347,19 @@ 1,200 - + 1,280 - + 293 - + 430 @@ -2727,19 +2727,19 @@ 880 - + 1,129 - + 269 - + 239 @@ -3107,19 +3107,19 @@ 680 - + 730 - + 178 - + 228 @@ -3487,19 +3487,19 @@ 708 - + 708 - + 184 - + 236 @@ -3867,19 +3867,19 @@ 591 - + 657 - + 129 - + 274 @@ -4247,19 +4247,19 @@ 603 - + 609 - + 161 - + 125 @@ -4627,19 +4627,19 @@ 300 - + 373 - + 77 - + 154 @@ -5007,19 +5007,19 @@ 285 - + 318 - + 35 - + 19 @@ -5387,12 +5387,12 @@ 79 - + 125 - + 2 diff --git a/test/output/infinityLog.svg b/test/output/infinityLog.svg index 8b1ad8bba5..37e192fa18 100644 --- a/test/output/infinityLog.svg +++ b/test/output/infinityLog.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.2 @@ -45,7 +45,7 @@ 2 - + diff --git a/test/output/learningPoverty.svg b/test/output/learningPoverty.svg index 4f1b94fc33..c02da0c6f5 100644 --- a/test/output/learningPoverty.svg +++ b/test/output/learningPoverty.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Niger @@ -315,7 +315,7 @@ Netherlands - + 100% @@ -361,7 +361,7 @@ 100% - + @@ -663,7 +663,7 @@ - + \ No newline at end of file diff --git a/test/output/letterFrequencyBar.svg b/test/output/letterFrequencyBar.svg index 83bb4d14b6..3a01e6024c 100644 --- a/test/output/letterFrequencyBar.svg +++ b/test/output/letterFrequencyBar.svg @@ -1,4 +1,5 @@ - + + A horizontal bar chart showing the relative frequency of letters in the English language. - + Z @@ -93,7 +94,7 @@ E - + 0 @@ -123,35 +124,35 @@ 12 Frequency (%) → - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - + \ No newline at end of file diff --git a/test/output/letterFrequencyCloud.svg b/test/output/letterFrequencyCloud.svg index 99c273fccb..c20c1f93c9 100644 --- a/test/output/letterFrequencyCloud.svg +++ b/test/output/letterFrequencyCloud.svg @@ -13,5 +13,5 @@ white-space: pre; } - ETAOINSHRDLCUMWFGYPBVKJXQZ + ETAOINSHRDLCUMWFGYPBVKJXQZ \ No newline at end of file diff --git a/test/output/letterFrequencyColumn.svg b/test/output/letterFrequencyColumn.svg index e63f25d002..24221260b6 100644 --- a/test/output/letterFrequencyColumn.svg +++ b/test/output/letterFrequencyColumn.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -67,7 +67,7 @@ 12 ↑ Frequency (%) - + A @@ -147,7 +147,7 @@ Z - + @@ -175,7 +175,7 @@ - + \ No newline at end of file diff --git a/test/output/letterFrequencyDot.svg b/test/output/letterFrequencyDot.svg index d17b2892e3..bb7edb21d7 100644 --- a/test/output/letterFrequencyDot.svg +++ b/test/output/letterFrequencyDot.svg @@ -13,7 +13,7 @@ white-space: pre; } - + A @@ -93,7 +93,7 @@ Z letter - + diff --git a/test/output/letterFrequencyLollipop.svg b/test/output/letterFrequencyLollipop.svg index 8f8db02db2..28aa930634 100644 --- a/test/output/letterFrequencyLollipop.svg +++ b/test/output/letterFrequencyLollipop.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.00 @@ -67,7 +67,7 @@ 0.12 ↑ frequency - + A @@ -147,7 +147,7 @@ Z letter - + @@ -175,7 +175,7 @@ - + @@ -203,7 +203,7 @@ - + \ No newline at end of file diff --git a/test/output/letterFrequencyWheel.svg b/test/output/letterFrequencyWheel.svg index 4edf0c8962..255396efdf 100644 --- a/test/output/letterFrequencyWheel.svg +++ b/test/output/letterFrequencyWheel.svg @@ -13,10 +13,10 @@ white-space: pre; } - + - + @@ -44,7 +44,7 @@ - + A 8.2% diff --git a/test/output/logDegenerate.svg b/test/output/logDegenerate.svg index e0a47495d0..6642dc4f14 100644 --- a/test/output/logDegenerate.svg +++ b/test/output/logDegenerate.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 100m @@ -72,7 +72,7 @@ 10 - + diff --git a/test/output/metroInequality.svg b/test/output/metroInequality.svg index 74a51b4b09..0540ba2211 100644 --- a/test/output/metroInequality.svg +++ b/test/output/metroInequality.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 3.4 @@ -63,7 +63,7 @@ 5.6 ↑ Inequality - + 200k @@ -137,7 +137,7 @@ 10M Population → - + diff --git a/test/output/metroInequalityChange.svg b/test/output/metroInequalityChange.svg index 50ed22a347..64d908538a 100644 --- a/test/output/metroInequalityChange.svg +++ b/test/output/metroInequalityChange.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 3.5 @@ -59,7 +59,7 @@ 8.5 ↑ Inequality - + 200k @@ -137,7 +137,7 @@ 20M Population → - + @@ -334,5 +334,5 @@ - New YorkChicagoHoustonWashington, D.C.San FranciscoSan JoseFairfield, Conn.Binghamton, N.Y. + New YorkChicagoHoustonWashington, D.C.San FranciscoSan JoseFairfield, Conn.Binghamton, N.Y. \ No newline at end of file diff --git a/test/output/metroUnemployment.svg b/test/output/metroUnemployment.svg index bf945439e3..6094e5def7 100644 --- a/test/output/metroUnemployment.svg +++ b/test/output/metroUnemployment.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -42,7 +42,7 @@ 16 ↑ unemployment - + 2000 @@ -65,7 +65,7 @@ 2012 - + @@ -112,7 +112,7 @@ - + \ No newline at end of file diff --git a/test/output/metroUnemploymentHighlight.svg b/test/output/metroUnemploymentHighlight.svg index 7435605654..2d2d5fd412 100644 --- a/test/output/metroUnemploymentHighlight.svg +++ b/test/output/metroUnemploymentHighlight.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -51,7 +51,7 @@ 16 ↑ Unemployment (%) - + 2000 @@ -74,10 +74,10 @@ 2012 - + - + diff --git a/test/output/metroUnemploymentIndex.svg b/test/output/metroUnemploymentIndex.svg index 17fb56ad25..9f6c5c360c 100644 --- a/test/output/metroUnemploymentIndex.svg +++ b/test/output/metroUnemploymentIndex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 4 @@ -36,7 +36,7 @@ 16 ↑ unemployment - + 0 @@ -62,7 +62,7 @@ 7,000 - + \ No newline at end of file diff --git a/test/output/metroUnemploymentMoving.svg b/test/output/metroUnemploymentMoving.svg index 4c8682be35..7e0a872235 100644 --- a/test/output/metroUnemploymentMoving.svg +++ b/test/output/metroUnemploymentMoving.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -42,7 +42,7 @@ 16 ↑ unemployment - + 2000 @@ -65,7 +65,7 @@ 2012 - + @@ -112,7 +112,7 @@ - + \ No newline at end of file diff --git a/test/output/metroUnemploymentNormalize.svg b/test/output/metroUnemploymentNormalize.svg index d09ac1d323..862cbc801c 100644 --- a/test/output/metroUnemploymentNormalize.svg +++ b/test/output/metroUnemploymentNormalize.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.8× @@ -43,7 +43,7 @@ ↑ Change in unemployment (%) - + 2000 @@ -66,7 +66,7 @@ 2012 - + @@ -113,7 +113,7 @@ - + \ No newline at end of file diff --git a/test/output/metroUnemploymentRidgeline.svg b/test/output/metroUnemploymentRidgeline.svg index 2ed1f934a6..d8c688033d 100644 --- a/test/output/metroUnemploymentRidgeline.svg +++ b/test/output/metroUnemploymentRidgeline.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Detroit-Livonia-Dearborn, MI Met Div @@ -150,7 +150,7 @@ Bethesda-Rockville-Frederick, MD Met Div - + 2000 @@ -175,497 +175,497 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/test/output/metroUnemploymentStroke.svg b/test/output/metroUnemploymentStroke.svg index 694545154a..9ec63a7365 100644 --- a/test/output/metroUnemploymentStroke.svg +++ b/test/output/metroUnemploymentStroke.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -42,7 +42,7 @@ 16 ↑ unemployment - + 2000 @@ -65,7 +65,7 @@ 2012 - + @@ -112,7 +112,7 @@ - + \ No newline at end of file diff --git a/test/output/mobyDick.svg b/test/output/mobyDick.svg index 344228ad6e..003bdf8bc5 100644 --- a/test/output/mobyDick.svg +++ b/test/output/mobyDick.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Call me Ishmael. Some years ago—never mind how long precisely—having little or no money in my purse, and nothing particular to interest me on shore, I thought I would sail about a little and see the watery part of the world. It is a way I have of diff --git a/test/output/mobyDickFaceted.svg b/test/output/mobyDickFaceted.svg index 1605e5e260..4c5dffac76 100644 --- a/test/output/mobyDickFaceted.svg +++ b/test/output/mobyDickFaceted.svg @@ -13,7 +13,7 @@ white-space: pre; } - + lower @@ -21,7 +21,7 @@ upper - + @@ -31,7 +31,7 @@ - + 0 @@ -63,7 +63,7 @@ - + 0 @@ -95,7 +95,7 @@ - + A @@ -177,7 +177,7 @@ - + A @@ -259,7 +259,7 @@ - + @@ -281,12 +281,12 @@ - + - + @@ -304,12 +304,12 @@ - + - + @@ -317,12 +317,12 @@ - + - + @@ -330,7 +330,7 @@ - + diff --git a/test/output/mobyDickLetterFrequency.svg b/test/output/mobyDickLetterFrequency.svg index 73fcfd1db9..3685e52f86 100644 --- a/test/output/mobyDickLetterFrequency.svg +++ b/test/output/mobyDickLetterFrequency.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -67,7 +67,7 @@ 1,200 ↑ Frequency - + A @@ -147,7 +147,7 @@ Z - + @@ -175,7 +175,7 @@ - + \ No newline at end of file diff --git a/test/output/mobyDickLetterPairs.svg b/test/output/mobyDickLetterPairs.svg index dff5f1688d..672c31500e 100644 --- a/test/output/mobyDickLetterPairs.svg +++ b/test/output/mobyDickLetterPairs.svg @@ -13,7 +13,7 @@ white-space: pre; } - + * @@ -96,7 +96,7 @@ Z - + @@ -125,5 +125,5 @@ - ***********************AAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBCCCCCCCCCCCCDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFGGGGGGGGGGGHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIJJJKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPQQQRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWXXXYYYYYYYYYYYYYYYYYYZZZZ + ***********************AAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBCCCCCCCCCCCCDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFGGGGGGGGGGGHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIJJJKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPQQQRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWXXXYYYYYYYYYYYYYYYYYYZZZZ \ No newline at end of file diff --git a/test/output/mobyDickLetterPosition.svg b/test/output/mobyDickLetterPosition.svg index 6a89227f4a..7b8194f33b 100644 --- a/test/output/mobyDickLetterPosition.svg +++ b/test/output/mobyDickLetterPosition.svg @@ -13,7 +13,7 @@ white-space: pre; } - + A @@ -93,7 +93,7 @@ Z - + 0 @@ -137,7 +137,7 @@ 13 Position within word - + diff --git a/test/output/mobyDickLetterRelativeFrequency.svg b/test/output/mobyDickLetterRelativeFrequency.svg index 156d5587ad..4d3a4d8419 100644 --- a/test/output/mobyDickLetterRelativeFrequency.svg +++ b/test/output/mobyDickLetterRelativeFrequency.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -67,7 +67,7 @@ 12 ↑ Frequency (%) - + A @@ -147,7 +147,7 @@ Z - + @@ -175,7 +175,7 @@ - + \ No newline at end of file diff --git a/test/output/morleyBoxplot.svg b/test/output/morleyBoxplot.svg index 3e618ea50b..5d7210c6e0 100644 --- a/test/output/morleyBoxplot.svg +++ b/test/output/morleyBoxplot.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1 @@ -30,7 +30,7 @@ 5 Expt - + 650 @@ -68,28 +68,28 @@ 1,050 Speed → - + - + - + - + diff --git a/test/output/moviesProfitByGenre.svg b/test/output/moviesProfitByGenre.svg index 3e1b8b830b..701422fa1e 100644 --- a/test/output/moviesProfitByGenre.svg +++ b/test/output/moviesProfitByGenre.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Adventure @@ -54,7 +54,7 @@ Other - + 0 @@ -80,10 +80,10 @@ 1,000 Profit ($M) → - + - + @@ -98,7 +98,7 @@ - + @@ -3301,7 +3301,7 @@ - + diff --git a/test/output/musicRevenue.svg b/test/output/musicRevenue.svg index a9602403a8..ea72ad4277 100644 --- a/test/output/musicRevenue.svg +++ b/test/output/musicRevenue.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -63,7 +63,7 @@ 22 ↑ Annual revenue (billions, adj.) - + 1975 @@ -92,7 +92,7 @@ 2015 - + 8 - Track Tape @@ -186,7 +186,7 @@ Vinyl - + @@ -211,7 +211,7 @@ - + \ No newline at end of file diff --git a/test/output/ordinalBar.svg b/test/output/ordinalBar.svg index 2007ee2006..793b9d692f 100644 --- a/test/output/ordinalBar.svg +++ b/test/output/ordinalBar.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -43,7 +43,7 @@ F - + 0 @@ -63,7 +63,7 @@ 5 - + @@ -71,7 +71,7 @@ - + \ No newline at end of file diff --git a/test/output/penguinCulmen.svg b/test/output/penguinCulmen.svg index f43f14297b..632c7c491d 100644 --- a/test/output/penguinCulmen.svg +++ b/test/output/penguinCulmen.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Adelie @@ -24,7 +24,7 @@ Gentoo species - + FEMALE @@ -37,7 +37,7 @@ - + 35 @@ -61,7 +61,7 @@ - + 35 @@ -85,7 +85,7 @@ - + 35 @@ -109,7 +109,7 @@ - + 15 @@ -121,7 +121,7 @@ - + 15 @@ -133,7 +133,7 @@ - + 15 @@ -145,8 +145,8 @@ - - + + @@ -417,7 +417,7 @@ - + @@ -494,8 +494,8 @@ - - + + @@ -805,7 +805,7 @@ - + @@ -843,8 +843,8 @@ - - + + @@ -1130,7 +1130,7 @@ - + @@ -1192,8 +1192,8 @@ - - + + @@ -1464,7 +1464,7 @@ - + @@ -1541,8 +1541,8 @@ - - + + @@ -1852,7 +1852,7 @@ - + @@ -1890,8 +1890,8 @@ - - + + @@ -2174,7 +2174,7 @@ - + @@ -2239,8 +2239,8 @@ - - + + @@ -2579,7 +2579,7 @@ - + @@ -2588,8 +2588,8 @@ - - + + @@ -2929,7 +2929,7 @@ - + diff --git a/test/output/penguinCulmenArray.svg b/test/output/penguinCulmenArray.svg index c0243c1a8a..82914fe36c 100644 --- a/test/output/penguinCulmenArray.svg +++ b/test/output/penguinCulmenArray.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Adelie @@ -24,7 +24,7 @@ Gentoo species - + FEMALE @@ -37,7 +37,7 @@ - + 35 @@ -61,7 +61,7 @@ - + 35 @@ -85,7 +85,7 @@ - + 35 @@ -109,7 +109,7 @@ - + 15 @@ -121,7 +121,7 @@ - + 15 @@ -133,7 +133,7 @@ - + 15 @@ -145,7 +145,7 @@ - + @@ -489,7 +489,7 @@ - + @@ -566,7 +566,7 @@ - + @@ -910,7 +910,7 @@ - + @@ -948,7 +948,7 @@ - + @@ -1292,7 +1292,7 @@ - + @@ -1354,7 +1354,7 @@ - + @@ -1698,7 +1698,7 @@ - + @@ -1775,7 +1775,7 @@ - + @@ -2119,7 +2119,7 @@ - + @@ -2157,7 +2157,7 @@ - + @@ -2501,7 +2501,7 @@ - + @@ -2566,7 +2566,7 @@ - + @@ -2910,7 +2910,7 @@ - + @@ -2919,7 +2919,7 @@ - + @@ -3263,7 +3263,7 @@ - + diff --git a/test/output/penguinIslandUnknown.svg b/test/output/penguinIslandUnknown.svg index c7036fc913..847cb76820 100644 --- a/test/output/penguinIslandUnknown.svg +++ b/test/output/penguinIslandUnknown.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -42,7 +42,7 @@ 160 ↑ Frequency - + FEMALE @@ -53,7 +53,7 @@ sex - + @@ -64,7 +64,7 @@ - + \ No newline at end of file diff --git a/test/output/penguinMass.svg b/test/output/penguinMass.svg index 53568fe085..84dad3eea7 100644 --- a/test/output/penguinMass.svg +++ b/test/output/penguinMass.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -55,7 +55,7 @@ 90 ↑ Frequency - + 2,500 @@ -84,7 +84,7 @@ 6,500 Body mass (g) → - + @@ -94,7 +94,7 @@ - + \ No newline at end of file diff --git a/test/output/penguinMassSex.svg b/test/output/penguinMassSex.svg index 923a6f01e2..b072eb08b6 100644 --- a/test/output/penguinMassSex.svg +++ b/test/output/penguinMassSex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + FEMALE @@ -24,7 +24,7 @@ sex - + 2,500 @@ -55,7 +55,7 @@ - + 0 @@ -77,7 +77,7 @@ - + 0 @@ -99,7 +99,7 @@ - + 0 @@ -121,7 +121,7 @@ - + @@ -129,12 +129,12 @@ - + - + @@ -143,19 +143,19 @@ - + - + - + diff --git a/test/output/penguinMassSexSpecies.svg b/test/output/penguinMassSexSpecies.svg index d80a556fbe..41924942d3 100644 --- a/test/output/penguinMassSexSpecies.svg +++ b/test/output/penguinMassSexSpecies.svg @@ -13,7 +13,7 @@ white-space: pre; } - + Adelie @@ -24,7 +24,7 @@ Gentoo species - + FEMALE @@ -37,7 +37,7 @@ - + 0 @@ -56,7 +56,7 @@ - + 0 @@ -75,7 +75,7 @@ - + 0 @@ -94,7 +94,7 @@ - + 4,000 @@ -104,7 +104,7 @@ - + 4,000 @@ -114,7 +114,7 @@ - + 4,000 @@ -124,87 +124,87 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/test/output/penguinMassSpecies.svg b/test/output/penguinMassSpecies.svg index 28cc747991..c0a48a21dd 100644 --- a/test/output/penguinMassSpecies.svg +++ b/test/output/penguinMassSpecies.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -55,7 +55,7 @@ 90 ↑ Frequency - + 2,500 @@ -84,7 +84,7 @@ 6,500 Body mass (g) → - + Adelie FEMALE (6) Adelie null (1) @@ -147,7 +147,7 @@ Gentoo MALE (4) - + \ No newline at end of file diff --git a/test/output/penguinSex.svg b/test/output/penguinSex.svg index ad04249fc2..83771e562f 100644 --- a/test/output/penguinSex.svg +++ b/test/output/penguinSex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -42,7 +42,7 @@ 160 ↑ Frequency - + FEMALE @@ -53,12 +53,12 @@ sex - + - + \ No newline at end of file diff --git a/test/output/penguinSexMassCulmenSpecies.svg b/test/output/penguinSexMassCulmenSpecies.svg index ce2d6df0d1..7d571538a9 100644 --- a/test/output/penguinSexMassCulmenSpecies.svg +++ b/test/output/penguinSexMassCulmenSpecies.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 34 @@ -67,7 +67,7 @@ ↑ culmen_length_mm - + FEMALE @@ -80,7 +80,7 @@ - + 3k @@ -112,7 +112,7 @@ - + 3k @@ -144,7 +144,7 @@ - + 3k @@ -176,8 +176,8 @@ - - + + @@ -226,8 +226,8 @@ - - + + @@ -273,8 +273,8 @@ - - + + diff --git a/test/output/penguinSizeSymbols.html b/test/output/penguinSizeSymbols.html index d47d72e38d..d70359c700 100644 --- a/test/output/penguinSizeSymbols.html +++ b/test/output/penguinSizeSymbols.html @@ -57,7 +57,7 @@ white-space: pre; } - + 175 @@ -107,7 +107,7 @@ 230 ↑ Flipper length (mm) - + 3,000 @@ -137,7 +137,7 @@ 6,000 Body mass (g) → - + diff --git a/test/output/penguinSpeciesCheysson.svg b/test/output/penguinSpeciesCheysson.svg index fdfbbb3013..8e93c7ac58 100644 --- a/test/output/penguinSpeciesCheysson.svg +++ b/test/output/penguinSpeciesCheysson.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -39,7 +39,7 @@ 140 ↑ Frequency - + Adelie @@ -174,17 +174,17 @@ - + - + - + \ No newline at end of file diff --git a/test/output/penguinSpeciesGradient.svg b/test/output/penguinSpeciesGradient.svg index 18be51c6f4..4e0271ab43 100644 --- a/test/output/penguinSpeciesGradient.svg +++ b/test/output/penguinSpeciesGradient.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -39,7 +39,7 @@ 140 ↑ Frequency - + Adelie @@ -57,12 +57,12 @@ - + - + \ No newline at end of file diff --git a/test/output/penguinSpeciesGroup.svg b/test/output/penguinSpeciesGroup.svg index 252c49e45e..59d01d5557 100644 --- a/test/output/penguinSpeciesGroup.svg +++ b/test/output/penguinSpeciesGroup.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -48,13 +48,13 @@ 1.0 Frequency → - + - AdelieChinstrapGentoo - + AdelieChinstrapGentoo + diff --git a/test/output/penguinSpeciesIsland.svg b/test/output/penguinSpeciesIsland.svg index da1d7a869f..e8c648d2b7 100644 --- a/test/output/penguinSpeciesIsland.svg +++ b/test/output/penguinSpeciesIsland.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -47,7 +47,7 @@ 140 ↑ Frequency - + Adelie @@ -58,14 +58,14 @@ Gentoo species - + - + \ No newline at end of file diff --git a/test/output/penguinSpeciesIslandRelative.svg b/test/output/penguinSpeciesIslandRelative.svg index f9fe228f60..d5884b914b 100644 --- a/test/output/penguinSpeciesIslandRelative.svg +++ b/test/output/penguinSpeciesIslandRelative.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -48,7 +48,7 @@ 100 ↑ Frequency (%) - + Adelie @@ -61,28 +61,28 @@ - + - + - + - + - + - + diff --git a/test/output/penguinSpeciesIslandSex.svg b/test/output/penguinSpeciesIslandSex.svg index 8665733c62..e4baf37f7e 100644 --- a/test/output/penguinSpeciesIslandSex.svg +++ b/test/output/penguinSpeciesIslandSex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -75,7 +75,7 @@ ↑ Frequency - + Adelie @@ -88,7 +88,7 @@ - + FEMALE @@ -101,7 +101,7 @@ - + FEMALE @@ -114,7 +114,7 @@ - + FEMALE @@ -127,7 +127,7 @@ - + @@ -137,26 +137,26 @@ - + - + - + - + - + diff --git a/test/output/polylinear.svg b/test/output/polylinear.svg index d72e188053..1d61578616 100644 --- a/test/output/polylinear.svg +++ b/test/output/polylinear.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 05 @@ -107,7 +107,7 @@ 27 date → - + @@ -131,7 +131,7 @@ - + @@ -142,5 +142,5 @@ - InitiateBeginEntryTestDriveDriveBrakeStopShutdown + InitiateBeginEntryTestDriveDriveBrakeStopShutdown \ No newline at end of file diff --git a/test/output/randomBins.svg b/test/output/randomBins.svg index c0712221a7..4816ca0ca2 100644 --- a/test/output/randomBins.svg +++ b/test/output/randomBins.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -54,7 +54,7 @@ 60 ↑ Frequency - + 0 @@ -77,7 +77,7 @@ 6 - + diff --git a/test/output/randomBinsXY.svg b/test/output/randomBinsXY.svg index add336a9e8..2125c7aaa1 100644 --- a/test/output/randomBinsXY.svg +++ b/test/output/randomBinsXY.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 2 @@ -42,7 +42,7 @@ 18 - + 0 @@ -74,7 +74,7 @@ 18 - + diff --git a/test/output/randomQuantile.svg b/test/output/randomQuantile.svg index d987710575..b6c8eaa30a 100644 --- a/test/output/randomQuantile.svg +++ b/test/output/randomQuantile.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -48,7 +48,7 @@ 1.0 - + −2 @@ -65,7 +65,7 @@ 2 - + diff --git a/test/output/randomWalk.svg b/test/output/randomWalk.svg index 580c7845a7..7126003308 100644 --- a/test/output/randomWalk.svg +++ b/test/output/randomWalk.svg @@ -13,7 +13,7 @@ white-space: pre; } - + −35 @@ -51,7 +51,7 @@ 20 - + 0 @@ -83,10 +83,10 @@ 450 - + - + \ No newline at end of file diff --git a/test/output/seattlePrecipitationRule.svg b/test/output/seattlePrecipitationRule.svg index 7e6a1ce4c9..90fbd9f39e 100644 --- a/test/output/seattlePrecipitationRule.svg +++ b/test/output/seattlePrecipitationRule.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 2012 @@ -27,7 +27,7 @@ 2015 - + diff --git a/test/output/seattleTemperatureBand.svg b/test/output/seattleTemperatureBand.svg index 7014f8f358..800c4bda07 100644 --- a/test/output/seattleTemperatureBand.svg +++ b/test/output/seattleTemperatureBand.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 20 @@ -47,7 +47,7 @@ 90 ↑ Temperature (°F) - + 2012 @@ -61,7 +61,7 @@ 2015 - + diff --git a/test/output/seattleTemperatureCell.svg b/test/output/seattleTemperatureCell.svg index 03e520c8bc..b27adfa1e8 100644 --- a/test/output/seattleTemperatureCell.svg +++ b/test/output/seattleTemperatureCell.svg @@ -13,7 +13,7 @@ white-space: pre; } - + J @@ -51,7 +51,7 @@ D - + 1 @@ -146,7 +146,7 @@ 31 - + diff --git a/test/output/sfCovidDeaths.svg b/test/output/sfCovidDeaths.svg index 0b8400447a..3fbdb0fb9a 100644 --- a/test/output/sfCovidDeaths.svg +++ b/test/output/sfCovidDeaths.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -45,7 +45,7 @@ 45 ↑ case_count - + April @@ -65,12 +65,12 @@ July specimen_collection_date → - + - + \ No newline at end of file diff --git a/test/output/sfTemperatureBand.svg b/test/output/sfTemperatureBand.svg index 124b93824b..43c759866b 100644 --- a/test/output/sfTemperatureBand.svg +++ b/test/output/sfTemperatureBand.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 40 @@ -51,7 +51,7 @@ 80 ↑ Daily temperature range (°F) - + October @@ -80,13 +80,13 @@ October - + - + - + \ No newline at end of file diff --git a/test/output/sfTemperatureBandArea.svg b/test/output/sfTemperatureBandArea.svg index 52638455d2..1091b8799e 100644 --- a/test/output/sfTemperatureBandArea.svg +++ b/test/output/sfTemperatureBandArea.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 42 @@ -75,7 +75,7 @@ 70 ↑ Daily temperature range (°F) - + October @@ -104,10 +104,10 @@ October - + - + \ No newline at end of file diff --git a/test/output/simpsonsRatings.svg b/test/output/simpsonsRatings.svg index 73fb38e4b5..cca2433f8e 100644 --- a/test/output/simpsonsRatings.svg +++ b/test/output/simpsonsRatings.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 1 @@ -127,7 +127,7 @@ 28 Season - + 1 @@ -229,7 +229,7 @@ 25 Episode - + @@ -831,5 +831,5 @@ - 7.4Homer's Night Out8.3Krusty Gets Busted8.2Bart Gets an "F"8.1Two Cars in Every Garage and Three Eyes on Every Fish8.0Dead Putting Society8.4Bart the Daredevil7.8Bart Gets Hit by a Car8.0Homer vs. Lisa and the 8th Commandment8.2Oh Brother, Where Art Thou?7.6Old Money8.5Lisa's Substitute8.0Blood Feud7.7Mr. Lisa Goes to Washington8.7Bart the Murderer7.7Like Father, Like Clown7.9Saturdays of Thunder8.2Burns Verkaufen der Kraftwerk8.5Radio Bart8.3Bart the Lover8.2Separate Vocations7.9Colonel Homer7.8Bart's Friend Falls in Love8.4Kamp Krusty8.2Itchy & Scratchy: The Movie8.5Lisa's First Word8.0Selma's Choice7.9The Call of the Simpsons8.8One Fish, Two Fish, Blowfish, Blue Fish7.7Marge in Chains8.4Homer's Barbershop Quartet8.6Homer Goes to College8.0Marge on the Lam8.7Boy-Scoutz 'n the Hood8.2Homer the Vigilante8.1Bart Gets Famous8.2Lisa vs. Malibu Stacy7.9Bart Gets an Elephant7.5Lady Bouvier's Lover8.6Bart of Darkness8.5Itchy & Scratchy Land8.4Lisa on Ice7.8Fear of Flying8.5And Maggie Makes Three8.5Homie the Clown7.9Homer vs. Patty and Selma8.1Two Dozen and One Greyhounds8.3'Round Springfield8.6Lemon of Troy8.3Radioactive Man8.7Bart Sells His Soul8.5Treehouse of Horror VI8.3Marge Be Not Proud8.3Team Homer7.7Bart the Fink8.2New Kid on the Block8.822 Short Films About Springfield8.0Much Apu About Nothing8.3Summer of 4 Ft. 27.7Burns, Baby Burns7.8Lisa's Date with Density9.0The Springfield Files7.8The Twisted World of Marge Simpson7.9The Itchy & Scratchy & Poochie Show8.9Homer's Phobia8.7Homer vs. the Eighteenth Amendment7.7The Canine Mutiny8.0In Marge We Trust7.8The Secret War of Lisa Simpson7.4The Principal and the Pauper7.7Bart Star8.0Lisa the Skeptic5.1All Singing, All Dancing8.2The Joy of Sect7.8This Little Wiggy7.9The Trouble with Trillions8.5Trash of the Titans8.1Natural Born Kissers8.2The Wizard of Evergreen Terrace8.0Treehouse of Horror IX8.2Mayored to the Mob7.7Wild Barts Can't Be Broken7.5Make Room for Lisa7.6Mom and Pop Art7.2Monty Can't Buy Me Love7.9Thirty Minutes over Tokyo7.5Guess Who's Coming to Criticize Dinner?7.6E-I-E-I-(Annoyed Grunt)7.1Eight Misbehavin'7.3The Mansion Family7.9Alone Again, Natura-diddily7.3Pygmoelian6.6Kill the Alligator and Run7.3It's a Mad, Mad, Mad, Mad Marge7.6Treehouse of Horror XI7.1Insane Clown Poppy7.7The Computer Wore Menace Shoes7.3Pokey Mom7.2Day of the Jackanapes7.4Hungry, Hungry Homer6.9Simpson Safari7.3Children of a Lesser Clod7.5Treehouse of Horror XII7.2Homer the Moe7.7The Blunder Years7.5Half-Decent Proposal6.5The Lastest Gun in the West7.0Blame It on Lisa5.6Gump Roast8.7Homer's Triple Bypass7.0Bart vs. Lisa vs. the Third Grade7.3The Great Louse Detective7.3The Dad Who Knew Too Little6.8Pray Anything7.3C.E.D'oh7.2Three Gays of the Condo6.9Brake My Wife, Please7.7Moe Baby Blues7.3My Mother the Carjacker7.2The Fat and the Furriest7.2'Tis the Fifteenth Season7.3I, (Annoyed Grunt)-bot7.1Smart & Smarter6.9Co-Dependents' Day7.0Catch 'Em If You Can7.3The Way We Weren't7.2Fraudcast News7.1Sleeping with the Enemy7.1Fat Man and Little Boy7.0Mommie Beerest7.1There's Something About Marrying7.0Goo Goo Gai Pan6.9The Seven-Beer Snitch7.2The Heartbroke Kid7.3Thank God It's Doomsday6.3The Bonfire of the Manatees8.3Duffless6.7The Last of the Red Hat Mamas6.9Simpsons Christmas Stories6.4My Fair Laddy7.0Bart Has Two Mommies6.6Million-Dollar Abie6.7Regarding Margie7.5The Mook, the Chef, the Wife and Her Homer6.8Please Homer, Don't Hammer 'Em6.9G.I. (Annoyed Grunt)7.0Ice Cream of Margie (with the Light Blue Hair)6.4Kill Gil, Volumes I & II7.0Little Big Girl7.1Yokel Chords7.2Homerazzi7.1Crook and Ladder8.124 Minutes6.7The Homer of Seville6.7Little Orphan Millie7.1Funeral for a Fiend6.9E Pluribus Wiggum7.7The Debarted6.7Smoke on the Daughter6.9Apocalypse Cow7.1Mona Leaves-a6.9Lost Verizon7.1Treehouse of Horror XIX7.2So It's Come to This: A Simpsons Clip Show7.2Gone Maggie Gone7.0Father Knows Worst6.3Four Great Women and a Manicure7.1Homer the Whopper6.8Rednecks and Broomsticks6.8Thursdays with Abie7.1Million Dollar Maybe7.1Postcards from the Wedge5.7The Greatest Story Ever D'ohed6.9Moe Letter Blues6.6Judge Me Tender6.8Loan-a Lisa7.2Lisa Simpson, This Isn't Your Life6.9The Fight Before Christmas7.0Donnie Fatso7.0Homer the Father7.2Angry Dad: The Movie6.1A Midsummer's Nice Dream7.0The Great Simpsina7.3500 Keys7.2The Falcon and the D'ohman6.6Treehouse of Horror XXII7.2The Food Wife6.2The Ten-Per-Cent Solution6.1Politically Inept, with Homer Simpson5.7Moe Goes from Rags to Riches6.7Pranks and Greens8.5$pringfield (or, How I Learned to Stop Worrying and Love Legalized Gambling)7.1Beware My Cheating Bart6.9The Spy Who Learned Me4.5Lisa Goes Gaga6.3Penny-Wiseguys7.2To Cur with Love7.0A Test Before Trying6.5Love is a Many-Splintered Thing6.2Gorgeous Grampa6.5What Animated Women Want6.8Whiskey Business7.0Homerland6.7YOLO6.5The Kid Is All Right6.5White Christmas Blues7.2Specs and the City6.7The Man Who Grew Too Much7.0The War of Art6.5Luca$7.7Brick Like Me6.7The Yellow Badge of Cowardge6.9The Wreck of the Relationship6.3Opposites A-Frack6.9Blazed and Confused6.8The Man Who Came to Be Dinner5.8The Musk Who Fell to Earth6.7Peeping Mom7.5Life on the Fast Lane7.8The Crepes of Wrath7.9Some Enchanted Evening8.3Simpson and Delilah8.2Treehouse of Horror7.5Dancin' Homer7.7Bart vs. Thanksgiving8.1Itchy & Scratchy & Marge8.2The Way We Was7.5Principal Charming7.5Bart's Dog Gets an "F"7.9The War of the Simpsons6.8Bull-E6.7Cue Detective6.8Friend with Benefit8.4Barthood6.8Teenage Mutant Milk-Caused Hurdles-Friends and Family"[203]-The Town"[205]-Treehouse of Horror XXVII"[207]6.6Gal of Constant Sorrow7.3The Marge-ian Chronicles7.1Fland Canyon6.4Simprovised8.2Simpsons Roasting on an Open Fire7.8Bart the Genius7.8There's No Disgrace Like Home7.6Moaning Lisa7.7The Telltale Head8.4Three Men and a Comic Book8.6Stark Raving Dad8.2When Flanders Failed8.5Homer Defined8.1The Front8.1Brother from the Same Planet8.7Treehouse of Horror IV9.0Marge vs. the Monorail8.3I Love Lisa8.4The Last Temptation of Homer7.7Dog of Death8.2Treehouse of Horror II7.9Lisa's Pony7.8Marge Gets a Job8.2I Married Marge9.0Last Exit to Springfield8.0Lisa the Greek7.7The Otto Show8.9Rosebud8.0Homer Alone8.6Homer at the Bat8.1Whacking Day7.8Lisa the Beauty Queen8.2Krusty Gets Kancelled8.2Black Widower8.1A Streetcar Named Marge8.4Treehouse of Horror III8.8Mr. Plow8.3Homer and Apu8.5Homer Loves Flanders8.4Burns' Heir8.0Sideshow Bob's Last Gleaming8.0Grampa vs. Sexual Inadequacy8.2A Fish Called Selma8.6Bart's Comet8.3Home Sweet Homediddly-Dum-Doodily7.7Scenes from the Class Struggle in Springfield8.5Bart vs. Australia9.0King-Size Homer8.0Secrets of a Successful Marriage8.1Lisa's Rival8.5A Star Is Burns8.3Lisa's Wedding6.0Another Simpsons Clip Show8.5Lisa the Vegetarian8.1The PTA Disbands8.3Sideshow Bob Roberts8.0Bart's Girlfriend8.9Who Shot Mr. Burns? (Part Two)8.2The Springfield Connection8.9Homer the Smithers9.0Homer Badman8.9Homer the Great7.5The Simpsons 138th Episode Spectacular8.7Two Bad Neighbors8.1Lisa the Iconoclast8.5Mother Simpson8.3Raging Abe Simpson and His Grumbling Grandson in "The Curse of the Flying Hellfish"8.0Homerpalooza8.1Lisa's Sax7.7Simpsoncalifragilisticexpiala(Annoyed Grunt)cious8.3Treehouse of Horror VII8.2Brother from Another Series8.0The Homer They Fall8.2Bart After Dark7.7Lost Our Lisa7.9Girly Edition7.5Realty Bites7.9The Old Man and the Lisa8.0A Milhouse Divided8.1My Sister, My Sitter7.5The Last Temptation of Krust8.2The Cartridge Family8.2Grade School Confidential8.8Hurricane Neddy8.3Simpson Tide7.3The Simpsons Spin-Off Showcase9.1The City of New York vs. Homer Simpson7.6Miracle on Evergreen Terrace8.3King of the Hill8.1Das Bus7.6Lard of the Dance7.7Bart Carny8.0Lisa the Simpson8.0The Day the Violence Died7.3When You Dish Upon a Star8.0Lisa Gets an "A"7.3Homer Simpson in: "Kidney Trouble"7.2Lisa the Tree Hugger6.9Sunday, Cruddy Sunday7.6Maximum Homerdrive7.3Hello Gutter, Hello Fadder7.3Simpsons Bible Stories6.9Tennis the Menace7.8Viva Ned Flanders7.7Treehouse of Horror X7.2Last Tap Dance in Springfield7.5Brother's Little Helper7.3The Old Man and the "C" Student7.0Bart to the Future7.3Beyond Blunderdome7.3They Saved Lisa's Brain7.7Homer to the Max7.1Take My Wife, Sleaze7.3Little Big Mom6.9Faith Off7.5Worst Episode Ever6.6Saddlesore Galactica7.9Behind the Laughter7.3The Great Money Caper7.3Missionary: Impossible7.4Days of Wine and D'oh'ses8.6Bart on the Road6.5Bye, Bye, Nerdie7.3I'm Goin' to Praiseland7.0Simpsons Tall Tales7.7I Am Furious (Yellow)6.9The Sweetest Apu7.0The President Wore Pearls7.1The Parent Rap7.7Weekend at Burnsie's7.1Large Marge7.1The Bart Wants What It Wants6.9Mr. Spritz Goes to Washington7.2A Hunka Hunka Burns in Love7.3How I Spent My Strummer Vacation7.1She of Little Faith6.8Helter Shelter7.3Tales from the Public Domain6.9The Strong Arms of the Ma6.9Brawl in the Family7.3Jaws Wired Shut7.2Little Girl in the Big Ten6.8Old Yeller-Belly7.1Special Edna6.6Barting Over7.0Dude, Where's My Ranch?6.6The Bart of War7.4Treehouse of Horror XIV8.6Mountain of Madness6.6Today I Am a Clown6.7Marge vs. Singles, Seniors, Childless Couples and Teens and Gays7.3Diatribe of a Mad Housewife7.0All's Fair in Oven War6.2Bart-Mangled Banner6.8A Star Is Torn6.9See Homer Run7.3Milhouse Doesn't Live Here Anymore6.9The Ziff Who Came to Dinner6.4Homer and Ned's Hail Mary Pass6.9The Girl Who Slept Too Little6.9The Wandering Juvie7.0Milhouse of Sand and Fog7.3Treehouse of Horror XVI6.7Homer's Paternity Coot6.6She Used to Be My Girl6.7My Big Fat Geek Wedding7.3Future-Drama7.0The Italian Bob7.3Simple Simpson7.0We're on the Road to D'ohwhere6.9On a Clear Day I Can't See My Sister7.1Home Away from Homer7.4Treehouse of Horror XV7.3Midnight Rx6.8Pranksta Rap7.6Dumbbell Indemnity7.2Girls Just Want to Have Sums7.1The Monkey Suit6.3The Boys of Bummer7.1Treehouse of Horror XVIII6.3Rome-Old and Juli-Eh6.1Papa Don't Leech6.6Marge and Homer Turn a Couple Play6.6The Wife Aquatic7.0Double, Double, Boy in Trouble7.1Treehouse of Horror XVII6.3That '90s Show6.6The Burns and the Bees6.8Moe'N'a Lisa7.2The Haw-Hawed Couple7.1Husbands and Knives6.4All About Lisa7.3You Kent Always Say What You Want6.6Dangerous Curves7.3Springfield Up7.0Revenge Is a Dish Best Served Three Times7.3Marge Gamer7.0Stop! Or My Dog Will Shoot7.3Dial 'N' for Nerder6.6Love, Springfieldian Style7.1MyPods and Boomsticks7.2Sex, Pies and Idiot Scrapes7.0Any Given Sundance7.5Bart the Mother7.0Take My Life, Please7.0No Loan Again, Naturally6.3Elementary School Musical7.1Waverly Hills, 9-0-2-1-D'oh7.2The Bob Next Door7.2The Good, the Sad and the Drugly6.7Once Upon a Time in Springfield6.6Bart Gets a 'Z'7.2Eeny Teeny Maya Moe6.9Chief of Hearts6.3The Great Wife Hope7.2To Surveil with Love6.7The Scorpion's Tale6.9The Blue and the Gray6.6The Color Yellow6.5The Fool Monty7.2O Brother, Where Bart Thou?6.8Boy Meets Curl6.5Love Is a Many Strangled Thing6.7The Devil Wears Nada7.2Homer Scissorhands7.0Stealing First Base6.4How Munched is That Birdie in the Window?6.6The Real Housewives of Fat Tony6.3Moms I'd Like to Forget6.8MoneyBart6.9Flaming Moe7.3I'm with Cupid7.0Bart Stops to Smell the Roosevelts6.7Replaceable You7.0The D'oh-cial Network7.1Married to the Blob6.7Ned 'n Edna's Blend6.7Gone Abie Gone6.9Homer Goes to Prep School6.5Four Regrettings and a Funeral7.0Yellow Subterfuge7.4A Totally Fun Thing That Bart Will Never Do Again7.8The Book Job6.5The Daughter Also Rises7.6Steal This Episode6.9Exit Through the Kwik-E-Mart7.0Black Eyed, Please7.1Them, Robot7.1Treehouse of Horror XXIV6.5Pulpit Friction6.6The Changing of the Guardian6.4Moonshine River6.5A Tree Grows in Springfield7.3Treehouse of Horror XXIII7.2The Day the Earth Stood Cool7.0Hardly Kirk-ing6.3The Fabulous Faker Boy7.1Labor Pains7.0Dangers on a Train7.3Marge Simpson in: "Screaming Yellow Honkers"6.6The Winter of His Content5.8What to Expect When Bart's Expecting6.5Covercraft6.3Walking Big & Tall6.8Treehouse of Horror XXVI6.6The Girl Code6.7Pay Pal5.9Every Man's Dream6.2Let's Go Fly a Coot6.7Waiting for Duffman6.3Lisa with an 'S'7.3Bart's New Friend6.3Love Is in the N2-O2-Ar-CO2-Ne-He-CH46.9The Kids Are All Fight6.9Sky Police5.8Clown in the Dumps6.5Super Franchise Me6.7Much Apu About Something6.8I Won't Be Home for Christmas7.3Treehouse of Horror XXV6.7My Fare Lady6.5The Burns Cage6.9Mathlete's Feat6.3Lisa the Veterinarian7.1Paths of Glory7.2Puffless8.0Brush with Greatness8.8Flaming Moe's8.1Bart the General8.2Brother, Can You Spare Two Dimes?9.0Homer the Heretic9.0Cape Feare7.7Bart's Inner Child8.8Deep Space Homer8.4Sweet Seymour Skinner's Baadasssss Song8.2The Boy Who Knew Too Much9.0Treehouse of Horror V9.1Who Shot Mr. Burns? (Part One)9.2You Only Move Twice8.5El Viaje Misterioso de Nuestro Jomer (The Mysterious Voyage of Homer)9.2Homer's Enemy8.1Treehouse of Horror VIII7.7The Two Mrs. Nahasapeemapetilons7.6D'oh-in' in the Wind8.0Skinner's Sense of Snow8.0HOMR8.6Trilogy of Error8.0Poppa's Got a Brand New Badge7.6Treehouse of Horror XIII8.2Holidays of Future Passed7.9Simpsorama7.5Halloween of Horror6.7To Courier with Love7.5Homer's Odyssey7.3Grift of the Magi7.4A Tale of Two Springfields7.2Homer vs. Dignity6.5The Old Man and the Key7.1'Scuse Me While I Miss the Sky7.1Margical History Tour7.0Mobile Homer7.4Don't Fear the Roofer7.4The Seemingly Never-Ending Story6.5Homer Simpson, This Is Your Wife6.7The Wettest Stories Ever Told7.2Midnight Towboy7.1Homer and Lisa Exchange Cross Words7.2Coming to Homerica7.3Treehouse of Horror XX6.7American History X-cellent6.9The Squirt and the Whale7.1Treehouse of Horror XXI6.8The Man in the Blue Flannel Pants7.1Dark Knight Court7.2The Saga of Carl6.9You Don't Have to Live Like a Referee6.6The Princess Guide6.4How Lisa Got Her Marge Back6.9Orange Is the New Yellow6.6Monty Burns' Fleeing Circus7.2New Kids on the Blecch7.0Sweets and Sour Marge7.1The Frying Game7.3I'm Spelling As Fast As I Can7.1A Star Is Born-Again7.1The Regina Monologues7.2The Father, the Son, and the Holy Guest Star6.9Marge's Son Poisoning7.2Kiss Kiss, Bang Bangalore6.7Jazzy and the Pussycats6.7He Loves to Fly and He D'ohs6.9I Don't Wanna Know Why the Caged Bird Sings8.2Eternal Moonshine of the Simpson Mind5.9Lisa the Drama Queen7.0How the Test Was Won6.3In the Name of the Grandfather6.8Wedding for Disaster7.0The Ned-Liest Catch7.0At Long Last Leave7.3How I Wet Your Mother6.9Adventures in Baby-Getting6.4Diggs7.0Days of Future Future + 7.4Homer's Night Out8.3Krusty Gets Busted8.2Bart Gets an "F"8.1Two Cars in Every Garage and Three Eyes on Every Fish8.0Dead Putting Society8.4Bart the Daredevil7.8Bart Gets Hit by a Car8.0Homer vs. Lisa and the 8th Commandment8.2Oh Brother, Where Art Thou?7.6Old Money8.5Lisa's Substitute8.0Blood Feud7.7Mr. Lisa Goes to Washington8.7Bart the Murderer7.7Like Father, Like Clown7.9Saturdays of Thunder8.2Burns Verkaufen der Kraftwerk8.5Radio Bart8.3Bart the Lover8.2Separate Vocations7.9Colonel Homer7.8Bart's Friend Falls in Love8.4Kamp Krusty8.2Itchy & Scratchy: The Movie8.5Lisa's First Word8.0Selma's Choice7.9The Call of the Simpsons8.8One Fish, Two Fish, Blowfish, Blue Fish7.7Marge in Chains8.4Homer's Barbershop Quartet8.6Homer Goes to College8.0Marge on the Lam8.7Boy-Scoutz 'n the Hood8.2Homer the Vigilante8.1Bart Gets Famous8.2Lisa vs. Malibu Stacy7.9Bart Gets an Elephant7.5Lady Bouvier's Lover8.6Bart of Darkness8.5Itchy & Scratchy Land8.4Lisa on Ice7.8Fear of Flying8.5And Maggie Makes Three8.5Homie the Clown7.9Homer vs. Patty and Selma8.1Two Dozen and One Greyhounds8.3'Round Springfield8.6Lemon of Troy8.3Radioactive Man8.7Bart Sells His Soul8.5Treehouse of Horror VI8.3Marge Be Not Proud8.3Team Homer7.7Bart the Fink8.2New Kid on the Block8.822 Short Films About Springfield8.0Much Apu About Nothing8.3Summer of 4 Ft. 27.7Burns, Baby Burns7.8Lisa's Date with Density9.0The Springfield Files7.8The Twisted World of Marge Simpson7.9The Itchy & Scratchy & Poochie Show8.9Homer's Phobia8.7Homer vs. the Eighteenth Amendment7.7The Canine Mutiny8.0In Marge We Trust7.8The Secret War of Lisa Simpson7.4The Principal and the Pauper7.7Bart Star8.0Lisa the Skeptic5.1All Singing, All Dancing8.2The Joy of Sect7.8This Little Wiggy7.9The Trouble with Trillions8.5Trash of the Titans8.1Natural Born Kissers8.2The Wizard of Evergreen Terrace8.0Treehouse of Horror IX8.2Mayored to the Mob7.7Wild Barts Can't Be Broken7.5Make Room for Lisa7.6Mom and Pop Art7.2Monty Can't Buy Me Love7.9Thirty Minutes over Tokyo7.5Guess Who's Coming to Criticize Dinner?7.6E-I-E-I-(Annoyed Grunt)7.1Eight Misbehavin'7.3The Mansion Family7.9Alone Again, Natura-diddily7.3Pygmoelian6.6Kill the Alligator and Run7.3It's a Mad, Mad, Mad, Mad Marge7.6Treehouse of Horror XI7.1Insane Clown Poppy7.7The Computer Wore Menace Shoes7.3Pokey Mom7.2Day of the Jackanapes7.4Hungry, Hungry Homer6.9Simpson Safari7.3Children of a Lesser Clod7.5Treehouse of Horror XII7.2Homer the Moe7.7The Blunder Years7.5Half-Decent Proposal6.5The Lastest Gun in the West7.0Blame It on Lisa5.6Gump Roast8.7Homer's Triple Bypass7.0Bart vs. Lisa vs. the Third Grade7.3The Great Louse Detective7.3The Dad Who Knew Too Little6.8Pray Anything7.3C.E.D'oh7.2Three Gays of the Condo6.9Brake My Wife, Please7.7Moe Baby Blues7.3My Mother the Carjacker7.2The Fat and the Furriest7.2'Tis the Fifteenth Season7.3I, (Annoyed Grunt)-bot7.1Smart & Smarter6.9Co-Dependents' Day7.0Catch 'Em If You Can7.3The Way We Weren't7.2Fraudcast News7.1Sleeping with the Enemy7.1Fat Man and Little Boy7.0Mommie Beerest7.1There's Something About Marrying7.0Goo Goo Gai Pan6.9The Seven-Beer Snitch7.2The Heartbroke Kid7.3Thank God It's Doomsday6.3The Bonfire of the Manatees8.3Duffless6.7The Last of the Red Hat Mamas6.9Simpsons Christmas Stories6.4My Fair Laddy7.0Bart Has Two Mommies6.6Million-Dollar Abie6.7Regarding Margie7.5The Mook, the Chef, the Wife and Her Homer6.8Please Homer, Don't Hammer 'Em6.9G.I. (Annoyed Grunt)7.0Ice Cream of Margie (with the Light Blue Hair)6.4Kill Gil, Volumes I & II7.0Little Big Girl7.1Yokel Chords7.2Homerazzi7.1Crook and Ladder8.124 Minutes6.7The Homer of Seville6.7Little Orphan Millie7.1Funeral for a Fiend6.9E Pluribus Wiggum7.7The Debarted6.7Smoke on the Daughter6.9Apocalypse Cow7.1Mona Leaves-a6.9Lost Verizon7.1Treehouse of Horror XIX7.2So It's Come to This: A Simpsons Clip Show7.2Gone Maggie Gone7.0Father Knows Worst6.3Four Great Women and a Manicure7.1Homer the Whopper6.8Rednecks and Broomsticks6.8Thursdays with Abie7.1Million Dollar Maybe7.1Postcards from the Wedge5.7The Greatest Story Ever D'ohed6.9Moe Letter Blues6.6Judge Me Tender6.8Loan-a Lisa7.2Lisa Simpson, This Isn't Your Life6.9The Fight Before Christmas7.0Donnie Fatso7.0Homer the Father7.2Angry Dad: The Movie6.1A Midsummer's Nice Dream7.0The Great Simpsina7.3500 Keys7.2The Falcon and the D'ohman6.6Treehouse of Horror XXII7.2The Food Wife6.2The Ten-Per-Cent Solution6.1Politically Inept, with Homer Simpson5.7Moe Goes from Rags to Riches6.7Pranks and Greens8.5$pringfield (or, How I Learned to Stop Worrying and Love Legalized Gambling)7.1Beware My Cheating Bart6.9The Spy Who Learned Me4.5Lisa Goes Gaga6.3Penny-Wiseguys7.2To Cur with Love7.0A Test Before Trying6.5Love is a Many-Splintered Thing6.2Gorgeous Grampa6.5What Animated Women Want6.8Whiskey Business7.0Homerland6.7YOLO6.5The Kid Is All Right6.5White Christmas Blues7.2Specs and the City6.7The Man Who Grew Too Much7.0The War of Art6.5Luca$7.7Brick Like Me6.7The Yellow Badge of Cowardge6.9The Wreck of the Relationship6.3Opposites A-Frack6.9Blazed and Confused6.8The Man Who Came to Be Dinner5.8The Musk Who Fell to Earth6.7Peeping Mom7.5Life on the Fast Lane7.8The Crepes of Wrath7.9Some Enchanted Evening8.3Simpson and Delilah8.2Treehouse of Horror7.5Dancin' Homer7.7Bart vs. Thanksgiving8.1Itchy & Scratchy & Marge8.2The Way We Was7.5Principal Charming7.5Bart's Dog Gets an "F"7.9The War of the Simpsons6.8Bull-E6.7Cue Detective6.8Friend with Benefit8.4Barthood6.8Teenage Mutant Milk-Caused Hurdles-Friends and Family"[203]-The Town"[205]-Treehouse of Horror XXVII"[207]6.6Gal of Constant Sorrow7.3The Marge-ian Chronicles7.1Fland Canyon6.4Simprovised8.2Simpsons Roasting on an Open Fire7.8Bart the Genius7.8There's No Disgrace Like Home7.6Moaning Lisa7.7The Telltale Head8.4Three Men and a Comic Book8.6Stark Raving Dad8.2When Flanders Failed8.5Homer Defined8.1The Front8.1Brother from the Same Planet8.7Treehouse of Horror IV9.0Marge vs. the Monorail8.3I Love Lisa8.4The Last Temptation of Homer7.7Dog of Death8.2Treehouse of Horror II7.9Lisa's Pony7.8Marge Gets a Job8.2I Married Marge9.0Last Exit to Springfield8.0Lisa the Greek7.7The Otto Show8.9Rosebud8.0Homer Alone8.6Homer at the Bat8.1Whacking Day7.8Lisa the Beauty Queen8.2Krusty Gets Kancelled8.2Black Widower8.1A Streetcar Named Marge8.4Treehouse of Horror III8.8Mr. Plow8.3Homer and Apu8.5Homer Loves Flanders8.4Burns' Heir8.0Sideshow Bob's Last Gleaming8.0Grampa vs. Sexual Inadequacy8.2A Fish Called Selma8.6Bart's Comet8.3Home Sweet Homediddly-Dum-Doodily7.7Scenes from the Class Struggle in Springfield8.5Bart vs. Australia9.0King-Size Homer8.0Secrets of a Successful Marriage8.1Lisa's Rival8.5A Star Is Burns8.3Lisa's Wedding6.0Another Simpsons Clip Show8.5Lisa the Vegetarian8.1The PTA Disbands8.3Sideshow Bob Roberts8.0Bart's Girlfriend8.9Who Shot Mr. Burns? (Part Two)8.2The Springfield Connection8.9Homer the Smithers9.0Homer Badman8.9Homer the Great7.5The Simpsons 138th Episode Spectacular8.7Two Bad Neighbors8.1Lisa the Iconoclast8.5Mother Simpson8.3Raging Abe Simpson and His Grumbling Grandson in "The Curse of the Flying Hellfish"8.0Homerpalooza8.1Lisa's Sax7.7Simpsoncalifragilisticexpiala(Annoyed Grunt)cious8.3Treehouse of Horror VII8.2Brother from Another Series8.0The Homer They Fall8.2Bart After Dark7.7Lost Our Lisa7.9Girly Edition7.5Realty Bites7.9The Old Man and the Lisa8.0A Milhouse Divided8.1My Sister, My Sitter7.5The Last Temptation of Krust8.2The Cartridge Family8.2Grade School Confidential8.8Hurricane Neddy8.3Simpson Tide7.3The Simpsons Spin-Off Showcase9.1The City of New York vs. Homer Simpson7.6Miracle on Evergreen Terrace8.3King of the Hill8.1Das Bus7.6Lard of the Dance7.7Bart Carny8.0Lisa the Simpson8.0The Day the Violence Died7.3When You Dish Upon a Star8.0Lisa Gets an "A"7.3Homer Simpson in: "Kidney Trouble"7.2Lisa the Tree Hugger6.9Sunday, Cruddy Sunday7.6Maximum Homerdrive7.3Hello Gutter, Hello Fadder7.3Simpsons Bible Stories6.9Tennis the Menace7.8Viva Ned Flanders7.7Treehouse of Horror X7.2Last Tap Dance in Springfield7.5Brother's Little Helper7.3The Old Man and the "C" Student7.0Bart to the Future7.3Beyond Blunderdome7.3They Saved Lisa's Brain7.7Homer to the Max7.1Take My Wife, Sleaze7.3Little Big Mom6.9Faith Off7.5Worst Episode Ever6.6Saddlesore Galactica7.9Behind the Laughter7.3The Great Money Caper7.3Missionary: Impossible7.4Days of Wine and D'oh'ses8.6Bart on the Road6.5Bye, Bye, Nerdie7.3I'm Goin' to Praiseland7.0Simpsons Tall Tales7.7I Am Furious (Yellow)6.9The Sweetest Apu7.0The President Wore Pearls7.1The Parent Rap7.7Weekend at Burnsie's7.1Large Marge7.1The Bart Wants What It Wants6.9Mr. Spritz Goes to Washington7.2A Hunka Hunka Burns in Love7.3How I Spent My Strummer Vacation7.1She of Little Faith6.8Helter Shelter7.3Tales from the Public Domain6.9The Strong Arms of the Ma6.9Brawl in the Family7.3Jaws Wired Shut7.2Little Girl in the Big Ten6.8Old Yeller-Belly7.1Special Edna6.6Barting Over7.0Dude, Where's My Ranch?6.6The Bart of War7.4Treehouse of Horror XIV8.6Mountain of Madness6.6Today I Am a Clown6.7Marge vs. Singles, Seniors, Childless Couples and Teens and Gays7.3Diatribe of a Mad Housewife7.0All's Fair in Oven War6.2Bart-Mangled Banner6.8A Star Is Torn6.9See Homer Run7.3Milhouse Doesn't Live Here Anymore6.9The Ziff Who Came to Dinner6.4Homer and Ned's Hail Mary Pass6.9The Girl Who Slept Too Little6.9The Wandering Juvie7.0Milhouse of Sand and Fog7.3Treehouse of Horror XVI6.7Homer's Paternity Coot6.6She Used to Be My Girl6.7My Big Fat Geek Wedding7.3Future-Drama7.0The Italian Bob7.3Simple Simpson7.0We're on the Road to D'ohwhere6.9On a Clear Day I Can't See My Sister7.1Home Away from Homer7.4Treehouse of Horror XV7.3Midnight Rx6.8Pranksta Rap7.6Dumbbell Indemnity7.2Girls Just Want to Have Sums7.1The Monkey Suit6.3The Boys of Bummer7.1Treehouse of Horror XVIII6.3Rome-Old and Juli-Eh6.1Papa Don't Leech6.6Marge and Homer Turn a Couple Play6.6The Wife Aquatic7.0Double, Double, Boy in Trouble7.1Treehouse of Horror XVII6.3That '90s Show6.6The Burns and the Bees6.8Moe'N'a Lisa7.2The Haw-Hawed Couple7.1Husbands and Knives6.4All About Lisa7.3You Kent Always Say What You Want6.6Dangerous Curves7.3Springfield Up7.0Revenge Is a Dish Best Served Three Times7.3Marge Gamer7.0Stop! Or My Dog Will Shoot7.3Dial 'N' for Nerder6.6Love, Springfieldian Style7.1MyPods and Boomsticks7.2Sex, Pies and Idiot Scrapes7.0Any Given Sundance7.5Bart the Mother7.0Take My Life, Please7.0No Loan Again, Naturally6.3Elementary School Musical7.1Waverly Hills, 9-0-2-1-D'oh7.2The Bob Next Door7.2The Good, the Sad and the Drugly6.7Once Upon a Time in Springfield6.6Bart Gets a 'Z'7.2Eeny Teeny Maya Moe6.9Chief of Hearts6.3The Great Wife Hope7.2To Surveil with Love6.7The Scorpion's Tale6.9The Blue and the Gray6.6The Color Yellow6.5The Fool Monty7.2O Brother, Where Bart Thou?6.8Boy Meets Curl6.5Love Is a Many Strangled Thing6.7The Devil Wears Nada7.2Homer Scissorhands7.0Stealing First Base6.4How Munched is That Birdie in the Window?6.6The Real Housewives of Fat Tony6.3Moms I'd Like to Forget6.8MoneyBart6.9Flaming Moe7.3I'm with Cupid7.0Bart Stops to Smell the Roosevelts6.7Replaceable You7.0The D'oh-cial Network7.1Married to the Blob6.7Ned 'n Edna's Blend6.7Gone Abie Gone6.9Homer Goes to Prep School6.5Four Regrettings and a Funeral7.0Yellow Subterfuge7.4A Totally Fun Thing That Bart Will Never Do Again7.8The Book Job6.5The Daughter Also Rises7.6Steal This Episode6.9Exit Through the Kwik-E-Mart7.0Black Eyed, Please7.1Them, Robot7.1Treehouse of Horror XXIV6.5Pulpit Friction6.6The Changing of the Guardian6.4Moonshine River6.5A Tree Grows in Springfield7.3Treehouse of Horror XXIII7.2The Day the Earth Stood Cool7.0Hardly Kirk-ing6.3The Fabulous Faker Boy7.1Labor Pains7.0Dangers on a Train7.3Marge Simpson in: "Screaming Yellow Honkers"6.6The Winter of His Content5.8What to Expect When Bart's Expecting6.5Covercraft6.3Walking Big & Tall6.8Treehouse of Horror XXVI6.6The Girl Code6.7Pay Pal5.9Every Man's Dream6.2Let's Go Fly a Coot6.7Waiting for Duffman6.3Lisa with an 'S'7.3Bart's New Friend6.3Love Is in the N2-O2-Ar-CO2-Ne-He-CH46.9The Kids Are All Fight6.9Sky Police5.8Clown in the Dumps6.5Super Franchise Me6.7Much Apu About Something6.8I Won't Be Home for Christmas7.3Treehouse of Horror XXV6.7My Fare Lady6.5The Burns Cage6.9Mathlete's Feat6.3Lisa the Veterinarian7.1Paths of Glory7.2Puffless8.0Brush with Greatness8.8Flaming Moe's8.1Bart the General8.2Brother, Can You Spare Two Dimes?9.0Homer the Heretic9.0Cape Feare7.7Bart's Inner Child8.8Deep Space Homer8.4Sweet Seymour Skinner's Baadasssss Song8.2The Boy Who Knew Too Much9.0Treehouse of Horror V9.1Who Shot Mr. Burns? (Part One)9.2You Only Move Twice8.5El Viaje Misterioso de Nuestro Jomer (The Mysterious Voyage of Homer)9.2Homer's Enemy8.1Treehouse of Horror VIII7.7The Two Mrs. Nahasapeemapetilons7.6D'oh-in' in the Wind8.0Skinner's Sense of Snow8.0HOMR8.6Trilogy of Error8.0Poppa's Got a Brand New Badge7.6Treehouse of Horror XIII8.2Holidays of Future Passed7.9Simpsorama7.5Halloween of Horror6.7To Courier with Love7.5Homer's Odyssey7.3Grift of the Magi7.4A Tale of Two Springfields7.2Homer vs. Dignity6.5The Old Man and the Key7.1'Scuse Me While I Miss the Sky7.1Margical History Tour7.0Mobile Homer7.4Don't Fear the Roofer7.4The Seemingly Never-Ending Story6.5Homer Simpson, This Is Your Wife6.7The Wettest Stories Ever Told7.2Midnight Towboy7.1Homer and Lisa Exchange Cross Words7.2Coming to Homerica7.3Treehouse of Horror XX6.7American History X-cellent6.9The Squirt and the Whale7.1Treehouse of Horror XXI6.8The Man in the Blue Flannel Pants7.1Dark Knight Court7.2The Saga of Carl6.9You Don't Have to Live Like a Referee6.6The Princess Guide6.4How Lisa Got Her Marge Back6.9Orange Is the New Yellow6.6Monty Burns' Fleeing Circus7.2New Kids on the Blecch7.0Sweets and Sour Marge7.1The Frying Game7.3I'm Spelling As Fast As I Can7.1A Star Is Born-Again7.1The Regina Monologues7.2The Father, the Son, and the Holy Guest Star6.9Marge's Son Poisoning7.2Kiss Kiss, Bang Bangalore6.7Jazzy and the Pussycats6.7He Loves to Fly and He D'ohs6.9I Don't Wanna Know Why the Caged Bird Sings8.2Eternal Moonshine of the Simpson Mind5.9Lisa the Drama Queen7.0How the Test Was Won6.3In the Name of the Grandfather6.8Wedding for Disaster7.0The Ned-Liest Catch7.0At Long Last Leave7.3How I Wet Your Mother6.9Adventures in Baby-Getting6.4Diggs7.0Days of Future Future \ No newline at end of file diff --git a/test/output/simpsonsRatingsDots.svg b/test/output/simpsonsRatingsDots.svg index 870ffe60be..f0ee01cb64 100644 --- a/test/output/simpsonsRatingsDots.svg +++ b/test/output/simpsonsRatingsDots.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 4.5 @@ -45,7 +45,7 @@ 9.0 ↑ IMDb rating - + 1 @@ -131,7 +131,7 @@ 28 Season → - + @@ -161,10 +161,10 @@ - + - + diff --git a/test/output/simpsonsViews.svg b/test/output/simpsonsViews.svg index 4192eb17a8..27f7bd2ba0 100644 --- a/test/output/simpsonsViews.svg +++ b/test/output/simpsonsViews.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -83,7 +83,7 @@ 32 ↑ Viewers (U.S., millions) - + 4.5 @@ -125,10 +125,10 @@ 9.0 IMDB rating → - + - + Homer's Night Out S1E10 diff --git a/test/output/singleValueBar.svg b/test/output/singleValueBar.svg index 8e16768421..c7fbede9c3 100644 --- a/test/output/singleValueBar.svg +++ b/test/output/singleValueBar.svg @@ -13,20 +13,20 @@ white-space: pre; } - + 0 - + foo - + - + \ No newline at end of file diff --git a/test/output/singleValueBin.svg b/test/output/singleValueBin.svg index d803ce0c6d..a7609581ea 100644 --- a/test/output/singleValueBin.svg +++ b/test/output/singleValueBin.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -48,12 +48,12 @@ 1.0 ↑ Frequency - + 3 - + \ No newline at end of file diff --git a/test/output/softwareVersions.svg b/test/output/softwareVersions.svg index 7487c718a8..ebdbfa83a4 100644 --- a/test/output/softwareVersions.svg +++ b/test/output/softwareVersions.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -48,7 +48,7 @@ 100 Frequency (%) → - + @@ -57,8 +57,8 @@ - 348368429359369381324 - + 348368429359369381324 + diff --git a/test/output/stackedBar.svg b/test/output/stackedBar.svg index 5b10645b37..fce016e64a 100644 --- a/test/output/stackedBar.svg +++ b/test/output/stackedBar.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0% @@ -48,7 +48,7 @@ 100% - + diff --git a/test/output/stackedRect.svg b/test/output/stackedRect.svg index 2a5ae9f3db..f9ff0be912 100644 --- a/test/output/stackedRect.svg +++ b/test/output/stackedRect.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0% @@ -48,7 +48,7 @@ 100% - + diff --git a/test/output/stargazers.svg b/test/output/stargazers.svg index 03e028969c..4c3abfe22f 100644 --- a/test/output/stargazers.svg +++ b/test/output/stargazers.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -59,7 +59,7 @@ 1,000 ↑ Stargazers - + December @@ -82,11 +82,11 @@ June - + - + - 1,096 + 1,096 \ No newline at end of file diff --git a/test/output/stargazersBinned.svg b/test/output/stargazersBinned.svg index 450b4421c6..3293a0960d 100644 --- a/test/output/stargazersBinned.svg +++ b/test/output/stargazersBinned.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -67,7 +67,7 @@ 600 ↑ Stargazers added per week - + November @@ -93,7 +93,7 @@ June - + 2020-11-01 to 2020-11-08 2 @@ -131,10 +131,10 @@ 50 - + - + \ No newline at end of file diff --git a/test/output/stargazersHourly.svg b/test/output/stargazersHourly.svg index fbf7eceed3..d9ef1beb49 100644 --- a/test/output/stargazersHourly.svg +++ b/test/output/stargazersHourly.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -71,7 +71,7 @@ 260 ↑ Frequency - + 0 @@ -103,7 +103,7 @@ 45 New stargazers per hour → - + @@ -120,7 +120,7 @@ - + \ No newline at end of file diff --git a/test/output/stargazersHourlyGroup.svg b/test/output/stargazersHourlyGroup.svg index 2a606a6fa7..bd15c8570a 100644 --- a/test/output/stargazersHourlyGroup.svg +++ b/test/output/stargazersHourlyGroup.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -71,7 +71,7 @@ 260 ↑ Frequency - + 1 @@ -88,7 +88,7 @@ 5+ New stargazers per hour → - + S @@ -174,7 +174,7 @@ S - + \ No newline at end of file diff --git a/test/output/stocksIndex.svg b/test/output/stocksIndex.svg index 5385e5d76a..73e0241643 100644 --- a/test/output/stocksIndex.svg +++ b/test/output/stocksIndex.svg @@ -13,7 +13,7 @@ white-space: pre; } - + −40 @@ -55,7 +55,7 @@ +500 ↑ Change in price (%) - + 2014 @@ -72,14 +72,14 @@ 2018 - + - + - AAPLAMZNGOOGIBM + AAPLAMZNGOOGIBM \ No newline at end of file diff --git a/test/output/thisIsJustToSay.svg b/test/output/thisIsJustToSay.svg index 7076938ade..d4ae65d8a3 100644 --- a/test/output/thisIsJustToSay.svg +++ b/test/output/thisIsJustToSay.svg @@ -13,8 +13,8 @@ white-space: pre; } - - + + This Is Just To Say William Carlos Williams, 1934 I have eaten diff --git a/test/output/travelersYearOverYear.svg b/test/output/travelersYearOverYear.svg index 66844f0c29..d4764b2988 100644 --- a/test/output/travelersYearOverYear.svg +++ b/test/output/travelersYearOverYear.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -79,7 +79,7 @@ 3.0 ↑ Travelers per day (millions) - + March @@ -111,15 +111,15 @@ December - + - + - + - 2019 - 2020 + 2019 + 2020 \ No newline at end of file diff --git a/test/output/uniformRandomDifference.svg b/test/output/uniformRandomDifference.svg index aef794e693..5044ef55d9 100644 --- a/test/output/uniformRandomDifference.svg +++ b/test/output/uniformRandomDifference.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0.0 @@ -59,7 +59,7 @@ 5.0 ↑ Frequency (%) - + −1.0 @@ -94,7 +94,7 @@ 1.0 Difference of two uniform random variables - + @@ -136,7 +136,7 @@ - + \ No newline at end of file diff --git a/test/output/untypedDateBin.svg b/test/output/untypedDateBin.svg index a5349183e5..53530a678a 100644 --- a/test/output/untypedDateBin.svg +++ b/test/output/untypedDateBin.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -48,7 +48,7 @@ 2,000 ↑ Volume - + 2014 @@ -65,7 +65,7 @@ 2018 - + @@ -128,7 +128,7 @@ - + \ No newline at end of file diff --git a/test/output/usCongressAge.svg b/test/output/usCongressAge.svg index 0868b8ba3e..79cd888947 100644 --- a/test/output/usCongressAge.svg +++ b/test/output/usCongressAge.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -43,7 +43,7 @@ 30 ↑ Frequency - + 30 @@ -69,7 +69,7 @@ 100 Age → - + Alexandria Ocasio-Cortez @@ -2732,7 +2732,7 @@ Ralph M. Hall - + \ No newline at end of file diff --git a/test/output/usCongressAgeColorExplicit.svg b/test/output/usCongressAgeColorExplicit.svg index ff336c0829..2db5ec6b1c 100644 --- a/test/output/usCongressAgeColorExplicit.svg +++ b/test/output/usCongressAgeColorExplicit.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -43,7 +43,7 @@ 30 ↑ Frequency - + 30 @@ -69,7 +69,7 @@ 100 Age → - + Alexandria Ocasio-Cortez @@ -2732,7 +2732,7 @@ Ralph M. Hall - + \ No newline at end of file diff --git a/test/output/usCongressAgeGender.svg b/test/output/usCongressAgeGender.svg index 5e538cfae6..25a455ae88 100644 --- a/test/output/usCongressAgeGender.svg +++ b/test/output/usCongressAgeGender.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 10 @@ -47,7 +47,7 @@ 25 ← Women · Men → - + 30 @@ -73,7 +73,7 @@ 100 Age → - + Alexandria Ocasio-Cortez @@ -2736,7 +2736,7 @@ Ralph M. Hall - + \ No newline at end of file diff --git a/test/output/usCongressAgeSymbolExplicit.svg b/test/output/usCongressAgeSymbolExplicit.svg index ca87db1672..30040dd5f9 100644 --- a/test/output/usCongressAgeSymbolExplicit.svg +++ b/test/output/usCongressAgeSymbolExplicit.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -43,7 +43,7 @@ 30 ↑ Frequency - + 30 @@ -69,7 +69,7 @@ 100 Age → - + Alexandria Ocasio-Cortez @@ -2732,7 +2732,7 @@ Ralph M. Hall - + \ No newline at end of file diff --git a/test/output/usPopulationStateAge.svg b/test/output/usPopulationStateAge.svg index 8ceb2d0010..7b2d3d47f7 100644 --- a/test/output/usPopulationStateAge.svg +++ b/test/output/usPopulationStateAge.svg @@ -13,7 +13,7 @@ white-space: pre; } - + <10 @@ -51,7 +51,7 @@ ≥80 Age - + 0 @@ -97,10 +97,10 @@ 20 Percent (%) → - + - + diff --git a/test/output/usPopulationStateAgeDots.svg b/test/output/usPopulationStateAgeDots.svg index 80d799e51b..3a48d573c9 100644 --- a/test/output/usPopulationStateAgeDots.svg +++ b/test/output/usPopulationStateAgeDots.svg @@ -13,7 +13,7 @@ white-space: pre; } - + 0 @@ -59,10 +59,10 @@ 20 Percent (%) → - + - + @@ -116,7 +116,7 @@ - + @@ -586,5 +586,5 @@ - ALAKAZARCACOCTDEDCFLGAHIIDILINIAKSKYLAMEMDMAMIMNMSMOMTNENVNHNJNMNYNCNDOHOKORPARISCSDTNTXUTVTVAWAWVWIWYPR + ALAKAZARCACOCTDEDCFLGAHIIDILINIAKSKYLAMEMDMAMIMNMSMOMTNENVNHNJNMNYNCNDOHOKORPARISCSDTNTXUTVTVAWAWVWIWYPR \ No newline at end of file diff --git a/test/output/usPresidentFavorabilityDots.svg b/test/output/usPresidentFavorabilityDots.svg index 12e740223d..98421da313 100644 --- a/test/output/usPresidentFavorabilityDots.svg +++ b/test/output/usPresidentFavorabilityDots.svg @@ -13,7 +13,7 @@ white-space: pre; } - + −30 @@ -59,7 +59,7 @@ +70 Net favorability (%) - + 1800 @@ -97,10 +97,10 @@ 2020 Date of first inauguration - + - + George Washington diff --git a/test/output/usPresidentialElection2020.svg b/test/output/usPresidentialElection2020.svg index 204e0f3acd..3e89693fc1 100644 --- a/test/output/usPresidentialElection2020.svg +++ b/test/output/usPresidentialElection2020.svg @@ -13,7 +13,7 @@ white-space: pre; } - + @@ -187,7 +187,7 @@ ↑ Total number of votes - + −80 @@ -225,10 +225,10 @@ +80 ← Biden · Vote margin (%) · Trump → - + - + ED 1, Alaska 3,429 votes for Trump diff --git a/test/output/usPresidentialForecast2016.svg b/test/output/usPresidentialForecast2016.svg index 82da685edf..04985edaa6 100644 --- a/test/output/usPresidentialForecast2016.svg +++ b/test/output/usPresidentialForecast2016.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> + <g aria-label="y-axis" transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(0,370.5)"> <line stroke="currentColor" x2="-6"></line><text fill="currentColor" x="-9" dy="0.32em">0.0</text> </g> @@ -33,7 +33,7 @@ <line stroke="currentColor" x2="-6"></line><text fill="currentColor" x="-9" dy="0.32em">2.5</text> </g><text fill="currentColor" transform="translate(-40,20)" dy="-1em" text-anchor="start">↑ probability (%)</text> </g> - <g transform="translate(0,370)" fill="none" text-anchor="middle" font-variant="tabular-nums"> + <g aria-label="x-axis" transform="translate(0,370)" fill="none" text-anchor="middle" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(40.5,0)"> <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">0</text> </g> @@ -53,7 +53,7 @@ <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">500</text> </g><text fill="currentColor" transform="translate(640,30)" dy="-0.32em" text-anchor="end">Electoral votes for Hillary Clinton →</text> </g> - <g stroke-width="1.5" shape-rendering="crispEdges" transform="translate(0.5,0)"> + <g aria-label="rule" stroke-width="1.5" shape-rendering="crispEdges" transform="translate(0.5,0)"> <line x1="40" x2="40" y1="370" y2="370" stroke="#fc8d59"></line> <line x1="41.078066914498145" x2="41.078066914498145" y1="370" y2="370" stroke="#fc8d59"></line> <line x1="42.15613382899628" x2="42.15613382899628" y1="370" y2="370" stroke="#fc8d59"></line> @@ -594,10 +594,10 @@ <line x1="618.9219330855019" x2="618.9219330855019" y1="370" y2="369.86344127975025" stroke="#91bfdb"></line> <line x1="620" x2="620" y1="370" y2="370" stroke="#91bfdb"></line> </g> - <g stroke="currentColor" transform="translate(0,0.5)"> + <g aria-label="rule" stroke="currentColor" transform="translate(0,0.5)"> <line x1="40" x2="620" y1="370" y2="370"></line> </g> - <g stroke="currentColor" transform="translate(0.5,0)"> + <g aria-label="rule" stroke="currentColor" transform="translate(0.5,0)"> <line x1="331.0780669144981" x2="331.0780669144981" y1="20" y2="370"></line> </g> </svg> \ No newline at end of file diff --git a/test/output/usRetailSales.svg b/test/output/usRetailSales.svg index 0e017f1a01..82f76b38cd 100644 --- a/test/output/usRetailSales.svg +++ b/test/output/usRetailSales.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> + <g aria-label="y-axis" transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(0,370.5)"> <line stroke="currentColor" x2="-6"></line> <line stroke="currentColor" x2="580" stroke-opacity="0.1"></line><text fill="currentColor" x="-9" dy="0.32em">0</text> @@ -63,7 +63,7 @@ <line stroke="currentColor" x2="580" stroke-opacity="0.1"></line><text fill="currentColor" x="-9" dy="0.32em">550</text> </g><text fill="currentColor" transform="translate(-40,20)" dy="-1em" text-anchor="start">U.S. retail monthly sales (in billions, seasonally-adjusted)</text> </g> - <g transform="translate(0,370)" fill="none" text-anchor="middle" font-variant="tabular-nums"> + <g aria-label="x-axis" transform="translate(0,370)" fill="none" text-anchor="middle" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(100.68557091459951,0)"> <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">1995</text> </g> @@ -83,13 +83,13 @@ <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">2020</text> </g> </g> - <g fill="none" stroke="#bab0ab" stroke-width="1.5" stroke-miterlimit="1" transform="translate(0.5,0.5)"> + <g aria-label="line" fill="none" stroke="#bab0ab" stroke-width="1.5" stroke-miterlimit="1" transform="translate(0.5,0.5)"> <path d="M40,283.3694071493794L41.7023291043363,282.9533464100916L43.29483052452187,275.69921201258074L44.99715962885817,273.13478643173596L46.6445748911191,269.3476275829415L48.3469039954554,270.17915722547264L49.99431925771634,269.45297439886366L51.69664836205264,269.1724441137677L53.39897746638894,272.57372586154423L55.04639272864988,267.2247116912983L56.74872183298618,268.47230207311713L58.39613709524711,246.40214413744124L60.09846619958341,279.3182894247354L61.80079530391971,281.1731035882174L63.33838288202992,269.12805641042985L65.04071198636622,265.5669789306368L66.68812724862715,262.1491257736143L68.39045635296345,262.5610436605905L70.03787161522439,261.2903716730359L71.74020071956069,261.50579999323617L73.44252982389699,265.00473468835605L75.08994508615793,261.8496567350942L76.79227419049423,259.0644763096486L78.43968945275515,237.1091345666069L80.14201855709146,274.50784605499L81.84434766142776,273.62482667658696L83.38193523953797,256.178683756637L85.08426434387427,257.8062328790287L86.7316796061352,254.63517535256517L88.4340087104715,252.84842233420133L90.08142397273244,255.56554161452874L91.78375307706874,250.2194866245054L93.48608218140504,255.21103182386963L95.13349744366597,252.8425039737563L96.83582654800227,250.14136426663063L98.48324181026321,227.30181947309683L100.18557091459951,266.22510061212756L101.8879000189358,268.122526970814L103.42548759704601,250.87583279786264L105.1278167013823,253.97705367107446L106.77523196364325,245.43153302445128L108.47756106797955,244.623084987656L110.12497633024049,249.61403835097568L111.82730543457679,243.20031113666337L113.52963453891307,250.376915012344L115.17704980117402,249.23940613480332L116.87937890551031,244.4183097162569L118.52679416777124,223.5259055091481L120.22912327210754,260.49908688153135L121.93145237644387,256.14258175792213L123.52395379662943,244.46565659981738L125.22628290096571,244.69765632926376L126.87369816322666,235.69109540397037L128.57602726756295,241.26915012344006L130.2234425298239,240.91404849673646L131.92577163416018,236.2083601068687L133.62810073849647,246.15830768710472L135.27551600075742,238.2200108221448L136.97784510509373,237.45654232473197L138.62526036735466,217.2583617978288L140.32758947169097,251.40256687747305L142.02991857602728,253.0792383915587L143.56750615413748,236.75817579221481L145.26983525847376,239.60135615002196L146.9172505207347,231.39791673712335L148.619579625071,235.43719774087728L150.26699488733195,232.97752713991008L151.96932399166823,230.7693868578579L153.67165309600455,238.13478643173593L155.31906835826547,232.5454868274206L157.02139746260178,234.8933004159762L158.6688127248627,209.58047279245156L160.37114182919902,246.9851026412797L162.0734709335353,249.34652845885896L163.61105851164552,233.6924650816734L165.31338761598184,231.21267205519294L166.96080287824276,224.98418952281102L168.66313198257907,225.55235212553688L170.31054724484,227.11243193885488L172.01287634917628,227.68592106598126L173.7152054535126,233.14205756028272L175.36262071577352,225.45351550610437L177.06494982010983,227.37283979843755L178.71236508237075,198.9777300551253L180.41469418670707,240.90517095606882L182.11702329104338,239.41137677973555L183.65461086915357,219.93997091548582L185.35693997348986,221.57758125063415L187.0043552357508,214.87207886638032L188.7066843400871,215.57932293956506L190.35409960234804,214.9087727011397L192.05642870668433,213.11077479793022L193.75875781102062,219.72986911968616L195.40617307328156,217.28262707565358L197.10850217761785,213.69254962967972L198.7559174398788,181.99795393824616L200.4582465442151,230.07693868578582L202.16057564855137,221.69772396766885L203.75307706873696,204.5729480198857L205.45540617307327,213.50848861983835L207.1028214353342,202.0925631573607L208.80515053967048,203.52362271297642L210.45256580193143,209.526023876357L212.15489490626774,201.9517061787683L213.85722401060406,210.70436944096858L215.50463927286498,209.67220737935003L217.2069683772013,206.35319084175993L218.8543836394622,180.63732287192667L220.55671274379856,221.59947918428085L222.25904184813484,223.35959958064186L223.79662942624503,204.02017315431704L225.49895853058132,207.28947546416853L227.14637379284227,194.80883695762458L228.84870289717855,199.62164767154792L230.4961181594395,204.81974365044468L232.1984472637758,195.54863201325713L233.90077636811208,214.983935878792L235.54819163037303,197.42297676620785L237.2505207347093,199.825239270858L238.89793599697026,176.94189861003076L240.60026510130655,218.72789069633737L242.3025942056429,220.21458284013661L243.84018178375308,201.1722581081538L245.54251088808937,201.4764618350299L247.18992615035032,192.2112685582874L248.8922552546866,199.0457912002435L250.53967051694752,195.15210186343805L252.24199962128384,188.1548243092428L253.94432872562015,208.3169028374311L255.5917439878811,199.8234637627245L257.2940730922174,197.95030268186278L258.94148835447834,170.54770198518722L260.6438174588146,211.19381784977512L262.3461465631509,216.6842808346579L263.88373414126113,196.18189658087863L265.5860632455974,195.85165206804425L267.23347850785836,185.1169298927931L268.93580761219465,191.85853427576177L270.5832228744556,186.5763975785451L272.2855519787919,182.35483107308332L273.9878810831282,196.06530488011094L275.6352963453891,190.06053637255235L277.3376254497254,191.70051405187866L278.98504071198636,158.3730427136528L280.68736981632264,203.42182691332138L282.38969892065893,202.83946024552742L283.98220034084454,181.15873042713653L285.6845294451809,183.45860529608711L287.33194470744183,175.63630829585037L289.0342738117781,179.99458892759307L290.68168907403907,175.87777740200886L292.38401817837536,176.87383746491255L294.08634728271164,184.44519598227873L295.7337625449726,180.7746288342521L297.4360916493089,178.09183604450604L299.0835069115698,140.8677161892523L300.7858360159061,196.43756975210525L302.4881651202424,195.37167303594978L304.02575269835256,169.28413203016672L305.7280818026889,171.36088471033852L307.3754970649498,165.61060570191754L309.07782616928614,162.29809936081708L310.72524143154703,161.7760999695627L312.4275705358834,159.4833271331462L314.12989964021966,172.74755656261624L315.7773149024806,171.06378301599648L317.4796440068169,166.52795157090193L319.1270592690778,129.9465656599817L320.82938837341413,181.47299536676925L322.5317174777504,184.13329838682407L324.06930505586064,155.75949474111403L325.7716341601969,161.8707937366837L327.4190494224579,148.91372721431227L329.12137852679416,153.02402854340693L330.76879378905505,155.63520917176777L332.4711228933914,147.59097365484118L334.17345199772774,165.09807568737529L335.8208672599887,163.5699550204606L337.523196364325,158.75714430653724L339.1706116265859,122.6178599208631L340.8729407309222,175.35873719097705L342.5752698352585,178.74108018532925L344.11285741336866,148.56927863640976L345.81518651770494,157.806063783016L347.4626017799659,138.28908654333932L349.1649308843022,147.0914640332781L350.81234614656313,149.6274814839866L352.5146752508994,140.3581453549325L354.2170043552357,160.52791775169945L355.86441961749665,151.8012952754574L357.56674872183294,146.40315871351754L359.2141639840939,117.83227366498697L360.9164930884302,167.2138895464845L362.61882219276646,166.4717271466739L364.21132361295207,149.30019615137476L365.91365271728836,151.65984646082046L367.5610679795493,134.47529507254217L369.2633970838856,145.98591430214077L370.91081234614654,142.89712198586358L372.61314145048283,143.40846832831681L374.3154705548191,162.53660928675305L375.96288581708006,162.94793533768475L377.66521492141635,171.41237444621055L379.31263018367736,142.59528560316548L381.01495928801364,186.41956102675098L382.71728839235,192.79718624234843L384.25487597046015,175.56647164259866L385.95720507479643,174.7805133754946L387.6046203370574,164.20203591599312L389.30694944139367,166.16870709188677L390.9543647036546,163.9990361527275L392.6566938079909,160.8498765599107L394.3590229123272,177.86279549528223L396.00643817458814,169.59839696979944L397.7087672789244,169.15274442828638L399.3561825411854,133.09927626906554L401.05851164552166,183.83382934830394L402.76084074985795,185.98337786195003L404.29842832796817,156.53716730359503L406.0007574323045,159.10928675301832L407.6481726945654,153.62178294835806L409.3505017989017,157.76522709594508L410.99791706116264,155.79145388751735L412.7002461654989,155.38427068889717L414.40257526983527,165.2253204369441L416.04999053209616,159.7745104670432L417.7523196364325,153.48980351043323L419.3997348986934,117.48545774290642L421.10206400302974,171.3875173323413L422.804393107366,170.3654164834793L424.34198068547624,140.90736920423416L426.04430978981253,144.64363015320103L427.6917250520735,138.00086238966483L429.39405415640977,139.95332950049038L431.0414694186707,142.33132672731577L432.743798523007,136.45617031350403L434.4461276273433,148.04668740911092L436.09354288960424,145.40887415874732L437.7958719939405,138.46190266833506L439.4432872562015,102.59604653522268L441.14561636053776,159.78930636815585L442.84794546487404,149.59966518989484L444.4404468850596,124.89169400385538L446.14277598939594,137.43861814738406L447.79019125165684,122.25269708140281L449.4925203559932,132.68854205417836L451.13993561825407,135.6175386384389L452.8422647225904,122.65869660793399L454.5445938269267,141.78269471405866L456.1920090891876,133.62068382427546L457.89433819352394,126.71691636511213L459.54175345578483,96.5113801616558L461.24408256012117,147.71407555209848L462.94641166445746,148.66101322330817L464.4839992425677,120.41149514694445L466.18632834690396,128.2089350333119L467.8337436091649,111.25638337448002L469.5360727135012,124.55730663870943L471.18348797576215,120.00253644019072L472.88581708009843,112.54836145963677L474.5881461844348,135.50686529811625L476.23556144669567,123.9737562988265L477.937890551032,119.18817004295038L479.58530581329296,87.74747201460987L481.28763491762925,143.2948358077717L482.98996402196553,145.0910582028476L484.52755160007575,113.94154350840407L486.22988070441204,114.68429774425917L487.877295966673,98.21054144543271L489.5796250710093,113.56809496432075L491.2270403332702,107.65032635530454L492.9293694376065,102.86533193547295L494.6316985419428,120.58608678007374L496.27911380420375,110.50534343400184L497.98144290854003,110.08632351449151L499.628858170801,72.7029997632656L501.33118727513727,134.43327471338227L503.03351637947355,140.33032906084074L504.5711039575838,106.05887923162769L506.2734330619201,109.80697690148467L507.920848324181,94.92348405424599L509.62317742851735,103.79569819743652L511.27059269077824,98.03180695999185L512.9729217951145,98.99531604044778L514.6752508994508,113.86401298657377L516.3226661617118,105.6901653759004L518.0249952660481,105.58363488788935L519.672410528309,62.46719537353307L521.3747396326453,132.07125705975852L523.0770687369817,124.2797355338361L524.6695701571673,97.05113463424532L526.3718992615035,102.82449524840206L528.0193145237645,91.58552876323175L529.7216436281008,94.76191281409584L531.3690588903618,96.45633940951674L533.071387994698,90.63444823971052L534.7737170990343,104.34255470256012L536.4211323612952,101.71006797659713L538.1234614656315,93.04677195711722L539.7708767278924,50.10906692820184L541.4732058322288,120.20612803950085L543.1755349365651,122.30477865331936L544.7131225146753,83.7484358618824L546.4154516190116,93.82148533937573L548.0628668812726,76.5386891677094L549.7651959856088,84.14141499543442L551.4126112478697,87.97828807196727L553.1149403522061,79.0747066184179L554.8172694565424,91.40856978592444L556.4646847188033,87.6231864452636L558.1670138231397,74.5104670431871L559.8144290854005,38.65822313909834L561.5167581897368,106.80991917210591L563.2190872940731,111.94883154655216L564.7566748721833,68.56310663194563L566.4590039765195,85.02147519361492L568.1064192387805,56.76426324867261L569.8087483431168,69.1744732659204L571.4561636053778,70.2267577530522L573.1584927097141,61.0840745375224L574.8608218140504,86.75022827961716L576.5082370763114,71.00798133180018L578.2105661806476,61.6794615982955L579.8579814429086,38.9926105042443L581.5603105472449,98.88641820825863L583.2626396515811,107.39761236430044L584.8002272296912,64.79370286448648L586.5025563340276,68.51102506002908L588.1499715962885,46.188744969393625L589.8523007006248,63.267357705705265L591.4997159628857,55.082265210186364L593.2020450672221,47.30317224119859L594.9043741715584,76.40552605769554L596.5517894338193,58.96707700632419L598.2541185381556,53.159389901586124L599.9015338004166,20L601.6038629047528,84.8166999222158L603.3061920090893,85.99682099496093L604.8986934292747,85.02325070174847L606.6010225336111,127.14303831715647L608.248437795872,69.21649362508032L609.9507669002082,52.17102370726096L611.5981821624691,43.2798708106463L613.3005112668055,44.287767594440126L615.0028403711417,53.95185836517974"></path> </g> - <g fill="none" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="1" transform="translate(0.5,0.5)"> + <g aria-label="line" fill="none" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="1" transform="translate(0.5,0.5)"> <path d="M40,272.8826642767764L41.7023291043363,272.81282762352464L43.29483052452187,273.1040109574217L44.99715962885817,272.5192769454496L46.6445748911191,271.98484899726066L48.3469039954554,271.7096452365653L49.99431925771634,271.01127870404815L51.69664836205264,270.68991173188135L53.39897746638894,269.74297406067166L55.04639272864988,269.0179749061517L56.74872183298618,268.79426088132846L58.39613709524711,267.5502215157767L60.09846619958341,266.364773918631L61.80079530391971,267.17203828333726L63.33838288202992,268.023098515337L65.04071198636622,265.39357096959657L66.68812724862715,264.40106192295985L68.39045635296345,264.56026581893195L70.03787161522439,263.02977780783925L71.74020071956069,263.05108390544154L73.44252982389699,262.420186681998L75.08994508615793,261.7626568365518L76.79227419049423,260.66006628563696L78.43968945275515,259.682353140113L80.14201855709146,260.4262910480571L81.84434766142776,258.6910277655653L83.38193523953797,256.61664242957147L85.08426434387427,256.58113226690114L86.7316796061352,257.0013358585004L88.4340087104715,255.69870472454258L90.08142397273244,255.33590922926038L91.78375307706874,253.90366600155568L93.48608218140504,252.955544658257L95.13349744366597,251.886688761879L96.83582654800227,251.791994994758L98.48324181026321,251.21732219554264L100.18557091459951,250.7018330007778L101.8879000189358,252.58032060604015L103.42548759704601,251.48660759579286L105.1278167013823,251.02201630085557L106.77523196364325,249.86556866989076L108.47756106797955,248.3776928540025L110.12497633024049,248.72095775981603L111.82730543457679,247.77342825256179L113.52963453891307,247.48638777097636L115.17704980117402,247.9776116879164L116.87937890551031,246.50512360918532L118.52679416777124,245.47828807196726L120.22912327210754,246.48440934762755L121.93145237644387,244.52602387635702L123.52395379662943,243.41159660455205L125.22628290096571,242.94700530961478L126.87369816322666,241.98645540938145L128.57602726756295,242.12316953566236L130.2234425298239,241.96692481991275L131.92577163416018,241.95153708275558L133.62810073849647,240.23639622577699L135.27551600075742,239.16872400148802L136.97784510509373,239.22613209780513L138.62526036735466,238.61772464405288L140.32758947169097,237.73588893773882L142.02991857602728,236.58713517535256L143.56750615413748,236.14976833846262L145.26983525847376,237.064746863269L146.9172505207347,238.06258243430622L148.619579625071,236.21131928709124L150.26699488733195,234.64532111332815L151.96932399166823,234.28666847035745L153.67165309600455,233.69305691771783L155.31906835826547,233.97477087490276L157.02139746260178,233.6173019040211L158.6688127248627,233.1787513950421L160.37114182919902,232.93846596097268L162.0734709335353,232.88105786465556L163.61105851164552,232.05307923839158L165.31338761598184,230.3349792011904L166.96080287824276,229.69046974872333L168.66313198257907,228.56834860833985L170.31054724484,229.4916128377693L172.01287634917628,230.10238763569956L173.7152054535126,228.81751158307685L175.36262071577352,226.4507592410971L177.06494982010983,225.41978085156754L178.71236508237075,224.09465994791844L180.41469418670707,223.89461936487538L182.11702329104338,222.32507017484525L183.65461086915357,221.64623423179683L185.35693997348986,220.57501099124084L187.0043552357508,219.2386452027461L188.7066843400871,218.8160742669688L190.35409960234804,217.6282593256451L192.05642870668433,215.98650613818523L193.75875781102062,215.34318035780717L195.40617307328156,215.04667049950964L197.10850217761785,213.18416246744903L198.7559174398788,210.28534952145827L200.4582465442151,211.3618992864148L202.16057564855137,209.0087591734587L203.75307706873696,207.13145524028542L205.45540617307327,209.5852074808076L207.1028214353342,209.37924853731948L208.80515053967048,208.17900503906117L210.45256580193143,208.64773918631L212.15489490626774,208.47729040549223L213.85722401060406,205.73708951942913L215.50463927286498,206.10461970306739L217.2069683772013,206.63608847103387L218.8543836394622,206.77694544962634L220.55671274379856,204.97598836619434L222.25904184813484,205.0120903649092L223.79662942624503,206.3869254962968L225.49895853058132,203.80770401433935L227.14637379284227,203.40052081571918L228.84870289717855,204.04858128445332L230.4961181594395,204.57945821637523L232.1984472637758,203.44964320741317L233.90077636811208,206.60353748858603L235.54819163037303,195.68061145118196L237.2505207347093,200.0773614258176L238.89793599697026,202.09315499340525L240.60026510130655,202.209746694173L242.3025942056429,201.29476816936662L243.84018178375308,201.7635023166154L245.54251088808937,199.05821975717808L247.18992615035032,201.3557272819507L248.8922552546866,199.9228922182015L250.53967051694752,198.13969021610467L252.24199962128384,196.7991815752985L253.94432872562015,199.3085664040042L255.5917439878811,198.61848557611012L257.2940730922174,197.48926240319253L258.94148835447834,196.03157022557411L260.6438174588146,195.26159153167168L262.3461465631509,197.67687442930097L263.88373414126113,194.62418411173866L265.5860632455974,195.05326524400556L267.23347850785836,194.57387804795562L268.93580761219465,192.67053332882412L270.5832228744556,190.82341303392064L272.2855519787919,187.8275389766309L273.9878810831282,188.93782339612432L275.6352963453891,189.6030471101491L277.3376254497254,187.40260069667556L278.98504071198636,188.06545706652238L280.68736981632264,186.97233589231962L282.38969892065893,185.7063985931212L283.98220034084454,182.44005546349217L285.6845294451809,184.45229801481284L287.33194470744183,181.2256079001657L289.0342738117781,183.596503094457L290.68168907403907,181.47121985863575L292.38401817837536,181.21791403158716L294.08634728271164,177.90836687070916L295.7337625449726,176.6234908180865L297.4360916493089,175.97483851330784L299.0835069115698,173.58500456559236L300.7858360159061,175.4658595150326L302.4881651202424,172.90320944232133L304.02575269835256,172.57474043762048L305.7280818026889,170.79804863201323L307.3754970649498,172.01782271974025L309.07782616928614,166.40958436200074L310.72524143154703,164.8838310392641L312.4275705358834,166.81854306875442L314.12989964021966,166.43444147587L315.7773149024806,166.35099259359467L317.4796440068169,164.44054584192904L319.1270592690778,164.39319895836857L320.82938837341413,158.5186343806013L322.5317174777504,160.07220399742974L324.06930505586064,159.50463323074837L325.7716341601969,158.46418546450676L327.4190494224579,158.88971558050662L329.12137852679416,158.19430822821195L330.76879378905505,157.52730900605366L332.4711228933914,156.53006527106092L334.17345199772774,157.5539416280564L335.8208672599887,157.84926781426492L337.523196364325,157.37343163448207L339.1706116265859,154.73147553180695L340.8729407309222,154.79894484088067L342.5752698352585,154.56812878352332L344.11285741336866,152.70266157124013L345.81518651770494,153.27733437045552L347.4626017799659,150.4678886671852L349.1649308843022,152.11319287091212L350.81234614656313,151.24911224593328L352.5146752508994,150.2169501843146L354.2170043552357,149.32268592106595L355.86441961749665,147.8904426933613L357.56674872183294,145.7769961784301L359.2141639840939,148.4769522134668L360.9164930884302,147.92181000372014L362.61882219276646,149.93582806317426L364.21132361295207,149.39607359058476L365.91365271728836,149.49846122628426L367.5610679795493,147.4483411681153L369.2633970838856,147.20036186546722L370.91081234614654,148.0389935405323L372.61314145048283,149.66891000710206L374.3154705548191,152.95655923433324L375.96288581708006,161.1114680915824L377.66521492141635,169.16043829686495L379.31263018367736,173.4565761439345L381.01495928801364,170.59327336061415L382.71728839235,171.39402752883083L384.25487597046015,174.84383983225675L385.95720507479643,173.89394298082453L387.6046203370574,172.1752511075789L389.30694944139367,168.84498968514325L390.9543647036546,168.46976563292637L392.6566938079909,164.82938212316952L394.3590229123272,169.65935608238357L396.00643817458814,167.79684805032298L397.7087672789244,166.18646217322197L399.3561825411854,165.18211640569515L401.05851164552166,165.11287158848793L402.76084074985795,164.75895363387332L404.29842832796817,160.13020392979135L406.0007574323045,158.55473637931618L407.6481726945654,160.48116270418342L409.3505017989017,160.41487706719877L410.99791706116264,160.147367175082L412.7002461654989,158.86426663059285L414.40257526983527,157.35390104501337L416.04999053209616,154.8545774290642L417.7523196364325,152.59198823091748L419.3997348986934,151.46513240217794L421.10206400302974,149.95654232473197L422.804393107366,148.02834049173123L424.34198068547624,146.00722039974295L426.04430978981253,144.64481382529L427.6917250520735,144.9354053231425L429.39405415640977,143.2102032534073L431.0414694186707,143.45108052352123L432.743798523007,142.76691805607223L434.4461276273433,140.5398390205959L436.09354288960424,139.23069769014847L437.7958719939405,138.24351516791234L439.4432872562015,138.09673982887486L441.14561636053776,136.00223206736788L442.84794546487404,133.13064357942437L444.4404468850596,132.19790997328283L446.14277598939594,133.31588826135481L447.79019125165684,133.64258175792213L449.4925203559932,135.55006932936521L451.13993561825407,134.7700294227062L452.8422647225904,131.9919510297947L454.5445938269267,130.08978998275222L456.1920090891876,129.75895363387332L457.89433819352394,128.77946498021578L459.54175345578483,128.06156785822992L461.24408256012117,126.02269268490649L462.94641166445746,123.05641042984205L464.4839992425677,124.85144915282898L466.18632834690396,126.00493760357134L467.8337436091649,124.89879603638946L469.5360727135012,124.00808278940782L471.18348797576215,122.34147248807872L472.88581708009843,122.88063512462372L474.5881461844348,122.95520646623152L476.23556144669567,121.85735060367276L477.937890551032,121.09980046670499L479.58530581329296,119.72082248300586L481.28763491762925,122.30241130914132L482.98996402196553,118.66261963542901L484.52755160007575,116.02303087693191L486.22988070441204,113.35148297203149L487.877295966673,112.93542223274375L489.5796250710093,112.29683114072171L491.2270403332702,111.87840305725591L492.9293694376065,109.7992830329061L494.6316985419428,110.35738442287531L496.27911380420375,109.65783421826913L497.98144290854003,108.8363657884947L499.628858170801,110.30234367073622L501.33118727513727,111.89438263045756L503.03351637947355,112.35009638472727L504.5711039575838,108.47948865365754L506.2734330619201,108.05336670161317L507.920848324181,105.91920592512427L509.62317742851735,105.50965538232606L511.27059269077824,103.81167777063818L512.9729217951145,103.68857587338087L514.6752508994508,104.4200852243904L516.3226661617118,105.15573742771147L518.0249952660481,104.12239169400384L519.672410528309,103.09496432074131L521.3747396326453,104.66510534681593L523.0770687369817,102.16163887855524L524.6695701571673,103.00382156988736L526.3718992615035,101.87814941323684L528.0193145237645,100.90221177584633L529.7216436281008,98.29517399979707L531.3690588903618,98.59641854645068L533.071387994698,98.33423517873452L534.7737170990343,96.63507389495756L536.4211323612952,95.83787074300785L538.1234614656315,95.98346240995636L539.7708767278924,92.97575163177652L541.4732058322288,89.56914335959956L543.1755349365651,89.71710237072611L544.7131225146753,90.243244614292L546.4154516190116,88.67961378470699L548.0628668812726,89.91832662585816L549.7651959856088,88.9974297406067L551.4126112478697,88.85124623761371L553.1149403522061,88.491409922554L554.8172694565424,82.33453955155738L556.4646847188033,81.99186648178835L558.1670138231397,79.61682843518547L559.8144290854005,78.22719740268525L561.5167581897368,78.46156447630965L563.2190872940731,77.15064763772871L564.7566748721833,77.19089248875511L566.4590039765195,76.4688525144577L568.1064192387805,72.69057120633094L569.8087483431168,73.41142750853935L571.4561636053778,71.81287835232845L573.1584927097141,72.38044911900978L574.8608218140504,72.65742838783862L576.5082370763114,69.32598329331393L578.2105661806476,69.06853461395379L579.8579814429086,75.53730258040517L581.5603105472449,71.10149142683217L583.2626396515811,71.3086340424093L584.8002272296912,66.62365991409924L586.5025563340276,65.15235550745714L588.1499715962885,64.07225472623354L589.8523007006248,63.19397003618652L591.4997159628857,61.16160505935268L593.2020450672221,59.595606885589646L594.9043741715584,61.635665731002064L596.5517894338193,60.12234096520004L598.2541185381556,59.27779092968988L599.9015338004166,59.009689201528616L601.6038629047528,56.55416145287295L603.3061920090893,57.94083330515063L604.8986934292747,83.58153809733166L606.6010225336111,125.71020325340727L608.248437795872,81.05499002333524L609.9507669002082,56.34938618147386L611.5981821624691,52.821451520173156L613.3005112668055,48.393926071223234L615.0028403711417,43.34556461158647"></path> </g> - <g stroke="currentColor" transform="translate(0,0.5)"> + <g aria-label="rule" stroke="currentColor" transform="translate(0,0.5)"> <line x1="40" x2="620" y1="370" y2="370"></line> </g> </svg> \ No newline at end of file diff --git a/test/output/usStatePopulationChange.svg b/test/output/usStatePopulationChange.svg index e6eac04a81..6e9d166c30 100644 --- a/test/output/usStatePopulationChange.svg +++ b/test/output/usStatePopulationChange.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(100,0)" fill="none" text-anchor="end"> + <g aria-label="y-axis" transform="translate(100,0)" fill="none" text-anchor="end"> <g class="tick" opacity="1" transform="translate(0,48.5)"> <line stroke="currentColor" x2="-6"></line> <line stroke="currentColor" x2="520" stroke-opacity="0.1"></line><text fill="currentColor" x="-9" dy="0.32em">Texas</text> @@ -223,7 +223,7 @@ <line stroke="currentColor" x2="520" stroke-opacity="0.1"></line><text fill="currentColor" x="-9" dy="0.32em">Puerto Rico</text> </g> </g> - <g transform="translate(0,30)" fill="none" text-anchor="middle" font-variant="tabular-nums"> + <g aria-label="x-axis" transform="translate(0,30)" fill="none" text-anchor="middle" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(110.5,0)"> <line stroke="currentColor" y2="-6"></line> <line stroke="currentColor" y2="750" stroke-opacity="0.1"></line><text fill="currentColor" y="-9" dy="0em">−0.5</text> @@ -261,7 +261,7 @@ <line stroke="currentColor" y2="750" stroke-opacity="0.1"></line><text fill="currentColor" y="-9" dy="0em">+3.5</text> </g><text fill="currentColor" transform="translate(360,-30)" dy="1em" text-anchor="middle">← decrease · Change in population, 2010–2019 (millions) · increase →</text> </g> - <g> + <g aria-label="bar"> <rect x="168" width="261" y="70" height="13" fill="rgb(78, 121, 167)"></rect> <rect x="168" width="446" y="42" height="13" fill="rgb(78, 121, 167)"></rect> <rect x="168" width="310" y="56" height="13" fill="rgb(78, 121, 167)"></rect> @@ -315,7 +315,7 @@ <rect x="167" width="1" y="700" height="13" fill="rgb(225, 87, 89)"></rect> <rect x="168" width="1" y="658" height="13" fill="rgb(78, 121, 167)"></rect> </g> - <g stroke="currentColor" transform="translate(0.5,0)"> + <g aria-label="rule" stroke="currentColor" transform="translate(0.5,0)"> <line x1="168" x2="168" y1="30" y2="780"></line> </g> </svg> \ No newline at end of file diff --git a/test/output/vectorField.svg b/test/output/vectorField.svg index f6b26cbfa9..917047e503 100644 --- a/test/output/vectorField.svg +++ b/test/output/vectorField.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> + <g aria-label="y-axis" transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(0,558.5)"> <line stroke="currentColor" x2="-6"></line><text fill="currentColor" x="-9" dy="0.32em">0.0</text> </g> @@ -54,7 +54,7 @@ <line stroke="currentColor" x2="-6"></line><text fill="currentColor" x="-9" dy="0.32em">6.0</text> </g> </g> - <g transform="translate(0,570)" fill="none" text-anchor="middle" font-variant="tabular-nums"> + <g aria-label="x-axis" transform="translate(0,570)" fill="none" text-anchor="middle" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(52.5,0)"> <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">0</text> </g> @@ -77,7 +77,7 @@ <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">6</text> </g> </g> - <g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(0.5,0.5)"> + <g fill="none" aria-label="vector" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(0.5,0.5)"> <path d="M52,558.8333333333334l0,-1.6666666666666667m-0.33333333333333337,0.33333333333333337l0.33333333333333337,-0.33333333333333337l0.33333333333333337,0.33333333333333337"></path> <path d="M52.20654846660786,542.0106944349266l-0.4130969332157243,-1.9568727408208648m-0.3087551615210281,0.4739939348073178l0.3087551615210281,-0.4739939348073178l0.4739939348073178,0.3087551615210281"></path> <path d="M52.46268693684173,525.1355118851337l-0.9253738736834577,-2.141991512202725m-0.24332352770385351,0.6134730771772365l0.24332352770385351,-0.6134730771772365l0.6134730771772365,0.24332352770385351"></path> diff --git a/test/output/vectorFrame.svg b/test/output/vectorFrame.svg index bf420f955d..82fa82b96a 100644 --- a/test/output/vectorFrame.svg +++ b/test/output/vectorFrame.svg @@ -13,18 +13,18 @@ white-space: pre; } </style> - <rect fill="none" stroke="currentColor" transform="translate(0.5,0.5)" x="0" y="0" width="199" height="199"></rect> - <g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(-9.5,10.5)"> + <rect aria-label="frame" fill="none" stroke="currentColor" transform="translate(0.5,0.5)" x="0" y="0" width="199" height="199"></rect> + <g fill="none" aria-label="vector" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(-9.5,10.5)"> <path d="M199,0l-70.71067811865476,70.71067811865474m28.284271247461902,2.842170943040401e-15l-28.284271247461902,-2.842170943040401e-15l2.842170943040401e-15,-28.284271247461902"></path> </g> - <g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(10.5,-9.5)"> + <g fill="none" aria-label="vector" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(10.5,-9.5)"> <path d="M0,199l70.71067811865474,-70.71067811865476m-28.284271247461902,2.842170943040401e-15l28.284271247461902,-2.842170943040401e-15l2.842170943040401e-15,28.284271247461902"></path> </g> - <g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(10.5,10.5)"> + <g fill="none" aria-label="vector" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(10.5,10.5)"> <path d="M0,0l70.71067811865476,70.71067811865474m-2.842170943040401e-15,-28.284271247461902l2.842170943040401e-15,28.284271247461902l-28.284271247461902,2.842170943040401e-15"></path> </g> - <g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(-9.5,-9.5)"> + <g fill="none" aria-label="vector" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" transform="translate(-9.5,-9.5)"> <path d="M199,199l-70.71067811865474,-70.71067811865476m-2.842170943040401e-15,28.284271247461902l2.842170943040401e-15,-28.284271247461902l28.284271247461902,2.842170943040401e-15"></path> </g> - <g transform="translate(0.5,0.5)"><text y="0.32em" transform="translate(99.5,99.5)">Ο</text></g> + <g aria-label="text" transform="translate(0.5,0.5)"><text y="0.32em" transform="translate(99.5,99.5)">Ο</text></g> </svg> \ No newline at end of file diff --git a/test/output/wealthBritainBar.svg b/test/output/wealthBritainBar.svg index 4ddded4139..651d567695 100644 --- a/test/output/wealthBritainBar.svg +++ b/test/output/wealthBritainBar.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(0,30)" fill="none" text-anchor="middle" font-variant="tabular-nums"> + <g aria-label="x-axis" transform="translate(0,30)" fill="none" text-anchor="middle" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(20.5,0)"> <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">0</text> </g> @@ -48,14 +48,14 @@ <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">100</text> </g><text fill="currentColor" transform="translate(640,30)" dy="-0.32em" text-anchor="end">wealth →</text> </g> - <g> + <g aria-label="bar"> <rect x="20" width="18" y="0" height="30" fill="#4e79a7"></rect> <rect x="38" width="192" y="0" height="30" fill="#f28e2c"></rect> <rect x="230" width="312" y="0" height="30" fill="#e15759"></rect> <rect x="542" width="78" y="0" height="30" fill="#76b7b2"></rect> </g> - <g transform="translate(0.5,0.5)"><text y="0.32em" transform="translate(29,15)">16-34’s</text><text y="0.32em" transform="translate(134,15)">35-54’s</text><text y="0.32em" transform="translate(386,15)">55-74’s</text><text y="0.32em" transform="translate(581,15)">Over 75’s</text></g> - <g stroke="currentColor" transform="translate(0.5,0)"> + <g aria-label="text" transform="translate(0.5,0.5)"><text y="0.32em" transform="translate(29,15)">16-34’s</text><text y="0.32em" transform="translate(134,15)">35-54’s</text><text y="0.32em" transform="translate(386,15)">55-74’s</text><text y="0.32em" transform="translate(581,15)">Over 75’s</text></g> + <g aria-label="rule" stroke="currentColor" transform="translate(0.5,0)"> <line x1="20" x2="20" y1="0" y2="30"></line> <line x1="620" x2="620" y1="0" y2="30"></line> </g> diff --git a/test/output/wealthBritainProportionPlot.svg b/test/output/wealthBritainProportionPlot.svg index 7f70f3ad3b..6b1ac7cefa 100644 --- a/test/output/wealthBritainProportionPlot.svg +++ b/test/output/wealthBritainProportionPlot.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(0,30)" fill="none" text-anchor="middle"> + <g aria-label="x-axis" transform="translate(0,30)" fill="none" text-anchor="middle"> <g class="tick" opacity="1" transform="translate(50.5,0)"> <line stroke="currentColor" y2="0"></line><text fill="currentColor" y="-9" dy="0em">Share of population</text> </g> @@ -21,13 +21,13 @@ <line stroke="currentColor" y2="0"></line><text fill="currentColor" y="-9" dy="0em">Share of wealth</text> </g> </g> - <g stroke="white" stroke-miterlimit="1"> + <g aria-label="area" stroke="white" stroke-miterlimit="1"> <path fill="#008837" d="M50,140.7C315,140.7,315,41.06999999999999,580,41.06999999999999L580,30C315,30,315,30,50,30Z"></path> <path fill="#a6dba0" d="M50,262.47C315,262.47,315,159.14999999999998,580,159.14999999999998L580,41.06999999999999C315,41.06999999999999,315,140.7,50,140.7Z"></path> <path fill="#c2a5cf" d="M50,365.79C315,365.79,315,351.03,580,351.03L580,159.14999999999998C315,159.14999999999998,315,262.47,50,262.47Z"></path> <path fill="#7b3294" d="M50,399C315,399,315,399,580,399L580,351.03C315,351.03,315,365.79,50,365.79Z"></path> </g> - <g text-anchor="end" transform="translate(-5.5,0.5)"><text y="0.32em" transform="translate(50,85.35)">30%</text><text y="0.32em" transform="translate(50,201.58499999999998)">33%</text><text y="0.32em" transform="translate(50,314.13)">28%</text><text y="0.32em" transform="translate(50,382.395)">9%</text></g> - <g text-anchor="start" transform="translate(6.5,0.5)"><text y="0.32em" transform="translate(580,35.535)">3%</text><text y="0.32em" transform="translate(580,100.11)">32%</text><text y="0.32em" transform="translate(580,255.08999999999997)">52%</text><text y="0.32em" transform="translate(580,375.015)">13%</text></g> - <g fill="white" text-anchor="start" font-weight="bold" transform="translate(8.5,0.5)"><text y="0.32em" transform="translate(50,85.35)">16-34’s</text><text y="0.32em" transform="translate(50,201.58499999999998)">35-54’s</text><text y="0.32em" transform="translate(50,314.13)">55-74’s</text><text y="0.32em" transform="translate(50,382.395)">Over 75’s</text></g> + <g aria-label="text" text-anchor="end" transform="translate(-5.5,0.5)"><text y="0.32em" transform="translate(50,85.35)">30%</text><text y="0.32em" transform="translate(50,201.58499999999998)">33%</text><text y="0.32em" transform="translate(50,314.13)">28%</text><text y="0.32em" transform="translate(50,382.395)">9%</text></g> + <g aria-label="text" text-anchor="start" transform="translate(6.5,0.5)"><text y="0.32em" transform="translate(580,35.535)">3%</text><text y="0.32em" transform="translate(580,100.11)">32%</text><text y="0.32em" transform="translate(580,255.08999999999997)">52%</text><text y="0.32em" transform="translate(580,375.015)">13%</text></g> + <g aria-label="text" fill="white" text-anchor="start" font-weight="bold" transform="translate(8.5,0.5)"><text y="0.32em" transform="translate(50,85.35)">16-34’s</text><text y="0.32em" transform="translate(50,201.58499999999998)">35-54’s</text><text y="0.32em" transform="translate(50,314.13)">55-74’s</text><text y="0.32em" transform="translate(50,382.395)">Over 75’s</text></g> </svg> \ No newline at end of file diff --git a/test/output/wordCloud.svg b/test/output/wordCloud.svg index 3833fc2dc1..d1f79af495 100644 --- a/test/output/wordCloud.svg +++ b/test/output/wordCloud.svg @@ -13,5 +13,5 @@ white-space: pre; } </style> - <g transform="translate(0.5,0.5)"><text y="0.32em" transform="translate(168.23986283808404,242.49669372666574)" font-size="33.2264954516723">a (69)</text><text y="0.32em" transform="translate(531.4061899323269,26.29349402260572)" font-size="10.583005244258363">about (7)</text><text y="0.32em" transform="translate(348.6955632272059,180.12690978602552)" font-size="5.656854249492381">account (2)</text><text y="0.32em" transform="translate(225.25380129832868,279.7010941488838)" font-size="5.656854249492381">ago (2)</text><text y="0.32em" transform="translate(384.844026448623,208.21109644104467)" font-size="5.656854249492381">air (2)</text><text y="0.32em" transform="translate(498.7497485402888,352.93154465476545)" font-size="19.183326093250876">all (23)</text><text y="0.32em" transform="translate(31.849466574661115,197.42275514475511)" font-size="6.928203230275509">almost (3)</text><text y="0.32em" transform="translate(403.4682681361483,133.21945773614837)" font-size="5.656854249492381">aloft (2)</text><text y="0.32em" transform="translate(350.9042800851673,71.05253638203034)" font-size="5.656854249492381">always (2)</text><text y="0.32em" transform="translate(528.6207162734249,110.8933946808512)" font-size="8">am (4)</text><text y="0.32em" transform="translate(481.3463263779466,251.94234690625734)" font-size="5.656854249492381">among (2)</text><text y="0.32em" transform="translate(116.2559638763529,359.0947469360683)" font-size="8">an (4)</text><text y="0.32em" transform="translate(114.22279686694692,84.41623431953154)" font-size="34.17601498127012">and (73)</text><text y="0.32em" transform="translate(552.5689797747842,215.47672586084204)" font-size="5.656854249492381">any (2)</text><text y="0.32em" transform="translate(137.190135778809,42.46189102909719)" font-size="8.94427190999916">are (5)</text><text y="0.32em" transform="translate(110.99036407718573,374.38473263149325)" font-size="20.396078054371138">as (26)</text><text y="0.32em" transform="translate(455.94121429019344,150.36409078591896)" font-size="8.94427190999916">at (5)</text><text y="0.32em" transform="translate(328.33073812457803,53.4890738040599)" font-size="12">be (9)</text><text y="0.32em" transform="translate(482.70937244855605,248.81016203976455)" font-size="8">because (4)</text><text y="0.32em" transform="translate(201.73286512928738,171.86169798794535)" font-size="5.656854249492381">been (2)</text><text y="0.32em" transform="translate(347.96748287376676,134.45086587042263)" font-size="6.928203230275509">before (3)</text><text y="0.32em" transform="translate(509.66314382615576,32.93063805637769)" font-size="5.656854249492381">begin (2)</text><text y="0.32em" transform="translate(97.48846389413433,352.73688520370644)" font-size="8">being (4)</text><text y="0.32em" transform="translate(275.33289761672586,53.460600614123976)" font-size="5.656854249492381">besides (2)</text><text y="0.32em" transform="translate(534.1477541121852,210.30785091057)" font-size="5.656854249492381">better (2)</text><text y="0.32em" transform="translate(222.69860094264988,196.2487998756945)" font-size="5.656854249492381">between (2)</text><text y="0.32em" transform="translate(175.7488603557971,147.17912243851345)" font-size="6.928203230275509">broiled (3)</text><text y="0.32em" transform="translate(332.3848362047378,224.51624071946193)" font-size="15.491933384829668">but (15)</text><text y="0.32em" transform="translate(156.17426110343052,60.231943322447535)" font-size="11.313708498984761">by (8)</text><text y="0.32em" transform="translate(73.51500983329034,370.36544174700674)" font-size="9.797958971132712">can (6)</text><text y="0.32em" transform="translate(340.4568201919838,351.7543799694901)" font-size="5.656854249492381">cannot (2)</text><text y="0.32em" transform="translate(235.99999117760063,98.3707465285004)" font-size="5.656854249492381">captain (2)</text><text y="0.32em" transform="translate(438.994057863917,303.19213540806743)" font-size="5.656854249492381">care (2)</text><text y="0.32em" transform="translate(507.7718953355258,219.2398057100426)" font-size="5.656854249492381">chief (2)</text><text y="0.32em" transform="translate(102.87591805612878,189.32580732880817)" font-size="5.656854249492381">city (2)</text><text y="0.32em" transform="translate(301.6151595553962,218.56708090310957)" font-size="6.928203230275509">come (3)</text><text y="0.32em" transform="translate(87.62275181371335,255.5807430511084)" font-size="5.656854249492381">commodore (2)</text><text y="0.32em" transform="translate(161.66792817495525,94.74778172265893)" font-size="5.656854249492381">content (2)</text><text y="0.32em" transform="translate(437.5322370273247,253.58907092616835)" font-size="6.928203230275509">cook (3)</text><text y="0.32em" transform="translate(410.9468184795749,36.716535551995186)" font-size="5.656854249492381">could (2)</text><text y="0.32em" transform="translate(33.95361062499358,48.52331614923304)" font-size="5.656854249492381">country (2)</text><text y="0.32em" transform="translate(125.23916686217544,212.06157395971132)" font-size="5.656854249492381">crowds (2)</text><text y="0.32em" transform="translate(68.85198086849138,165.47946664423912)" font-size="5.656854249492381">deck (2)</text><text y="0.32em" transform="translate(582.0345309513207,317.6316906568253)" font-size="5.656854249492381">deep (2)</text><text y="0.32em" transform="translate(173.97196003855964,94.99519842966592)" font-size="8.94427190999916">did (5)</text><text y="0.32em" transform="translate(57.60911369674986,162.54483292915307)" font-size="5.656854249492381">distant (2)</text><text y="0.32em" transform="translate(582.7280761967858,156.8623394466579)" font-size="11.313708498984761">do (8)</text><text y="0.32em" transform="translate(191.72019689423462,233.54065770667535)" font-size="5.656854249492381">does (2)</text><text y="0.32em" transform="translate(144.98010344603128,219.93725814517117)" font-size="9.797958971132712">down (6)</text><text y="0.32em" transform="translate(324.3067108661427,66.89492732509301)" font-size="5.656854249492381">each (2)</text><text y="0.32em" transform="translate(240.70567245267318,27.85677498043652)" font-size="5.656854249492381">else (2)</text><text y="0.32em" transform="translate(134.5280588561803,175.79116811676482)" font-size="8.94427190999916">ever (5)</text><text y="0.32em" transform="translate(491.7319315794683,122.79460760583444)" font-size="8">every (4)</text><text y="0.32em" transform="translate(512.9874878480675,267.15628397423507)" font-size="5.656854249492381">exactly (2)</text><text y="0.32em" transform="translate(446.4424977621909,274.0907884427936)" font-size="5.656854249492381">fates (2)</text><text y="0.32em" transform="translate(339.46440704849806,24.455996287069464)" font-size="5.656854249492381">find (2)</text><text y="0.32em" transform="translate(240.9573737698459,149.84228445103943)" font-size="8">first (4)</text><text y="0.32em" transform="translate(426.52777828265636,106.11282004836302)" font-size="5.656854249492381">fixed (2)</text><text y="0.32em" transform="translate(24.72942424931232,115.47110840253386)" font-size="16">for (16)</text><text y="0.32em" transform="translate(176.73209780540276,369.6436330224807)" font-size="5.656854249492381">forecastle (2)</text><text y="0.32em" transform="translate(54.85773074737267,331.80006636421194)" font-size="13.2664991614216">from (11)</text><text y="0.32em" transform="translate(602.5822012336952,80.85699768620646)" font-size="9.797958971132712">get (6)</text><text y="0.32em" transform="translate(615.990041418685,249.83641654778356)" font-size="5.656854249492381">glory (2)</text><text y="0.32em" transform="translate(106.01070695775056,155.07202419309067)" font-size="13.856406460551018">go (12)</text><text y="0.32em" transform="translate(171.29956562326254,63.743789014658724)" font-size="8">going (4)</text><text y="0.32em" transform="translate(52.01697008504472,314.8445746307425)" font-size="6.928203230275509">grand (3)</text><text y="0.32em" transform="translate(121.08389252825627,283.65441257361397)" font-size="6.928203230275509">great (3)</text><text y="0.32em" transform="translate(485.1419139318015,88.93091571001511)" font-size="5.656854249492381">grow (2)</text><text y="0.32em" transform="translate(382.79019533136045,267.5796138069311)" font-size="6.928203230275509">hand (3)</text><text y="0.32em" transform="translate(364.07093036243043,226.36274853178926)" font-size="11.313708498984761">have (8)</text><text y="0.32em" transform="translate(38.012194133232185,244.5224873794793)" font-size="5.656854249492381">having (2)</text><text y="0.32em" transform="translate(566.1841926016343,273.10486952250926)" font-size="12.649110640673518">he (10)</text><text y="0.32em" transform="translate(589.0024975790952,344.5843598169909)" font-size="8">head (4)</text><text y="0.32em" transform="translate(201.06148604163596,227.92021668009843)" font-size="5.656854249492381">healthy (2)</text><text y="0.32em" transform="translate(49.76452114338791,209.75323655827253)" font-size="8.94427190999916">here (5)</text><text y="0.32em" transform="translate(139.83183435830549,32.9516779350556)" font-size="8">high (4)</text><text y="0.32em" transform="translate(609.4946551585165,108.11580694691747)" font-size="5.656854249492381">hill (2)</text><text y="0.32em" transform="translate(600.346301023833,338.2183492423837)" font-size="6.928203230275509">him (3)</text><text y="0.32em" transform="translate(256.30818306032813,68.45435245903136)" font-size="5.656854249492381">himself (2)</text><text y="0.32em" transform="translate(377.8657195062053,135.02414963269823)" font-size="12.649110640673518">his (10)</text><text y="0.32em" transform="translate(91.73049343510698,252.81612930157877)" font-size="6.928203230275509">how (3)</text><text y="0.32em" transform="translate(529.8720935824643,46.908527517321524)" font-size="5.656854249492381">however (2)</text><text y="0.32em" transform="translate(22.432918115831686,58.13024775117492)" font-size="5.656854249492381">hunks (2)</text><text y="0.32em" transform="translate(600.0676087314038,329.48828628680803)" font-size="26.229754097208">i (43)</text><text y="0.32em" transform="translate(523.4581778511179,164.14254751707378)" font-size="12">if (9)</text><text y="0.32em" transform="translate(301.5666254762325,254.45697390223333)" font-size="6.928203230275509">image (3)</text><text y="0.32em" transform="translate(384.93417156796977,315.96389332769024)" font-size="27.712812921102035">in (48)</text><text y="0.32em" transform="translate(27.140148064895367,359.3195493448675)" font-size="12">into (9)</text><text y="0.32em" transform="translate(109.14480909995396,134.30471162822948)" font-size="23.323807579381203">is (34)</text><text y="0.32em" transform="translate(342.5236463935798,379)" font-size="5.656854249492381">ishmael (2)</text><text y="0.32em" transform="translate(567.8062056380398,36.37010234313097)" font-size="22.978250586152114">it (33)</text><text y="0.32em" transform="translate(180.35186948768614,364.87494986147414)" font-size="5.656854249492381">its (2)</text><text y="0.32em" transform="translate(497.82351870297606,65.36860647526721)" font-size="5.656854249492381">just (2)</text><text y="0.32em" transform="translate(607.9015021190751,145.29655521585264)" font-size="9.797958971132712">land (6)</text><text y="0.32em" transform="translate(112.8546718569081,360.79703679673173)" font-size="5.656854249492381">lead (2)</text><text y="0.32em" transform="translate(264.8655145597923,71.28420646394983)" font-size="5.656854249492381">leaders (2)</text><text y="0.32em" transform="translate(292.417952533966,201.61371096199676)" font-size="5.656854249492381">leaves (2)</text><text y="0.32em" transform="translate(200.97757146135484,98.690556119624)" font-size="5.656854249492381">let (2)</text><text y="0.32em" transform="translate(362.90058492426033,282.9429343067725)" font-size="9.797958971132712">like (6)</text><text y="0.32em" transform="translate(520.2091267435416,167.71087575080244)" font-size="8">little (4)</text><text y="0.32em" transform="translate(413.5491413122857,341.85362151635235)" font-size="5.656854249492381">long (2)</text><text y="0.32em" transform="translate(217.084074714403,67.86639461407697)" font-size="5.656854249492381">look (2)</text><text y="0.32em" transform="translate(515.6701584524596,116.41421536109472)" font-size="5.656854249492381">magic (2)</text><text y="0.32em" transform="translate(51.60112850647299,341.18068029062067)" font-size="5.656854249492381">make (2)</text><text y="0.32em" transform="translate(525.7687106781866,316.67158078844324)" font-size="6.928203230275509">man (3)</text><text y="0.32em" transform="translate(519.6473247764915,70.45907808112815)" font-size="5.656854249492381">mast (2)</text><text y="0.32em" transform="translate(418.01481550196934,144.4229952719096)" font-size="6.928203230275509">may (3)</text><text y="0.32em" transform="translate(183.0439291644197,27.11063937533935)" font-size="20">me (25)</text><text y="0.32em" transform="translate(451.76450102137983,180.62237611819862)" font-size="5.656854249492381">meadow (2)</text><text y="0.32em" transform="translate(105.44696568291192,360.6798510025151)" font-size="5.656854249492381">mean (2)</text><text y="0.32em" transform="translate(582.2076966736016,55.310526553168316)" font-size="5.656854249492381">meaning (2)</text><text y="0.32em" transform="translate(43.36118178710821,63.09219675353154)" font-size="8">men (4)</text><text y="0.32em" transform="translate(492.6091906398343,218.29311590182309)" font-size="5.656854249492381">metaphysical (2)</text><text y="0.32em" transform="translate(299.09069311881296,305.1320649234597)" font-size="6.928203230275509">miles (3)</text><text y="0.32em" transform="translate(547.6784337852351,357.15735009874254)" font-size="8">money (4)</text><text y="0.32em" transform="translate(329.2332279279054,94.36315189451184)" font-size="9.797958971132712">more (6)</text><text y="0.32em" transform="translate(352.3465298884758,73.8931675068927)" font-size="8.94427190999916">most (5)</text><text y="0.32em" transform="translate(610.4543235289277,246.04666892571)" font-size="5.656854249492381">motives (2)</text><text y="0.32em" transform="translate(35.587241586580745,368.13407721450494)" font-size="8">much (4)</text><text y="0.32em" transform="translate(497.157539602531,329.24032748548143)" font-size="8">must (4)</text><text y="0.32em" transform="translate(449.9459895239472,84.86894859684958)" font-size="14.966629547095765">my (14)</text><text y="0.32em" transform="translate(330.65980603530033,107.75868878252228)" font-size="6.928203230275509">myself (3)</text><text y="0.32em" transform="translate(40.65045009487372,129.62218066032742)" font-size="8.94427190999916">never (5)</text><text y="0.32em" transform="translate(411.99127496584543,299.8551181501913)" font-size="9.797958971132712">no (6)</text><text y="0.32em" transform="translate(124.10445352689133,171.0876677340678)" font-size="13.2664991614216">not (11)</text><text y="0.32em" transform="translate(449.45540359850213,31.232142688379255)" font-size="6.928203230275509">nothing (3)</text><text y="0.32em" transform="translate(26.715471021880145,366.58084402096864)" font-size="8.94427190999916">now (5)</text><text y="0.32em" transform="translate(363.7445244618246,32.35394479732556)" font-size="5.656854249492381">ocean (2)</text><text y="0.32em" transform="translate(106.03107283980462,301.18896342661475)" font-size="36">of (81)</text><text y="0.32em" transform="translate(464.34643634916404,105.38712785062059)" font-size="6.928203230275509">off (3)</text><text y="0.32em" transform="translate(525.05609928312,143.88256837419084)" font-size="5.656854249492381">officer (2)</text><text y="0.32em" transform="translate(101.59759317558817,291.61468793838117)" font-size="9.797958971132712">old (6)</text><text y="0.32em" transform="translate(562.5142795011204,129.26694030395217)" font-size="13.856406460551018">on (12)</text><text y="0.32em" transform="translate(414.2955699732187,279.8057165092629)" font-size="5.656854249492381">once (2)</text><text y="0.32em" transform="translate(282.4192944710719,291.8226573550223)" font-size="12.649110640673518">one (10)</text><text y="0.32em" transform="translate(612.5072769102486,314.0364880343671)" font-size="12.649110640673518">or (10)</text><text y="0.32em" transform="translate(57.86847773690063,48.87376982114553)" font-size="5.656854249492381">order (2)</text><text y="0.32em" transform="translate(47.426927895054206,146.4589829790767)" font-size="8.94427190999916">other (5)</text><text y="0.32em" transform="translate(577.9251712099274,284.5297637748146)" font-size="5.656854249492381">others (2)</text><text y="0.32em" transform="translate(550.6441797612799,342.5645230015407)" font-size="5.656854249492381">ourselves (2)</text><text y="0.32em" transform="translate(208.3420350340055,170.03202057041548)" font-size="6.928203230275509">out (3)</text><text y="0.32em" transform="translate(426.2535448160043,63.8180076757949)" font-size="5.656854249492381">over (2)</text><text y="0.32em" transform="translate(302.37935505351413,377.29940479153237)" font-size="5.656854249492381">own (2)</text><text y="0.32em" transform="translate(187.8268258601627,25.01920430058334)" font-size="5.656854249492381">paid (2)</text><text y="0.32em" transform="translate(294.633173094627,230.8436974957935)" font-size="10.583005244258363">part (7)</text><text y="0.32em" transform="translate(540.3683336961077,131.78081993032532)" font-size="5.656854249492381">particular (2)</text><text y="0.32em" transform="translate(53.46125706460951,235.86117631099566)" font-size="6.928203230275509">parts (3)</text><text y="0.32em" transform="translate(122.93306611857008,67.50422391278066)" font-size="8">passenger (4)</text><text y="0.32em" transform="translate(214.2623416983451,195.5757705072698)" font-size="6.928203230275509">passengers (3)</text><text y="0.32em" transform="translate(375.8413396570636,218.2168101356638)" font-size="5.656854249492381">pay (2)</text><text y="0.32em" transform="translate(278.62360960879784,193.36314735677402)" font-size="6.928203230275509">paying (3)</text><text y="0.32em" transform="translate(295.17913045080275,138.0902013382128)" font-size="5.656854249492381">perhaps (2)</text><text y="0.32em" transform="translate(462.02530474509024,34.88000411843531)" font-size="5.656854249492381">phantom (2)</text><text y="0.32em" transform="translate(217.13812191056098,348.5699642734187)" font-size="5.656854249492381">plunged (2)</text><text y="0.32em" transform="translate(156.72137285948483,376.9308696348103)" font-size="5.656854249492381">point (2)</text><text y="0.32em" transform="translate(607.6104664987023,224.6019236281331)" font-size="5.656854249492381">previous (2)</text><text y="0.32em" transform="translate(62.67699118900285,101.00836190634348)" font-size="6.928203230275509">purse (3)</text><text y="0.32em" transform="translate(79.21307218907461,153.17857671012945)" font-size="5.656854249492381">requires (2)</text><text y="0.32em" transform="translate(378.7361353344956,225.80810267601976)" font-size="5.656854249492381">respectfully (2)</text><text y="0.32em" transform="translate(223.07340371054778,185.020338485324)" font-size="5.656854249492381">reveries (2)</text><text y="0.32em" transform="translate(536.2880912939438,211.59677860357857)" font-size="6.928203230275509">right (3)</text><text y="0.32em" transform="translate(474.45417686986144,40.46917677600468)" font-size="5.656854249492381">robust (2)</text><text y="0.32em" transform="translate(74.01936426998569,87.44283538324703)" font-size="5.656854249492381">round (2)</text><text y="0.32em" transform="translate(523.5564026495175,340.07379934876565)" font-size="5.656854249492381">sail (2)</text><text y="0.32em" transform="translate(356.595714687519,215.34160152044166)" font-size="8.94427190999916">sailor (5)</text><text y="0.32em" transform="translate(253.2708523907828,116.51559680178703)" font-size="8.94427190999916">same (5)</text><text y="0.32em" transform="translate(267.16104032845186,198.7195512488363)" font-size="6.928203230275509">say (3)</text><text y="0.32em" transform="translate(333.10493950800344,259.27768203103443)" font-size="5.656854249492381">schoolmaster (2)</text><text y="0.32em" transform="translate(412.4155577347482,330.3429728022771)" font-size="5.656854249492381">scores (2)</text><text y="0.32em" transform="translate(367.17765201567664,192.82828911666854)" font-size="14.422205101855956">sea (13)</text><text y="0.32em" transform="translate(267.14984804009623,219.10468338050208)" font-size="5.656854249492381">seas (2)</text><text y="0.32em" transform="translate(379.37692401546815,343.9324823488987)" font-size="9.797958971132712">see (6)</text><text y="0.32em" transform="translate(251.20270293469906,175.70894321686575)" font-size="6.928203230275509">set (3)</text><text y="0.32em" transform="translate(522.3178666915104,254.6672458372662)" font-size="5.656854249492381">shepherds (2)</text><text y="0.32em" transform="translate(201.58867981438837,177.60700277462024)" font-size="6.928203230275509">ship (3)</text><text y="0.32em" transform="translate(285.5387351047631,127.51362956487988)" font-size="6.928203230275509">ships (3)</text><text y="0.32em" transform="translate(133.65508052618264,310.1590126266576)" font-size="6.928203230275509">should (3)</text><text y="0.32em" transform="translate(284.8285454992295,262.7681101380464)" font-size="5.656854249492381">sight (2)</text><text y="0.32em" transform="translate(297.581777387575,111.58345653549509)" font-size="5.656854249492381">sleep (2)</text><text y="0.32em" transform="translate(303.2803372063998,233.3333476845157)" font-size="8">so (4)</text><text y="0.32em" transform="translate(27.271145778804453,42.20742583914899)" font-size="13.2664991614216">some (11)</text><text y="0.32em" transform="translate(157.1435646874795,52.74719309476306)" font-size="6.928203230275509">something (3)</text><text y="0.32em" transform="translate(194.06924201338302,67.32289964683854)" font-size="6.928203230275509">sort (3)</text><text y="0.32em" transform="translate(439.15650775906573,297.16004362319734)" font-size="6.928203230275509">soul (3)</text><text y="0.32em" transform="translate(138.23147293519546,159.67341595787767)" font-size="5.656854249492381">spar (2)</text><text y="0.32em" transform="translate(96.53947732791168,165.8554842945014)" font-size="8.94427190999916">stand (5)</text><text y="0.32em" transform="translate(299.314089587053,39.48428900792904)" font-size="6.928203230275509">still (3)</text><text y="0.32em" transform="translate(53.537255499986536,365.0854811974364)" font-size="5.656854249492381">stream (2)</text><text y="0.32em" transform="translate(70.63196537257238,291.9422746978087)" font-size="5.656854249492381">streets (2)</text><text y="0.32em" transform="translate(311.1352752548529,128.22531922337012)" font-size="5.656854249492381">strong (2)</text><text y="0.32em" transform="translate(256.8278618228826,114.80409192419265)" font-size="8.94427190999916">such (5)</text><text y="0.32em" transform="translate(398.07812084114425,327.14139282487605)" font-size="9.797958971132712">take (6)</text><text y="0.32em" transform="translate(44.02533806984326,328.1056829358841)" font-size="8">tell (4)</text><text y="0.32em" transform="translate(387.3733948493237,30.95790471285889)" font-size="8">than (4)</text><text y="0.32em" transform="translate(60.842296951441185,27.67977950939671)" font-size="22.271057451320086">that (31)</text><text y="0.32em" transform="translate(358.89689694557745,24.07157399642308)" font-size="44.54211490264017">the (124)</text><text y="0.32em" transform="translate(228.2173503442953,95.7849604785391)" font-size="8">their (4)</text><text y="0.32em" transform="translate(255.51079307022604,162.62893270456806)" font-size="8.94427190999916">them (5)</text><text y="0.32em" transform="translate(276.11450908167154,35.91347032419216)" font-size="5.656854249492381">themselves (2)</text><text y="0.32em" transform="translate(230.08972688212577,39.221471376168765)" font-size="8.94427190999916">then (5)</text><text y="0.32em" transform="translate(224.44710120271722,257.37509770332144)" font-size="16">there (16)</text><text y="0.32em" transform="translate(243.54620223502542,250.8077016863733)" font-size="8">these (4)</text><text y="0.32em" transform="translate(340.40235968006584,44.172131746089924)" font-size="13.856406460551018">they (12)</text><text y="0.32em" transform="translate(402.7968084015193,254.24943413932806)" font-size="5.656854249492381">thing (2)</text><text y="0.32em" transform="translate(594.2989745297506,323.94340315407254)" font-size="8">things (4)</text><text y="0.32em" transform="translate(285.140519791214,88.03726962149604)" font-size="5.656854249492381">think (2)</text><text y="0.32em" transform="translate(185.8761990721284,147.1250122927699)" font-size="5.656854249492381">thinks (2)</text><text y="0.32em" transform="translate(271.82493456811426,186.32579377114058)" font-size="16.492422502470642">this (17)</text><text y="0.32em" transform="translate(449.5414137400909,91.57737878771087)" font-size="8">those (4)</text><text y="0.32em" transform="translate(413.2971391090803,82.42082702229406)" font-size="10.583005244258363">though (7)</text><text y="0.32em" transform="translate(316.8922845307188,262.795200778003)" font-size="5.656854249492381">thousand (2)</text><text y="0.32em" transform="translate(567.3970389969829,163.01940667813722)" font-size="5.656854249492381">thousands (2)</text><text y="0.32em" transform="translate(421.2607294981231,109.21330211632012)" font-size="5.656854249492381">thump (2)</text><text y="0.32em" transform="translate(39.55656905239549,139.95680417641415)" font-size="9.797958971132712">time (6)</text><text y="0.32em" transform="translate(523.06999804584,316.5006033184225)" font-size="29.120439557122072">to (53)</text><text y="0.32em" transform="translate(186.01856576968083,187.07111883211925)" font-size="8">two (4)</text><text y="0.32em" transform="translate(25.081736591340864,230.28794952121729)" font-size="5.656854249492381">under (2)</text><text y="0.32em" transform="translate(349.4766357855255,296.856843818781)" font-size="5.656854249492381">unless (2)</text><text y="0.32em" transform="translate(389.37126102450503,56.34291200550517)" font-size="8">up (4)</text><text y="0.32em" transform="translate(107.63925561961764,270.8286811629363)" font-size="12">upon (9)</text><text y="0.32em" transform="translate(23.92258946204734,281.6247811108613)" font-size="9.797958971132712">voyage (6)</text><text y="0.32em" transform="translate(367.273186341297,297.1668537354525)" font-size="5.656854249492381">warehouses (2)</text><text y="0.32em" transform="translate(530.6964114023597,350.1680377998348)" font-size="11.313708498984761">was (8)</text><text y="0.32em" transform="translate(112.51729166680784,191.47609323534985)" font-size="11.313708498984761">water (8)</text><text y="0.32em" transform="translate(601.4414418953116,232.56587040418123)" font-size="9.797958971132712">way (6)</text><text y="0.32em" transform="translate(461.5464486145058,107.59806682214936)" font-size="6.928203230275509">we (3)</text><text y="0.32em" transform="translate(280.3914634633362,256.51380434002056)" font-size="5.656854249492381">well (2)</text><text y="0.32em" transform="translate(576.4692273818133,278.35109630502694)" font-size="10.583005244258363">were (7)</text><text y="0.32em" transform="translate(116.87781969925642,236.19815889717518)" font-size="6.928203230275509">whale (3)</text><text y="0.32em" transform="translate(289.8250322147597,178.43567261690058)" font-size="8.94427190999916">whaling (5)</text><text y="0.32em" transform="translate(410.18529357251623,125.53078989077146)" font-size="12">what (9)</text><text y="0.32em" transform="translate(548.8295352584194,30.30353017567787)" font-size="8.94427190999916">when (5)</text><text y="0.32em" transform="translate(255.44206574394465,93.25105947403637)" font-size="8.94427190999916">whenever (5)</text><text y="0.32em" transform="translate(133.7772231739523,309.63699573798755)" font-size="5.656854249492381">where (2)</text><text y="0.32em" transform="translate(67.62099366360172,336.0751984533313)" font-size="8">which (4)</text><text y="0.32em" transform="translate(475.82282048477,105.98476011021145)" font-size="8.94427190999916">who (5)</text><text y="0.32em" transform="translate(310.8272242423102,161.05639768560945)" font-size="10.583005244258363">why (7)</text><text y="0.32em" transform="translate(543.9104231573331,114.78378701481466)" font-size="5.656854249492381">wild (2)</text><text y="0.32em" transform="translate(217.25067596872682,275.9732359355035)" font-size="9.797958971132712">will (6)</text><text y="0.32em" transform="translate(455.0368201821059,224.21359783945704)" font-size="6.928203230275509">winds (3)</text><text y="0.32em" transform="translate(533.1449639708826,146.21726739508014)" font-size="14.422205101855956">with (13)</text><text y="0.32em" transform="translate(33.93997372513037,239.06876348104373)" font-size="6.928203230275509">without (3)</text><text y="0.32em" transform="translate(596.5095410877477,264.08900220895157)" font-size="8">world (4)</text><text y="0.32em" transform="translate(183.39415784617015,341.1686472210865)" font-size="8">would (4)</text><text y="0.32em" transform="translate(529.5725637071697,212.10064111376698)" font-size="8">yet (4)</text><text y="0.32em" transform="translate(167.99600023911637,42.949107054384825)" font-size="5.656854249492381">yonder (2)</text><text y="0.32em" transform="translate(121.85589174155089,193.1032992623974)" font-size="19.183326093250876">you (23)</text><text y="0.32em" transform="translate(448.67821791647475,241.75555100295875)" font-size="9.797958971132712">your (6)</text></g> + <g aria-label="text" transform="translate(0.5,0.5)"><text y="0.32em" transform="translate(168.23986283808404,242.49669372666574)" font-size="33.2264954516723">a (69)</text><text y="0.32em" transform="translate(531.4061899323269,26.29349402260572)" font-size="10.583005244258363">about (7)</text><text y="0.32em" transform="translate(348.6955632272059,180.12690978602552)" font-size="5.656854249492381">account (2)</text><text y="0.32em" transform="translate(225.25380129832868,279.7010941488838)" font-size="5.656854249492381">ago (2)</text><text y="0.32em" transform="translate(384.844026448623,208.21109644104467)" font-size="5.656854249492381">air (2)</text><text y="0.32em" transform="translate(498.7497485402888,352.93154465476545)" font-size="19.183326093250876">all (23)</text><text y="0.32em" transform="translate(31.849466574661115,197.42275514475511)" font-size="6.928203230275509">almost (3)</text><text y="0.32em" transform="translate(403.4682681361483,133.21945773614837)" font-size="5.656854249492381">aloft (2)</text><text y="0.32em" transform="translate(350.9042800851673,71.05253638203034)" font-size="5.656854249492381">always (2)</text><text y="0.32em" transform="translate(528.6207162734249,110.8933946808512)" font-size="8">am (4)</text><text y="0.32em" transform="translate(481.3463263779466,251.94234690625734)" font-size="5.656854249492381">among (2)</text><text y="0.32em" transform="translate(116.2559638763529,359.0947469360683)" font-size="8">an (4)</text><text y="0.32em" transform="translate(114.22279686694692,84.41623431953154)" font-size="34.17601498127012">and (73)</text><text y="0.32em" transform="translate(552.5689797747842,215.47672586084204)" font-size="5.656854249492381">any (2)</text><text y="0.32em" transform="translate(137.190135778809,42.46189102909719)" font-size="8.94427190999916">are (5)</text><text y="0.32em" transform="translate(110.99036407718573,374.38473263149325)" font-size="20.396078054371138">as (26)</text><text y="0.32em" transform="translate(455.94121429019344,150.36409078591896)" font-size="8.94427190999916">at (5)</text><text y="0.32em" transform="translate(328.33073812457803,53.4890738040599)" font-size="12">be (9)</text><text y="0.32em" transform="translate(482.70937244855605,248.81016203976455)" font-size="8">because (4)</text><text y="0.32em" transform="translate(201.73286512928738,171.86169798794535)" font-size="5.656854249492381">been (2)</text><text y="0.32em" transform="translate(347.96748287376676,134.45086587042263)" font-size="6.928203230275509">before (3)</text><text y="0.32em" transform="translate(509.66314382615576,32.93063805637769)" font-size="5.656854249492381">begin (2)</text><text y="0.32em" transform="translate(97.48846389413433,352.73688520370644)" font-size="8">being (4)</text><text y="0.32em" transform="translate(275.33289761672586,53.460600614123976)" font-size="5.656854249492381">besides (2)</text><text y="0.32em" transform="translate(534.1477541121852,210.30785091057)" font-size="5.656854249492381">better (2)</text><text y="0.32em" transform="translate(222.69860094264988,196.2487998756945)" font-size="5.656854249492381">between (2)</text><text y="0.32em" transform="translate(175.7488603557971,147.17912243851345)" font-size="6.928203230275509">broiled (3)</text><text y="0.32em" transform="translate(332.3848362047378,224.51624071946193)" font-size="15.491933384829668">but (15)</text><text y="0.32em" transform="translate(156.17426110343052,60.231943322447535)" font-size="11.313708498984761">by (8)</text><text y="0.32em" transform="translate(73.51500983329034,370.36544174700674)" font-size="9.797958971132712">can (6)</text><text y="0.32em" transform="translate(340.4568201919838,351.7543799694901)" font-size="5.656854249492381">cannot (2)</text><text y="0.32em" transform="translate(235.99999117760063,98.3707465285004)" font-size="5.656854249492381">captain (2)</text><text y="0.32em" transform="translate(438.994057863917,303.19213540806743)" font-size="5.656854249492381">care (2)</text><text y="0.32em" transform="translate(507.7718953355258,219.2398057100426)" font-size="5.656854249492381">chief (2)</text><text y="0.32em" transform="translate(102.87591805612878,189.32580732880817)" font-size="5.656854249492381">city (2)</text><text y="0.32em" transform="translate(301.6151595553962,218.56708090310957)" font-size="6.928203230275509">come (3)</text><text y="0.32em" transform="translate(87.62275181371335,255.5807430511084)" font-size="5.656854249492381">commodore (2)</text><text y="0.32em" transform="translate(161.66792817495525,94.74778172265893)" font-size="5.656854249492381">content (2)</text><text y="0.32em" transform="translate(437.5322370273247,253.58907092616835)" font-size="6.928203230275509">cook (3)</text><text y="0.32em" transform="translate(410.9468184795749,36.716535551995186)" font-size="5.656854249492381">could (2)</text><text y="0.32em" transform="translate(33.95361062499358,48.52331614923304)" font-size="5.656854249492381">country (2)</text><text y="0.32em" transform="translate(125.23916686217544,212.06157395971132)" font-size="5.656854249492381">crowds (2)</text><text y="0.32em" transform="translate(68.85198086849138,165.47946664423912)" font-size="5.656854249492381">deck (2)</text><text y="0.32em" transform="translate(582.0345309513207,317.6316906568253)" font-size="5.656854249492381">deep (2)</text><text y="0.32em" transform="translate(173.97196003855964,94.99519842966592)" font-size="8.94427190999916">did (5)</text><text y="0.32em" transform="translate(57.60911369674986,162.54483292915307)" font-size="5.656854249492381">distant (2)</text><text y="0.32em" transform="translate(582.7280761967858,156.8623394466579)" font-size="11.313708498984761">do (8)</text><text y="0.32em" transform="translate(191.72019689423462,233.54065770667535)" font-size="5.656854249492381">does (2)</text><text y="0.32em" transform="translate(144.98010344603128,219.93725814517117)" font-size="9.797958971132712">down (6)</text><text y="0.32em" transform="translate(324.3067108661427,66.89492732509301)" font-size="5.656854249492381">each (2)</text><text y="0.32em" transform="translate(240.70567245267318,27.85677498043652)" font-size="5.656854249492381">else (2)</text><text y="0.32em" transform="translate(134.5280588561803,175.79116811676482)" font-size="8.94427190999916">ever (5)</text><text y="0.32em" transform="translate(491.7319315794683,122.79460760583444)" font-size="8">every (4)</text><text y="0.32em" transform="translate(512.9874878480675,267.15628397423507)" font-size="5.656854249492381">exactly (2)</text><text y="0.32em" transform="translate(446.4424977621909,274.0907884427936)" font-size="5.656854249492381">fates (2)</text><text y="0.32em" transform="translate(339.46440704849806,24.455996287069464)" font-size="5.656854249492381">find (2)</text><text y="0.32em" transform="translate(240.9573737698459,149.84228445103943)" font-size="8">first (4)</text><text y="0.32em" transform="translate(426.52777828265636,106.11282004836302)" font-size="5.656854249492381">fixed (2)</text><text y="0.32em" transform="translate(24.72942424931232,115.47110840253386)" font-size="16">for (16)</text><text y="0.32em" transform="translate(176.73209780540276,369.6436330224807)" font-size="5.656854249492381">forecastle (2)</text><text y="0.32em" transform="translate(54.85773074737267,331.80006636421194)" font-size="13.2664991614216">from (11)</text><text y="0.32em" transform="translate(602.5822012336952,80.85699768620646)" font-size="9.797958971132712">get (6)</text><text y="0.32em" transform="translate(615.990041418685,249.83641654778356)" font-size="5.656854249492381">glory (2)</text><text y="0.32em" transform="translate(106.01070695775056,155.07202419309067)" font-size="13.856406460551018">go (12)</text><text y="0.32em" transform="translate(171.29956562326254,63.743789014658724)" font-size="8">going (4)</text><text y="0.32em" transform="translate(52.01697008504472,314.8445746307425)" font-size="6.928203230275509">grand (3)</text><text y="0.32em" transform="translate(121.08389252825627,283.65441257361397)" font-size="6.928203230275509">great (3)</text><text y="0.32em" transform="translate(485.1419139318015,88.93091571001511)" font-size="5.656854249492381">grow (2)</text><text y="0.32em" transform="translate(382.79019533136045,267.5796138069311)" font-size="6.928203230275509">hand (3)</text><text y="0.32em" transform="translate(364.07093036243043,226.36274853178926)" font-size="11.313708498984761">have (8)</text><text y="0.32em" transform="translate(38.012194133232185,244.5224873794793)" font-size="5.656854249492381">having (2)</text><text y="0.32em" transform="translate(566.1841926016343,273.10486952250926)" font-size="12.649110640673518">he (10)</text><text y="0.32em" transform="translate(589.0024975790952,344.5843598169909)" font-size="8">head (4)</text><text y="0.32em" transform="translate(201.06148604163596,227.92021668009843)" font-size="5.656854249492381">healthy (2)</text><text y="0.32em" transform="translate(49.76452114338791,209.75323655827253)" font-size="8.94427190999916">here (5)</text><text y="0.32em" transform="translate(139.83183435830549,32.9516779350556)" font-size="8">high (4)</text><text y="0.32em" transform="translate(609.4946551585165,108.11580694691747)" font-size="5.656854249492381">hill (2)</text><text y="0.32em" transform="translate(600.346301023833,338.2183492423837)" font-size="6.928203230275509">him (3)</text><text y="0.32em" transform="translate(256.30818306032813,68.45435245903136)" font-size="5.656854249492381">himself (2)</text><text y="0.32em" transform="translate(377.8657195062053,135.02414963269823)" font-size="12.649110640673518">his (10)</text><text y="0.32em" transform="translate(91.73049343510698,252.81612930157877)" font-size="6.928203230275509">how (3)</text><text y="0.32em" transform="translate(529.8720935824643,46.908527517321524)" font-size="5.656854249492381">however (2)</text><text y="0.32em" transform="translate(22.432918115831686,58.13024775117492)" font-size="5.656854249492381">hunks (2)</text><text y="0.32em" transform="translate(600.0676087314038,329.48828628680803)" font-size="26.229754097208">i (43)</text><text y="0.32em" transform="translate(523.4581778511179,164.14254751707378)" font-size="12">if (9)</text><text y="0.32em" transform="translate(301.5666254762325,254.45697390223333)" font-size="6.928203230275509">image (3)</text><text y="0.32em" transform="translate(384.93417156796977,315.96389332769024)" font-size="27.712812921102035">in (48)</text><text y="0.32em" transform="translate(27.140148064895367,359.3195493448675)" font-size="12">into (9)</text><text y="0.32em" transform="translate(109.14480909995396,134.30471162822948)" font-size="23.323807579381203">is (34)</text><text y="0.32em" transform="translate(342.5236463935798,379)" font-size="5.656854249492381">ishmael (2)</text><text y="0.32em" transform="translate(567.8062056380398,36.37010234313097)" font-size="22.978250586152114">it (33)</text><text y="0.32em" transform="translate(180.35186948768614,364.87494986147414)" font-size="5.656854249492381">its (2)</text><text y="0.32em" transform="translate(497.82351870297606,65.36860647526721)" font-size="5.656854249492381">just (2)</text><text y="0.32em" transform="translate(607.9015021190751,145.29655521585264)" font-size="9.797958971132712">land (6)</text><text y="0.32em" transform="translate(112.8546718569081,360.79703679673173)" font-size="5.656854249492381">lead (2)</text><text y="0.32em" transform="translate(264.8655145597923,71.28420646394983)" font-size="5.656854249492381">leaders (2)</text><text y="0.32em" transform="translate(292.417952533966,201.61371096199676)" font-size="5.656854249492381">leaves (2)</text><text y="0.32em" transform="translate(200.97757146135484,98.690556119624)" font-size="5.656854249492381">let (2)</text><text y="0.32em" transform="translate(362.90058492426033,282.9429343067725)" font-size="9.797958971132712">like (6)</text><text y="0.32em" transform="translate(520.2091267435416,167.71087575080244)" font-size="8">little (4)</text><text y="0.32em" transform="translate(413.5491413122857,341.85362151635235)" font-size="5.656854249492381">long (2)</text><text y="0.32em" transform="translate(217.084074714403,67.86639461407697)" font-size="5.656854249492381">look (2)</text><text y="0.32em" transform="translate(515.6701584524596,116.41421536109472)" font-size="5.656854249492381">magic (2)</text><text y="0.32em" transform="translate(51.60112850647299,341.18068029062067)" font-size="5.656854249492381">make (2)</text><text y="0.32em" transform="translate(525.7687106781866,316.67158078844324)" font-size="6.928203230275509">man (3)</text><text y="0.32em" transform="translate(519.6473247764915,70.45907808112815)" font-size="5.656854249492381">mast (2)</text><text y="0.32em" transform="translate(418.01481550196934,144.4229952719096)" font-size="6.928203230275509">may (3)</text><text y="0.32em" transform="translate(183.0439291644197,27.11063937533935)" font-size="20">me (25)</text><text y="0.32em" transform="translate(451.76450102137983,180.62237611819862)" font-size="5.656854249492381">meadow (2)</text><text y="0.32em" transform="translate(105.44696568291192,360.6798510025151)" font-size="5.656854249492381">mean (2)</text><text y="0.32em" transform="translate(582.2076966736016,55.310526553168316)" font-size="5.656854249492381">meaning (2)</text><text y="0.32em" transform="translate(43.36118178710821,63.09219675353154)" font-size="8">men (4)</text><text y="0.32em" transform="translate(492.6091906398343,218.29311590182309)" font-size="5.656854249492381">metaphysical (2)</text><text y="0.32em" transform="translate(299.09069311881296,305.1320649234597)" font-size="6.928203230275509">miles (3)</text><text y="0.32em" transform="translate(547.6784337852351,357.15735009874254)" font-size="8">money (4)</text><text y="0.32em" transform="translate(329.2332279279054,94.36315189451184)" font-size="9.797958971132712">more (6)</text><text y="0.32em" transform="translate(352.3465298884758,73.8931675068927)" font-size="8.94427190999916">most (5)</text><text y="0.32em" transform="translate(610.4543235289277,246.04666892571)" font-size="5.656854249492381">motives (2)</text><text y="0.32em" transform="translate(35.587241586580745,368.13407721450494)" font-size="8">much (4)</text><text y="0.32em" transform="translate(497.157539602531,329.24032748548143)" font-size="8">must (4)</text><text y="0.32em" transform="translate(449.9459895239472,84.86894859684958)" font-size="14.966629547095765">my (14)</text><text y="0.32em" transform="translate(330.65980603530033,107.75868878252228)" font-size="6.928203230275509">myself (3)</text><text y="0.32em" transform="translate(40.65045009487372,129.62218066032742)" font-size="8.94427190999916">never (5)</text><text y="0.32em" transform="translate(411.99127496584543,299.8551181501913)" font-size="9.797958971132712">no (6)</text><text y="0.32em" transform="translate(124.10445352689133,171.0876677340678)" font-size="13.2664991614216">not (11)</text><text y="0.32em" transform="translate(449.45540359850213,31.232142688379255)" font-size="6.928203230275509">nothing (3)</text><text y="0.32em" transform="translate(26.715471021880145,366.58084402096864)" font-size="8.94427190999916">now (5)</text><text y="0.32em" transform="translate(363.7445244618246,32.35394479732556)" font-size="5.656854249492381">ocean (2)</text><text y="0.32em" transform="translate(106.03107283980462,301.18896342661475)" font-size="36">of (81)</text><text y="0.32em" transform="translate(464.34643634916404,105.38712785062059)" font-size="6.928203230275509">off (3)</text><text y="0.32em" transform="translate(525.05609928312,143.88256837419084)" font-size="5.656854249492381">officer (2)</text><text y="0.32em" transform="translate(101.59759317558817,291.61468793838117)" font-size="9.797958971132712">old (6)</text><text y="0.32em" transform="translate(562.5142795011204,129.26694030395217)" font-size="13.856406460551018">on (12)</text><text y="0.32em" transform="translate(414.2955699732187,279.8057165092629)" font-size="5.656854249492381">once (2)</text><text y="0.32em" transform="translate(282.4192944710719,291.8226573550223)" font-size="12.649110640673518">one (10)</text><text y="0.32em" transform="translate(612.5072769102486,314.0364880343671)" font-size="12.649110640673518">or (10)</text><text y="0.32em" transform="translate(57.86847773690063,48.87376982114553)" font-size="5.656854249492381">order (2)</text><text y="0.32em" transform="translate(47.426927895054206,146.4589829790767)" font-size="8.94427190999916">other (5)</text><text y="0.32em" transform="translate(577.9251712099274,284.5297637748146)" font-size="5.656854249492381">others (2)</text><text y="0.32em" transform="translate(550.6441797612799,342.5645230015407)" font-size="5.656854249492381">ourselves (2)</text><text y="0.32em" transform="translate(208.3420350340055,170.03202057041548)" font-size="6.928203230275509">out (3)</text><text y="0.32em" transform="translate(426.2535448160043,63.8180076757949)" font-size="5.656854249492381">over (2)</text><text y="0.32em" transform="translate(302.37935505351413,377.29940479153237)" font-size="5.656854249492381">own (2)</text><text y="0.32em" transform="translate(187.8268258601627,25.01920430058334)" font-size="5.656854249492381">paid (2)</text><text y="0.32em" transform="translate(294.633173094627,230.8436974957935)" font-size="10.583005244258363">part (7)</text><text y="0.32em" transform="translate(540.3683336961077,131.78081993032532)" font-size="5.656854249492381">particular (2)</text><text y="0.32em" transform="translate(53.46125706460951,235.86117631099566)" font-size="6.928203230275509">parts (3)</text><text y="0.32em" transform="translate(122.93306611857008,67.50422391278066)" font-size="8">passenger (4)</text><text y="0.32em" transform="translate(214.2623416983451,195.5757705072698)" font-size="6.928203230275509">passengers (3)</text><text y="0.32em" transform="translate(375.8413396570636,218.2168101356638)" font-size="5.656854249492381">pay (2)</text><text y="0.32em" transform="translate(278.62360960879784,193.36314735677402)" font-size="6.928203230275509">paying (3)</text><text y="0.32em" transform="translate(295.17913045080275,138.0902013382128)" font-size="5.656854249492381">perhaps (2)</text><text y="0.32em" transform="translate(462.02530474509024,34.88000411843531)" font-size="5.656854249492381">phantom (2)</text><text y="0.32em" transform="translate(217.13812191056098,348.5699642734187)" font-size="5.656854249492381">plunged (2)</text><text y="0.32em" transform="translate(156.72137285948483,376.9308696348103)" font-size="5.656854249492381">point (2)</text><text y="0.32em" transform="translate(607.6104664987023,224.6019236281331)" font-size="5.656854249492381">previous (2)</text><text y="0.32em" transform="translate(62.67699118900285,101.00836190634348)" font-size="6.928203230275509">purse (3)</text><text y="0.32em" transform="translate(79.21307218907461,153.17857671012945)" font-size="5.656854249492381">requires (2)</text><text y="0.32em" transform="translate(378.7361353344956,225.80810267601976)" font-size="5.656854249492381">respectfully (2)</text><text y="0.32em" transform="translate(223.07340371054778,185.020338485324)" font-size="5.656854249492381">reveries (2)</text><text y="0.32em" transform="translate(536.2880912939438,211.59677860357857)" font-size="6.928203230275509">right (3)</text><text y="0.32em" transform="translate(474.45417686986144,40.46917677600468)" font-size="5.656854249492381">robust (2)</text><text y="0.32em" transform="translate(74.01936426998569,87.44283538324703)" font-size="5.656854249492381">round (2)</text><text y="0.32em" transform="translate(523.5564026495175,340.07379934876565)" font-size="5.656854249492381">sail (2)</text><text y="0.32em" transform="translate(356.595714687519,215.34160152044166)" font-size="8.94427190999916">sailor (5)</text><text y="0.32em" transform="translate(253.2708523907828,116.51559680178703)" font-size="8.94427190999916">same (5)</text><text y="0.32em" transform="translate(267.16104032845186,198.7195512488363)" font-size="6.928203230275509">say (3)</text><text y="0.32em" transform="translate(333.10493950800344,259.27768203103443)" font-size="5.656854249492381">schoolmaster (2)</text><text y="0.32em" transform="translate(412.4155577347482,330.3429728022771)" font-size="5.656854249492381">scores (2)</text><text y="0.32em" transform="translate(367.17765201567664,192.82828911666854)" font-size="14.422205101855956">sea (13)</text><text y="0.32em" transform="translate(267.14984804009623,219.10468338050208)" font-size="5.656854249492381">seas (2)</text><text y="0.32em" transform="translate(379.37692401546815,343.9324823488987)" font-size="9.797958971132712">see (6)</text><text y="0.32em" transform="translate(251.20270293469906,175.70894321686575)" font-size="6.928203230275509">set (3)</text><text y="0.32em" transform="translate(522.3178666915104,254.6672458372662)" font-size="5.656854249492381">shepherds (2)</text><text y="0.32em" transform="translate(201.58867981438837,177.60700277462024)" font-size="6.928203230275509">ship (3)</text><text y="0.32em" transform="translate(285.5387351047631,127.51362956487988)" font-size="6.928203230275509">ships (3)</text><text y="0.32em" transform="translate(133.65508052618264,310.1590126266576)" font-size="6.928203230275509">should (3)</text><text y="0.32em" transform="translate(284.8285454992295,262.7681101380464)" font-size="5.656854249492381">sight (2)</text><text y="0.32em" transform="translate(297.581777387575,111.58345653549509)" font-size="5.656854249492381">sleep (2)</text><text y="0.32em" transform="translate(303.2803372063998,233.3333476845157)" font-size="8">so (4)</text><text y="0.32em" transform="translate(27.271145778804453,42.20742583914899)" font-size="13.2664991614216">some (11)</text><text y="0.32em" transform="translate(157.1435646874795,52.74719309476306)" font-size="6.928203230275509">something (3)</text><text y="0.32em" transform="translate(194.06924201338302,67.32289964683854)" font-size="6.928203230275509">sort (3)</text><text y="0.32em" transform="translate(439.15650775906573,297.16004362319734)" font-size="6.928203230275509">soul (3)</text><text y="0.32em" transform="translate(138.23147293519546,159.67341595787767)" font-size="5.656854249492381">spar (2)</text><text y="0.32em" transform="translate(96.53947732791168,165.8554842945014)" font-size="8.94427190999916">stand (5)</text><text y="0.32em" transform="translate(299.314089587053,39.48428900792904)" font-size="6.928203230275509">still (3)</text><text y="0.32em" transform="translate(53.537255499986536,365.0854811974364)" font-size="5.656854249492381">stream (2)</text><text y="0.32em" transform="translate(70.63196537257238,291.9422746978087)" font-size="5.656854249492381">streets (2)</text><text y="0.32em" transform="translate(311.1352752548529,128.22531922337012)" font-size="5.656854249492381">strong (2)</text><text y="0.32em" transform="translate(256.8278618228826,114.80409192419265)" font-size="8.94427190999916">such (5)</text><text y="0.32em" transform="translate(398.07812084114425,327.14139282487605)" font-size="9.797958971132712">take (6)</text><text y="0.32em" transform="translate(44.02533806984326,328.1056829358841)" font-size="8">tell (4)</text><text y="0.32em" transform="translate(387.3733948493237,30.95790471285889)" font-size="8">than (4)</text><text y="0.32em" transform="translate(60.842296951441185,27.67977950939671)" font-size="22.271057451320086">that (31)</text><text y="0.32em" transform="translate(358.89689694557745,24.07157399642308)" font-size="44.54211490264017">the (124)</text><text y="0.32em" transform="translate(228.2173503442953,95.7849604785391)" font-size="8">their (4)</text><text y="0.32em" transform="translate(255.51079307022604,162.62893270456806)" font-size="8.94427190999916">them (5)</text><text y="0.32em" transform="translate(276.11450908167154,35.91347032419216)" font-size="5.656854249492381">themselves (2)</text><text y="0.32em" transform="translate(230.08972688212577,39.221471376168765)" font-size="8.94427190999916">then (5)</text><text y="0.32em" transform="translate(224.44710120271722,257.37509770332144)" font-size="16">there (16)</text><text y="0.32em" transform="translate(243.54620223502542,250.8077016863733)" font-size="8">these (4)</text><text y="0.32em" transform="translate(340.40235968006584,44.172131746089924)" font-size="13.856406460551018">they (12)</text><text y="0.32em" transform="translate(402.7968084015193,254.24943413932806)" font-size="5.656854249492381">thing (2)</text><text y="0.32em" transform="translate(594.2989745297506,323.94340315407254)" font-size="8">things (4)</text><text y="0.32em" transform="translate(285.140519791214,88.03726962149604)" font-size="5.656854249492381">think (2)</text><text y="0.32em" transform="translate(185.8761990721284,147.1250122927699)" font-size="5.656854249492381">thinks (2)</text><text y="0.32em" transform="translate(271.82493456811426,186.32579377114058)" font-size="16.492422502470642">this (17)</text><text y="0.32em" transform="translate(449.5414137400909,91.57737878771087)" font-size="8">those (4)</text><text y="0.32em" transform="translate(413.2971391090803,82.42082702229406)" font-size="10.583005244258363">though (7)</text><text y="0.32em" transform="translate(316.8922845307188,262.795200778003)" font-size="5.656854249492381">thousand (2)</text><text y="0.32em" transform="translate(567.3970389969829,163.01940667813722)" font-size="5.656854249492381">thousands (2)</text><text y="0.32em" transform="translate(421.2607294981231,109.21330211632012)" font-size="5.656854249492381">thump (2)</text><text y="0.32em" transform="translate(39.55656905239549,139.95680417641415)" font-size="9.797958971132712">time (6)</text><text y="0.32em" transform="translate(523.06999804584,316.5006033184225)" font-size="29.120439557122072">to (53)</text><text y="0.32em" transform="translate(186.01856576968083,187.07111883211925)" font-size="8">two (4)</text><text y="0.32em" transform="translate(25.081736591340864,230.28794952121729)" font-size="5.656854249492381">under (2)</text><text y="0.32em" transform="translate(349.4766357855255,296.856843818781)" font-size="5.656854249492381">unless (2)</text><text y="0.32em" transform="translate(389.37126102450503,56.34291200550517)" font-size="8">up (4)</text><text y="0.32em" transform="translate(107.63925561961764,270.8286811629363)" font-size="12">upon (9)</text><text y="0.32em" transform="translate(23.92258946204734,281.6247811108613)" font-size="9.797958971132712">voyage (6)</text><text y="0.32em" transform="translate(367.273186341297,297.1668537354525)" font-size="5.656854249492381">warehouses (2)</text><text y="0.32em" transform="translate(530.6964114023597,350.1680377998348)" font-size="11.313708498984761">was (8)</text><text y="0.32em" transform="translate(112.51729166680784,191.47609323534985)" font-size="11.313708498984761">water (8)</text><text y="0.32em" transform="translate(601.4414418953116,232.56587040418123)" font-size="9.797958971132712">way (6)</text><text y="0.32em" transform="translate(461.5464486145058,107.59806682214936)" font-size="6.928203230275509">we (3)</text><text y="0.32em" transform="translate(280.3914634633362,256.51380434002056)" font-size="5.656854249492381">well (2)</text><text y="0.32em" transform="translate(576.4692273818133,278.35109630502694)" font-size="10.583005244258363">were (7)</text><text y="0.32em" transform="translate(116.87781969925642,236.19815889717518)" font-size="6.928203230275509">whale (3)</text><text y="0.32em" transform="translate(289.8250322147597,178.43567261690058)" font-size="8.94427190999916">whaling (5)</text><text y="0.32em" transform="translate(410.18529357251623,125.53078989077146)" font-size="12">what (9)</text><text y="0.32em" transform="translate(548.8295352584194,30.30353017567787)" font-size="8.94427190999916">when (5)</text><text y="0.32em" transform="translate(255.44206574394465,93.25105947403637)" font-size="8.94427190999916">whenever (5)</text><text y="0.32em" transform="translate(133.7772231739523,309.63699573798755)" font-size="5.656854249492381">where (2)</text><text y="0.32em" transform="translate(67.62099366360172,336.0751984533313)" font-size="8">which (4)</text><text y="0.32em" transform="translate(475.82282048477,105.98476011021145)" font-size="8.94427190999916">who (5)</text><text y="0.32em" transform="translate(310.8272242423102,161.05639768560945)" font-size="10.583005244258363">why (7)</text><text y="0.32em" transform="translate(543.9104231573331,114.78378701481466)" font-size="5.656854249492381">wild (2)</text><text y="0.32em" transform="translate(217.25067596872682,275.9732359355035)" font-size="9.797958971132712">will (6)</text><text y="0.32em" transform="translate(455.0368201821059,224.21359783945704)" font-size="6.928203230275509">winds (3)</text><text y="0.32em" transform="translate(533.1449639708826,146.21726739508014)" font-size="14.422205101855956">with (13)</text><text y="0.32em" transform="translate(33.93997372513037,239.06876348104373)" font-size="6.928203230275509">without (3)</text><text y="0.32em" transform="translate(596.5095410877477,264.08900220895157)" font-size="8">world (4)</text><text y="0.32em" transform="translate(183.39415784617015,341.1686472210865)" font-size="8">would (4)</text><text y="0.32em" transform="translate(529.5725637071697,212.10064111376698)" font-size="8">yet (4)</text><text y="0.32em" transform="translate(167.99600023911637,42.949107054384825)" font-size="5.656854249492381">yonder (2)</text><text y="0.32em" transform="translate(121.85589174155089,193.1032992623974)" font-size="19.183326093250876">you (23)</text><text y="0.32em" transform="translate(448.67821791647475,241.75555100295875)" font-size="9.797958971132712">your (6)</text></g> </svg> \ No newline at end of file diff --git a/test/output/wordLengthMobyDick.svg b/test/output/wordLengthMobyDick.svg index 0f252ca385..7979ba9048 100644 --- a/test/output/wordLengthMobyDick.svg +++ b/test/output/wordLengthMobyDick.svg @@ -13,7 +13,7 @@ white-space: pre; } </style> - <g transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> + <g aria-label="y-axis" transform="translate(40,0)" fill="none" text-anchor="end" font-variant="tabular-nums"> <g class="tick" opacity="1" transform="translate(0,370.5)"> <line stroke="currentColor" x2="-6"></line> <line stroke="currentColor" x2="580" stroke-opacity="0.1"></line><text fill="currentColor" x="-9" dy="0.32em">0</text> @@ -59,7 +59,7 @@ <line stroke="currentColor" x2="580" stroke-opacity="0.1"></line><text fill="currentColor" x="-9" dy="0.32em">20</text> </g><text fill="currentColor" transform="translate(-40,20)" dy="-1em" text-anchor="start">↑ Frequency (%)</text> </g> - <g transform="translate(0,370)" fill="none" text-anchor="middle"> + <g aria-label="x-axis" transform="translate(0,370)" fill="none" text-anchor="middle"> <g class="tick" opacity="1" transform="translate(63.5,0)"> <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">1</text> </g> @@ -103,7 +103,7 @@ <line stroke="currentColor" y2="6"></line><text fill="currentColor" y="9" dy="0.71em">14</text> </g><text fill="currentColor" transform="translate(640,30)" dy="-0.32em" text-anchor="end">Word length →</text> </g> - <g> + <g aria-label="bar"> <rect x="45" width="37" y="284.59694989106754" height="85.40305010893246"> <title>a diff --git a/test/plots/letter-frequency-bar.js b/test/plots/letter-frequency-bar.js index af85d6837c..cb51b05fcf 100644 --- a/test/plots/letter-frequency-bar.js +++ b/test/plots/letter-frequency-bar.js @@ -4,6 +4,8 @@ import * as d3 from "d3"; export default async function() { const alphabet = await d3.csv("data/alphabet.csv", d3.autoType); return Plot.plot({ + ariaLabel: "letter-frequency chart", + ariaDescription: "A horizontal bar chart showing the relative frequency of letters in the English language.", x: { label: "Frequency (%) →", transform: x => x * 100, @@ -13,7 +15,7 @@ export default async function() { label: null }, marks: [ - Plot.barX(alphabet, {x: "frequency", y: "letter", sort: {y: "x"}}), + Plot.barX(alphabet, {x: "frequency", y: "letter", ariaLabel: (f => d => `${d.letter} ${f(d.frequency)}`)(d3.format(".1%")), sort: {y: "x"}}), Plot.ruleX([0]) ], height: 580 From 6b167220681c4d47e500983584afc959bf26532f Mon Sep 17 00:00:00 2001 From: Mike Bostock Date: Thu, 27 Jan 2022 11:25:37 -0800 Subject: [PATCH 2/3] aria-description, not desc --- src/plot.js | 4 ++-- src/style.js | 6 +----- test/output/letterFrequencyBar.svg | 3 +-- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/plot.js b/src/plot.js index 2576e45fb2..8e7ed9e028 100644 --- a/src/plot.js +++ b/src/plot.js @@ -6,7 +6,7 @@ import {Dimensions} from "./dimensions.js"; import {Legends, exposeLegends} from "./legends.js"; import {arrayify, isOptions, keyword, range, first, second, where} from "./options.js"; import {Scales, ScaleFunctions, autoScaleRange, applyScales, exposeScales} from "./scales.js"; -import {applyDescription, applyInlineStyles, maybeClassName, styles} from "./style.js"; +import {applyInlineStyles, maybeClassName, styles} from "./style.js"; import {basic} from "./transforms/basic.js"; export function plot(options = {}) { @@ -78,7 +78,7 @@ export function plot(options = {}) { .attr("height", height) .attr("viewBox", `0 0 ${width} ${height}`) .attr("aria-label", ariaLabel) - .call(applyDescription, ariaDescription) + .attr("aria-description", ariaDescription) .call(svg => svg.append("style").text(` .${className} { display: block; diff --git a/src/style.js b/src/style.js index eaa22836a8..375dc0c100 100644 --- a/src/style.js +++ b/src/style.js @@ -170,6 +170,7 @@ export function applyGroupedChannelStyles(selection, {target}, {ariaLabel: AL, t export function applyIndirectStyles(selection, mark) { applyAttr(selection, "aria-label", mark.ariaLabel); + applyAttr(selection, "aria-description", mark.ariaDescription); applyAttr(selection, "fill", mark.fill); applyAttr(selection, "fill-opacity", mark.fillOpacity); applyAttr(selection, "stroke", mark.stroke); @@ -181,7 +182,6 @@ export function applyIndirectStyles(selection, mark) { applyAttr(selection, "stroke-dasharray", mark.strokeDasharray); applyAttr(selection, "shape-rendering", mark.shapeRendering); applyAttr(selection, "paint-order", mark.paintOrder); - applyDescription(selection, mark.ariaDescription); } export function applyDirectStyles(selection, mark) { @@ -236,10 +236,6 @@ export function maybeClassName(name) { return name; } -export function applyDescription(selection, description) { - if (description != null) selection.append("desc").text(description); -} - export function applyInlineStyles(selection, style) { if (typeof style === "string") { selection.property("style", style); diff --git a/test/output/letterFrequencyBar.svg b/test/output/letterFrequencyBar.svg index 3a01e6024c..d6696e5f03 100644 --- a/test/output/letterFrequencyBar.svg +++ b/test/output/letterFrequencyBar.svg @@ -1,5 +1,4 @@ - - A horizontal bar chart showing the relative frequency of letters in the English language. +