@cdc/chart 1.3.4 → 4.22.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +5 -5
  3. package/dist/cdcchart.js +6 -6
  4. package/examples/age-adjusted-rates.json +1486 -1218
  5. package/examples/case-rate-example-config.json +1 -1
  6. package/examples/covid-confidence-example-config.json +33 -33
  7. package/examples/covid-example-config.json +34 -34
  8. package/examples/covid-example-data-confidence.json +30 -30
  9. package/examples/covid-example-data.json +20 -20
  10. package/examples/cutoff-example-config.json +36 -34
  11. package/examples/cutoff-example-data.json +36 -36
  12. package/examples/date-exclusions-config.json +1 -1
  13. package/examples/dynamic-legends.json +125 -0
  14. package/examples/gallery/bar-chart-horizontal/horizontal-bar-chart-with-numbers-on-bar.json +192 -0
  15. package/examples/gallery/bar-chart-horizontal/horizontal-bar-chart.json +231 -0
  16. package/examples/gallery/bar-chart-horizontal/horizontal-stacked.json +240 -0
  17. package/examples/gallery/bar-chart-vertical/combo-line-chart.json +137 -0
  18. package/examples/gallery/bar-chart-vertical/vertical-bar-chart-categorical.json +80 -0
  19. package/examples/gallery/bar-chart-vertical/vertical-bar-chart-stacked.json +81 -0
  20. package/examples/gallery/bar-chart-vertical/vertical-bar-chart-with-confidence.json +68 -0
  21. package/examples/gallery/bar-chart-vertical/vertical-bar-chart.json +111 -0
  22. package/examples/gallery/lollipop/lollipop-style-horizontal.json +216 -0
  23. package/examples/gallery/paired-bar/paired-bar-chart.json +196 -0
  24. package/examples/horizontal-chart.json +36 -33
  25. package/examples/horizontal-stacked-bar-chart.json +34 -34
  26. package/examples/line-chart.json +75 -75
  27. package/examples/paired-bar-data.json +16 -14
  28. package/examples/paired-bar-example.json +48 -46
  29. package/examples/paired-bar-formatted.json +36 -36
  30. package/examples/planet-chart-horizontal-example-config.json +33 -33
  31. package/examples/planet-combo-example-config.json +34 -29
  32. package/examples/planet-example-config.json +35 -33
  33. package/examples/planet-example-data.json +56 -56
  34. package/examples/planet-pie-example-config.json +28 -26
  35. package/examples/private/filters.json +170 -0
  36. package/examples/private/line-test-data.json +22 -0
  37. package/examples/private/line-test-two.json +210 -0
  38. package/examples/private/line-test.json +102 -0
  39. package/examples/private/new.json +48800 -0
  40. package/examples/private/shawn.json +1106 -0
  41. package/examples/private/test.json +10123 -10123
  42. package/examples/private/yaxis-test.json +133 -0
  43. package/examples/private/yaxis-testing.csv +27 -0
  44. package/examples/private/yaxis.json +28 -0
  45. package/examples/stacked-vertical-bar-example.json +228 -0
  46. package/examples/temp-example-config.json +61 -54
  47. package/examples/temp-example-data.json +1 -1
  48. package/package.json +2 -2
  49. package/src/CdcChart.tsx +370 -458
  50. package/src/components/BarChart.tsx +449 -441
  51. package/src/components/DataTable.tsx +164 -180
  52. package/src/components/EditorPanel.js +1066 -663
  53. package/src/components/Legend.js +284 -0
  54. package/src/components/LineChart.tsx +114 -63
  55. package/src/components/LinearChart.tsx +394 -358
  56. package/src/components/PairedBarChart.tsx +216 -135
  57. package/src/components/PieChart.tsx +106 -135
  58. package/src/components/SparkLine.js +184 -205
  59. package/src/components/useIntersectionObserver.tsx +27 -0
  60. package/src/context.tsx +3 -3
  61. package/src/data/initial-state.js +44 -7
  62. package/src/hooks/useActiveElement.js +13 -13
  63. package/src/hooks/useChartClasses.js +41 -0
  64. package/src/hooks/useColorPalette.ts +56 -63
  65. package/src/hooks/useLegendClasses.js +28 -0
  66. package/src/hooks/useReduceData.ts +69 -37
  67. package/src/hooks/useRightAxis.js +25 -0
  68. package/src/hooks/useTopAxis.js +6 -0
  69. package/src/index.html +54 -55
  70. package/src/index.tsx +13 -16
  71. package/src/scss/DataTable.scss +5 -4
  72. package/src/scss/editor-panel.scss +103 -71
  73. package/src/scss/main.scss +277 -38
  74. package/src/scss/variables.scss +1 -1
  75. package/src/components/BarStackVertical.js +0 -0
@@ -0,0 +1,196 @@
1
+ {
2
+ "type": "chart",
3
+ "title": "Example Paired Bar Chart",
4
+ "theme": "theme-slate",
5
+ "fontSize": "small",
6
+ "lineDatapointStyle": "hover",
7
+ "barHasBorder": "false",
8
+ "isLollipopChart": false,
9
+ "lollipopShape": "circle",
10
+ "lollipopColorStyle": "two-tone",
11
+ "visualizationSubType": null,
12
+ "padding": {
13
+ "left": 5,
14
+ "right": 5
15
+ },
16
+ "yAxis": {
17
+ "hideAxis": true,
18
+ "hideLabel": false,
19
+ "hideTicks": false,
20
+ "size": "75",
21
+ "gridLines": false,
22
+ "label": "Value Axis",
23
+ "numTicks": "6"
24
+ },
25
+ "barThickness": 0.35,
26
+ "height": "400",
27
+ "xAxis": {
28
+ "type": "categorical",
29
+ "hideAxis": false,
30
+ "hideLabel": false,
31
+ "hideTicks": false,
32
+ "size": "56",
33
+ "tickRotation": "0",
34
+ "max": "15000",
35
+ "dataKey": "Age Group",
36
+ "label": "Age Group"
37
+ },
38
+ "table": {
39
+ "label": "Data Table",
40
+ "expanded": false,
41
+ "show": true,
42
+ "indexLabel": "Region"
43
+ },
44
+ "orientation": "horizontal",
45
+ "legend": {
46
+ "behavior": "isolate",
47
+ "position": "right",
48
+ "reverseLabelOrder": false,
49
+ "hide": false,
50
+ "label": "Region "
51
+ },
52
+ "exclusions": {
53
+ "active": false,
54
+ "keys": []
55
+ },
56
+ "palette": "qualitative-soft",
57
+ "isPaletteReversed": false,
58
+ "labels": false,
59
+ "dataFormat": {
60
+ "commas": true,
61
+ "suffix": " per 100k"
62
+ },
63
+ "confidenceKeys": {},
64
+ "data": [
65
+ {
66
+ "Region": "West Coast",
67
+ "Age Group": "<15",
68
+ "Cases Per 100K": "7428"
69
+ },
70
+ {
71
+ "Region": "West Coast",
72
+ "Age Group": "15-24",
73
+ "Cases Per 100K": "5176"
74
+ },
75
+ {
76
+ "Region": "West Coast",
77
+ "Age Group": "25-34",
78
+ "Cases Per 100K": "5624"
79
+ },
80
+ {
81
+ "Region": "West Coast",
82
+ "Age Group": "35-44",
83
+ "Cases Per 100K": "10756"
84
+ },
85
+ {
86
+ "Region": "West Coast",
87
+ "Age Group": "45-54",
88
+ "Cases Per 100K": "8256"
89
+ },
90
+ {
91
+ "Region": "West Coast",
92
+ "Age Group": "55-64",
93
+ "Cases Per 100K": "1235"
94
+ },
95
+ {
96
+ "Region": "West Coast",
97
+ "Age Group": "65+",
98
+ "Cases Per 100K": "730"
99
+ },
100
+ {
101
+ "Region": "East Coast",
102
+ "Age Group": "<15",
103
+ "Cases Per 100K": "5714"
104
+ },
105
+ {
106
+ "Region": "East Coast",
107
+ "Age Group": "15-24",
108
+ "Cases Per 100K": "3588"
109
+ },
110
+ {
111
+ "Region": "East Coast",
112
+ "Age Group": "25-34",
113
+ "Cases Per 100K": "3410"
114
+ },
115
+ {
116
+ "Region": "East Coast",
117
+ "Age Group": "35-44",
118
+ "Cases Per 100K": "7478"
119
+ },
120
+ {
121
+ "Region": "East Coast",
122
+ "Age Group": "45-54",
123
+ "Cases Per 100K": "5633"
124
+ },
125
+ {
126
+ "Region": "East Coast",
127
+ "Age Group": "55-64",
128
+ "Cases Per 100K": "810"
129
+ },
130
+ {
131
+ "Region": "East Coast",
132
+ "Age Group": "65+",
133
+ "Cases Per 100K": "402"
134
+ }
135
+ ],
136
+ "dataFileName": "Paired-Bar-Chart-Example-Data.csv",
137
+ "dataFileSourceType": "file",
138
+ "dataDescription": {
139
+ "horizontal": false,
140
+ "series": true,
141
+ "singleRow": false,
142
+ "seriesKey": "Region",
143
+ "xKey": "Age Group",
144
+ "valueKey": "Cases Per 100K"
145
+ },
146
+ "formattedData": [
147
+ {
148
+ "Age Group": "<15",
149
+ "West Coast": "7428",
150
+ "East Coast": "5714"
151
+ },
152
+ {
153
+ "Age Group": "15-24",
154
+ "West Coast": "5176",
155
+ "East Coast": "3588"
156
+ },
157
+ {
158
+ "Age Group": "25-34",
159
+ "West Coast": "5624",
160
+ "East Coast": "3410"
161
+ },
162
+ {
163
+ "Age Group": "35-44",
164
+ "West Coast": "10756",
165
+ "East Coast": "7478"
166
+ },
167
+ {
168
+ "Age Group": "45-54",
169
+ "West Coast": "8256",
170
+ "East Coast": "5633"
171
+ },
172
+ {
173
+ "Age Group": "55-64",
174
+ "West Coast": "1235",
175
+ "East Coast": "810"
176
+ },
177
+ {
178
+ "Age Group": "65+",
179
+ "West Coast": "730",
180
+ "East Coast": "402"
181
+ }
182
+ ],
183
+ "visualizationType": "Paired Bar",
184
+ "series": [
185
+ {
186
+ "dataKey": "West Coast",
187
+ "type": "Bar"
188
+ },
189
+ {
190
+ "dataKey": "East Coast",
191
+ "type": "Bar"
192
+ }
193
+ ],
194
+ "filters": [],
195
+ "barHeight": "23"
196
+ }
@@ -1,35 +1,38 @@
1
1
  {
2
- "title": "Planet Radius (Combo Example)",
3
- "dataUrl": "/examples/planet-example-data.json",
4
- "visualizationType": "Bar",
5
- "visualizationSubType": "horizontal",
6
- "isLollipopChart": false,
7
- "barHasBorder": "true",
8
- "series": [{"dataKey":"Radius"}, {"dataKey": "Diameter"}],
9
- "fontSize": "small",
10
- "dataFormat": {
11
- "roundTo": 1,
12
- "commas": false,
13
- "prefix": "",
14
- "suffix": "km"
15
- },
16
- "padding": {
17
- "left": 0,
18
- "right": 0
19
- },
20
- "yAxis": {
21
- "label": "Measurement (1000km)",
22
- "displayNumbersOnBar": false,
23
- "labelPlacement": "On Date/Category Axis"
24
- },
25
- "xAxis": {
26
- "label": "Planet",
27
- "dataKey": "name",
28
- "size": 75
29
- },
30
- "table": {
31
- "label": "Data Table",
32
- "expanded": false
33
- },
34
- "lollipopShape": "circle"
2
+ "title": "Planet Radius (Combo Example)",
3
+ "dataUrl": "/examples/planet-example-data.json",
4
+ "animate": true,
5
+ "animateReplay": true,
6
+
7
+ "visualizationType": "Bar",
8
+ "visualizationSubType": "horizontal",
9
+ "isLollipopChart": false,
10
+ "barHasBorder": "true",
11
+ "series": [{ "dataKey": "Radius" }, { "dataKey": "Diameter" }],
12
+ "fontSize": "small",
13
+ "dataFormat": {
14
+ "roundTo": 1,
15
+ "commas": false,
16
+ "prefix": "",
17
+ "suffix": "km"
18
+ },
19
+ "padding": {
20
+ "left": 0,
21
+ "right": 0
22
+ },
23
+ "yAxis": {
24
+ "label": "Measurement (1000km)",
25
+ "displayNumbersOnBar": false,
26
+ "labelPlacement": "On Date/Category Axis"
27
+ },
28
+ "xAxis": {
29
+ "label": "Planet",
30
+ "dataKey": "name",
31
+ "size": 75
32
+ },
33
+ "table": {
34
+ "label": "Data Table",
35
+ "expanded": false
36
+ },
37
+ "lollipopShape": "circle"
35
38
  }
@@ -1,36 +1,36 @@
1
1
  {
2
- "title": "Planet Radius (Bar Example)",
3
- "dataUrl": "/examples/planet-example-data.json",
4
- "visualizationType": "Bar",
5
- "visualizationSubType": "stacked",
6
- "series": [{"dataKey": "Radius"}],
7
- "fontSize": "medium",
8
- "dataCutoff": "0.5",
9
- "orientation": "horizontal",
10
- "dataFormat": {
11
- "roundTo": 1,
12
- "commas": false,
13
- "prefix": "",
14
- "suffix": "km"
15
- },
16
- "padding": {
17
- "left": 5,
18
- "right": 5
19
- },
20
- "yAxis": {
21
- "label": "Measurement (1000km)"
22
- },
23
- "xAxis": {
24
- "label": "Planet",
25
- "dataKey": "name",
26
- "tickRotation": 30
27
- },
28
- "legend": {
29
- "hide": false
30
- },
31
- "table": {
32
- "label": "Data Table",
33
- "expanded": false
34
- },
35
- "displayNumbersOnBar": true
2
+ "title": "Planet Radius (Bar Example)",
3
+ "dataUrl": "/examples/planet-example-data.json",
4
+ "visualizationType": "Bar",
5
+ "visualizationSubType": "stacked",
6
+ "series": [{ "dataKey": "Radius" }],
7
+ "fontSize": "medium",
8
+ "dataCutoff": "0.5",
9
+ "orientation": "horizontal",
10
+ "dataFormat": {
11
+ "roundTo": 1,
12
+ "commas": false,
13
+ "prefix": "",
14
+ "suffix": "km"
15
+ },
16
+ "padding": {
17
+ "left": 5,
18
+ "right": 5
19
+ },
20
+ "yAxis": {
21
+ "label": "Measurement (1000km)"
22
+ },
23
+ "xAxis": {
24
+ "label": "Planet",
25
+ "dataKey": "name",
26
+ "tickRotation": 30
27
+ },
28
+ "legend": {
29
+ "hide": false
30
+ },
31
+ "table": {
32
+ "label": "Data Table",
33
+ "expanded": false
34
+ },
35
+ "displayNumbersOnBar": true
36
36
  }
@@ -1,76 +1,76 @@
1
1
  {
2
- "type": "chart",
3
- "title": "Example Spark Line",
4
- "theme": "theme-blue",
5
- "fontSize": "medium",
6
- "height": "375",
7
- "compact": true,
8
- "padding": {
9
- "left": 5,
10
- "right": 5
11
- },
12
- "yAxis": {
13
- "size": "75",
14
- "gridLines": false,
15
- "label": "Y-Axis Example Label",
16
- "numTicks": "9"
17
- },
18
- "barThickness": 0.35,
19
- "xAxis": {
20
- "size": "77",
21
- "tickRotation": "25",
22
- "dataKey": "Date",
23
- "label": "X-Axis Example Label",
24
- "type": "date",
25
- "dateParseFormat": "%d/%m/%Y",
26
- "dateDisplayFormat": "%d/%m/%Y"
27
- },
28
- "table": {
29
- "label": "Data Table",
30
- "expanded": true,
31
- "download": true
32
- },
33
- "legend": {
34
- "behavior": "isolate",
35
- "position": "right",
36
- "label": "Type of Data"
37
- },
38
- "palette": "qualitative-bold",
39
- "labels": false,
40
- "dataFormat": {},
41
- "confidenceKeys": {},
42
- "data": [
43
- {
44
- "Date": "1/15/2016",
45
- "Data 1": "0"
46
- },
47
- {
48
- "Date": "2/15/2016",
49
- "Data 1": "25"
50
- },
51
- {
52
- "Date": "3/15/2016",
53
- "Data 1": "50"
54
- },
55
- {
56
- "Date": "4/15/2016",
57
- "Data 1": "75"
58
- },
59
- {
60
- "Date": "5/15/2016",
61
- "Data 1": "100"
62
- },
63
- {
64
- "Date": "6/15/2016",
65
- "Data 1": "50"
66
- }
67
- ],
68
- "visualizationType": "Spark Line",
69
- "series": [
70
- {
71
- "dataKey": "Data 1",
72
- "type": "Bar"
73
- }
74
- ],
75
- "description": "Lorem ipsum is placeholder text commonly used in the graphic, print, and publishing industries for previewing layouts and visual mockups."
76
- }
2
+ "type": "chart",
3
+ "title": "Example Spark Line",
4
+ "theme": "theme-blue",
5
+ "fontSize": "medium",
6
+ "height": "375",
7
+ "compact": true,
8
+ "padding": {
9
+ "left": 5,
10
+ "right": 5
11
+ },
12
+ "yAxis": {
13
+ "size": "75",
14
+ "gridLines": false,
15
+ "label": "Y-Axis Example Label",
16
+ "numTicks": "9"
17
+ },
18
+ "barThickness": 0.35,
19
+ "xAxis": {
20
+ "size": "77",
21
+ "tickRotation": "25",
22
+ "dataKey": "Date",
23
+ "label": "X-Axis Example Label",
24
+ "type": "date",
25
+ "dateParseFormat": "%d/%m/%Y",
26
+ "dateDisplayFormat": "%d/%m/%Y"
27
+ },
28
+ "table": {
29
+ "label": "Data Table",
30
+ "expanded": true,
31
+ "download": true
32
+ },
33
+ "legend": {
34
+ "behavior": "isolate",
35
+ "position": "right",
36
+ "label": "Type of Data"
37
+ },
38
+ "palette": "qualitative-bold",
39
+ "labels": false,
40
+ "dataFormat": {},
41
+ "confidenceKeys": {},
42
+ "data": [
43
+ {
44
+ "Date": "1/15/2016",
45
+ "Data 1": "0"
46
+ },
47
+ {
48
+ "Date": "2/15/2016",
49
+ "Data 1": "25"
50
+ },
51
+ {
52
+ "Date": "3/15/2016",
53
+ "Data 1": "50"
54
+ },
55
+ {
56
+ "Date": "4/15/2016",
57
+ "Data 1": "75"
58
+ },
59
+ {
60
+ "Date": "5/15/2016",
61
+ "Data 1": "100"
62
+ },
63
+ {
64
+ "Date": "6/15/2016",
65
+ "Data 1": "50"
66
+ }
67
+ ],
68
+ "visualizationType": "Spark Line",
69
+ "series": [
70
+ {
71
+ "dataKey": "Data 1",
72
+ "type": "Bar"
73
+ }
74
+ ],
75
+ "description": "Lorem ipsum is placeholder text commonly used in the graphic, print, and publishing industries for previewing layouts and visual mockups."
76
+ }
@@ -1,14 +1,16 @@
1
- [{"Sex":"Male","Age Group":"<15","Cases per 100K":"7428"},
2
- {"Sex":"Male","Age Group":"15-24","Cases per 100K":"5176"},
3
- {"Sex":"Male","Age Group":"25-34","Cases per 100K":"5624"},
4
- {"Sex":"Male","Age Group":"35-44","Cases per 100K":"10756"},
5
- {"Sex":"Male","Age Group":"45-54","Cases per 100K":"8259"},
6
- {"Sex":"Male","Age Group":"55-64","Cases per 100K":"1235"},
7
- {"Sex":"Male","Age Group":"65","Cases per 100K":"730"},
8
- {"Sex":"Female","Age Group":"<15","Cases per 100K":"5714"},
9
- {"Sex":"Female","Age Group":"15-24","Cases per 100K":"3588"},
10
- {"Sex":"Female","Age Group":"25-34","Cases per 100K":"3410"},
11
- {"Sex":"Female","Age Group":"35-44","Cases per 100K":"7478"},
12
- {"Sex":"Female","Age Group":"45-54","Cases per 100K":"5633"},
13
- {"Sex":"Female","Age Group":"55-64","Cases per 100K":"810"},
14
- {"Sex":"Female","Age Group":"65","Cases per 100K":"402"}]
1
+ [
2
+ { "Sex": "Male", "Age Group": "<15", "Cases per 100K": "7428" },
3
+ { "Sex": "Male", "Age Group": "15-24", "Cases per 100K": "5176" },
4
+ { "Sex": "Male", "Age Group": "25-34", "Cases per 100K": "5624" },
5
+ { "Sex": "Male", "Age Group": "35-44", "Cases per 100K": "10756.75" },
6
+ { "Sex": "Male", "Age Group": "45-54", "Cases per 100K": "8259" },
7
+ { "Sex": "Male", "Age Group": "55-64", "Cases per 100K": "1235" },
8
+ { "Sex": "Male", "Age Group": "65", "Cases per 100K": "730" },
9
+ { "Sex": "Female", "Age Group": "<15", "Cases per 100K": "5714" },
10
+ { "Sex": "Female", "Age Group": "15-24", "Cases per 100K": "3588" },
11
+ { "Sex": "Female", "Age Group": "25-34", "Cases per 100K": "3410" },
12
+ { "Sex": "Female", "Age Group": "35-44", "Cases per 100K": "7478" },
13
+ { "Sex": "Female", "Age Group": "45-54", "Cases per 100K": "5633" },
14
+ { "Sex": "Female", "Age Group": "55-64", "Cases per 100K": "810" },
15
+ { "Sex": "Female", "Age Group": "65", "Cases per 100K": "402" }
16
+ ]
@@ -1,48 +1,50 @@
1
1
  {
2
- "title": "Paired Bar Chart Example",
3
- "dataUrl": "/examples/paired-bar-data.json",
4
- "visualizationType": "Paired Bar",
5
- "series": [
6
- {"dataKey": "Male","type": "Paired Bar"},
7
- {"dataKey": "Female","type": "Paired Bar"}
8
- ],
9
- "dataFormat": {
10
- "roundTo": 1,
11
- "commas": false,
12
- "prefix": "",
13
- "suffix": "km"
14
- },
15
- "padding": {
16
- "left": 0,
17
- "right": 0
18
- },
19
- "yAxis": {
20
- "label": "Cases per 100K",
21
- "tickRotation": 30,
22
- "hideAxis": true
23
- },
24
- "xAxis": {
25
- "label": "Age Group",
26
- "dataKey": "Age Group",
27
- "tickRotation": 30,
28
- "hideAxis": true
29
- },
30
- "legend": {
31
- "hideAxis": false
32
- },
33
- "table": {
34
- "label": "Data Table",
35
- "expanded": false
36
- },
37
- "dataDescription": {
38
- "horizontal": false,
39
- "series": true,
40
- "seriesKey": "Sex",
41
- "singleRow": false,
42
- "xKey": "Age Group",
43
- "valueKey": "Cases per 100K"
44
- },
45
- "runtime": {
46
- "horizontal": true
47
- }
2
+ "title": "Paired Bar Chart Example",
3
+ "dataUrl": "/examples/paired-bar-data.json",
4
+ "animate": true,
5
+ "animateReplay": true,
6
+ "visualizationType": "Paired Bar",
7
+ "series": [
8
+ { "dataKey": "Male", "type": "Paired Bar" },
9
+ { "dataKey": "Female", "type": "Paired Bar" }
10
+ ],
11
+ "dataFormat": {
12
+ "roundTo": 1,
13
+ "commas": false,
14
+ "prefix": "",
15
+ "suffix": "km"
16
+ },
17
+ "padding": {
18
+ "left": 0,
19
+ "right": 0
20
+ },
21
+ "yAxis": {
22
+ "label": "Cases per 100K",
23
+ "tickRotation": 30,
24
+ "hideAxis": true
25
+ },
26
+ "xAxis": {
27
+ "label": "Age Group",
28
+ "dataKey": "Age Group",
29
+ "tickRotation": 30,
30
+ "hideAxis": true
31
+ },
32
+ "legend": {
33
+ "hideAxis": false
34
+ },
35
+ "table": {
36
+ "label": "Data Table",
37
+ "expanded": false
38
+ },
39
+ "dataDescription": {
40
+ "horizontal": false,
41
+ "series": true,
42
+ "seriesKey": "Sex",
43
+ "singleRow": false,
44
+ "xKey": "Age Group",
45
+ "valueKey": "Cases per 100K"
46
+ },
47
+ "runtime": {
48
+ "horizontal": true
49
+ }
48
50
  }