visualifyjs 2.5.3-2.dev

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 (147) hide show
  1. package/.github/workflows/static.yml.bak +51 -0
  2. package/LICENSE +674 -0
  3. package/README.md +59 -0
  4. package/config-overrides.js +31 -0
  5. package/dist/visualify.js +188 -0
  6. package/docs/.nojekyll +0 -0
  7. package/docs/docs/CLI.md +34 -0
  8. package/docs/docs/README.md +65 -0
  9. package/docs/docs/Rechart/bar.md +190 -0
  10. package/docs/docs/Rechart/funnel.md +241 -0
  11. package/docs/docs/Rechart/geo.md +0 -0
  12. package/docs/docs/Rechart/line.md +355 -0
  13. package/docs/docs/Rechart/liquidfill.md +0 -0
  14. package/docs/docs/Rechart/pie.md +225 -0
  15. package/docs/docs/Rechart/polar.md +0 -0
  16. package/docs/docs/Rechart/radar.md +253 -0
  17. package/docs/docs/Rechart/sankey.md +0 -0
  18. package/docs/docs/Rechart/scatter.md +298 -0
  19. package/docs/docs/Rechart/sunburst.md +0 -0
  20. package/docs/docs/Rechart/tree.md +0 -0
  21. package/docs/docs/Rechart/wordcloud.md +0 -0
  22. package/docs/docs/_404.md +52 -0
  23. package/docs/docs/_coverpage.md +11 -0
  24. package/docs/docs/_sidebar.md +44 -0
  25. package/docs/docs/components/dotBio.md +34 -0
  26. package/docs/docs/components/echart.md +82 -0
  27. package/docs/docs/components/html.md +34 -0
  28. package/docs/docs/components/macaron.md +145 -0
  29. package/docs/docs/components/markdown.md +0 -0
  30. package/docs/docs/components/more.md +142 -0
  31. package/docs/docs/components/plotly.md +62 -0
  32. package/docs/docs/components/scatterL.md +70 -0
  33. package/docs/docs/components/visium.md +57 -0
  34. package/docs/docs/configuration.md +121 -0
  35. package/docs/docs/deploy.md +31 -0
  36. package/docs/docs/log.md +9 -0
  37. package/docs/docs/more-pages.md +23 -0
  38. package/docs/docs/quickstart.md +124 -0
  39. package/docs/docs/rechart-attributes.md +74 -0
  40. package/docs/docs/rechart-basic-usage.md +162 -0
  41. package/docs/docs/static/_images/deploy-github-pages.png +0 -0
  42. package/docs/docs/static/logo/favicon.ico +0 -0
  43. package/docs/docs/static/logo/logo_128x128.png +0 -0
  44. package/docs/docs/static/logo/logo_192x192.png +0 -0
  45. package/docs/docs/static/logo/logo_256x256.png +0 -0
  46. package/docs/docs/static/logo/logo_512x512.png +0 -0
  47. package/docs/docs/static/logo/logo_64x64.png +0 -0
  48. package/docs/docs/theme.md +5 -0
  49. package/docs/index.html +71 -0
  50. package/docs/manifest.json +24 -0
  51. package/docs/static/css/fluff-stuff.css +170 -0
  52. package/docs/static/css/font-awesome.min.css +4 -0
  53. package/docs/static/css/visualify.css +25 -0
  54. package/docs/static/fonts/fontawesome-webfont.woff2 +0 -0
  55. package/docs/static/images/star.png +0 -0
  56. package/docs/static/js/configuration.js +448 -0
  57. package/docs/static/js/fluff.js +1 -0
  58. package/docs/static/js/visualify.js +188 -0
  59. package/docs/static/logo/favicon.ico +0 -0
  60. package/docs/static/logo/logo_128x128.png +0 -0
  61. package/docs/static/logo/logo_192x192.png +0 -0
  62. package/docs/static/logo/logo_256x256.png +0 -0
  63. package/docs/static/logo/logo_512x512.png +0 -0
  64. package/docs/static/logo/logo_64x64.png +0 -0
  65. package/package.json +84 -0
  66. package/rollup.config.mjs +76 -0
  67. package/src/_css/404.css +116 -0
  68. package/src/_css/App.css +38 -0
  69. package/src/_css/autoSuggestion.css +27 -0
  70. package/src/_css/circular-progress.css +33 -0
  71. package/src/_css/index.css +37 -0
  72. package/src/_css/modern.css +25 -0
  73. package/src/_media/404.png +0 -0
  74. package/src/_media/corner.svg +8 -0
  75. package/src/_media/download.svg +3 -0
  76. package/src/_media/icon.svg +1 -0
  77. package/src/_media/logo.svg +14 -0
  78. package/src/_test/App.test.js +15 -0
  79. package/src/_utils/reportWebVitals.js +13 -0
  80. package/src/core/appContext.js +27 -0
  81. package/src/core/components/Scatter.js +188 -0
  82. package/src/core/components/ScatterBio.js +572 -0
  83. package/src/core/components/VisiumPlot.js +165 -0
  84. package/src/core/components/browser.js +42 -0
  85. package/src/core/components/dotplot.js +413 -0
  86. package/src/core/components/html.js +29 -0
  87. package/src/core/components/list.js +178 -0
  88. package/src/core/components/macaron.js +201 -0
  89. package/src/core/components/markdown.js +56 -0
  90. package/src/core/components/parser.scatterBio.js +587 -0
  91. package/src/core/components/ratio.js +80 -0
  92. package/src/core/components/scatterL.js +173 -0
  93. package/src/core/components/searchbar.js +131 -0
  94. package/src/core/components/selection.js +193 -0
  95. package/src/core/components/timeline.js +281 -0
  96. package/src/core/components/visium.js +97 -0
  97. package/src/core/fetch/condfetch.js +82 -0
  98. package/src/core/fetch/fetch.js +92 -0
  99. package/src/core/fetch/json.js +29 -0
  100. package/src/core/fetch/vfetch.js +42 -0
  101. package/src/core/liveEditor.js +44 -0
  102. package/src/core/modules/codeEditorWithPreview.js +104 -0
  103. package/src/core/modules/echarts/common.js +20 -0
  104. package/src/core/modules/echarts/presetHandler.js +41 -0
  105. package/src/core/modules/echarts/presets/esodev.chromium.js +172 -0
  106. package/src/core/modules/echarts/presets/esodev.codex.js +130 -0
  107. package/src/core/modules/echarts/presets/esodev.visium.js +123 -0
  108. package/src/core/modules/echarts/presets/mmtrbc.js +186 -0
  109. package/src/core/modules/echarts.js +71 -0
  110. package/src/core/modules/echartsUtils.js +43 -0
  111. package/src/core/modules/echartswitcher.js +152 -0
  112. package/src/core/modules/replotly/presetHandler.js +24 -0
  113. package/src/core/modules/replotly/presets/minimum.js +18 -0
  114. package/src/core/modules/replotly/presets/mmtrbc.dot.js +114 -0
  115. package/src/core/modules/replotly/presets/mmtrbc.violin.js +100 -0
  116. package/src/core/modules/replotly.js +71 -0
  117. package/src/core/pages/404.js +50 -0
  118. package/src/core/pages/error.js +27 -0
  119. package/src/core/pages/jsonPage.js +62 -0
  120. package/src/core/pages/loading.js +44 -0
  121. package/src/core/parser/echart.data.js +183 -0
  122. package/src/core/parser/echart.features.js +125 -0
  123. package/src/core/parser/echart.general.js +147 -0
  124. package/src/core/parser/echart.hilbert.js +57 -0
  125. package/src/core/parser/echart.parser.js +210 -0
  126. package/src/core/parser/echart.series.js +67 -0
  127. package/src/core/parser/echart.types.js +76 -0
  128. package/src/core/parser/plotly.config.js +10 -0
  129. package/src/core/parser/plotly.data.js +132 -0
  130. package/src/core/parser/plotly.layout.js +10 -0
  131. package/src/core/parser/plotly.violin.js +18 -0
  132. package/src/core/recharts.js +62 -0
  133. package/src/core/router/alias.js +49 -0
  134. package/src/core/router/jsonRouter.js +31 -0
  135. package/src/core/themes/modern.js +32 -0
  136. package/src/core/themes/themeSelector.js +33 -0
  137. package/src/core/visualify.js +47 -0
  138. package/src/core/widgets/circularProgress.js +24 -0
  139. package/src/core/widgets/controller.js +83 -0
  140. package/src/core/widgets/errorBoundary.js +36 -0
  141. package/src/core/widgets/footer.js +177 -0
  142. package/src/core/widgets/header.js +234 -0
  143. package/src/core/widgets/layout/Grid.js +31 -0
  144. package/src/core/widgets/layout.js +36 -0
  145. package/src/core/widgets/mapping.js +42 -0
  146. package/src/index.js +62 -0
  147. package/src/setupTests.js +5 -0
@@ -0,0 +1,355 @@
1
+ <script defers>
2
+
3
+ const basic_line = {
4
+ code: `const getOption = () => {
5
+ return {
6
+ type: 'line',
7
+ data: {
8
+ '1': [820, 932, 901, 934, 1290, 1330, 1320],
9
+ '2': [1320, 820,1290, 901, 934, 932, 1330],
10
+ },
11
+ xAxis: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
12
+ legend: false,
13
+ }
14
+ };
15
+ return getOption;`
16
+ };
17
+
18
+ const smooth_line = {
19
+ code: `const getOption = () => {
20
+ return {
21
+ type: 'line',
22
+ data: {
23
+ '1': [820, 932, 901, 934, 1290, 1330, 1320],
24
+ '2': [1320, 820,1290, 901, 934, 932, 1330],
25
+ },
26
+ xAxis: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
27
+ smooth: true,
28
+ legend: false,
29
+ }
30
+ };
31
+ return getOption;`
32
+ };
33
+
34
+ const basic_area_chart = {
35
+ code: `const getOption = () => {
36
+ return {
37
+ type: 'line',
38
+ data: {
39
+ '1': [820, 932, 901, 934, 1290, 1330, 1320],
40
+ '2': [1320, 820,1290, 901, 934, 932, 1330],
41
+ },
42
+ xAxis: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
43
+ areaStyle: [{color: 'red'}, {color: 'blue'}],
44
+ smooth: [true, false],
45
+ legend: false,
46
+ }
47
+ };
48
+ return getOption;`
49
+ };
50
+
51
+ const stacked_area_chart = {
52
+ code: `const getOption = () => {
53
+ return {
54
+ type: 'line',
55
+ data: {
56
+ 'Vue': [3000, 3500, 3900, 3100, 3200, 3100, 3600, 3300, 3600, 3400, 3100, 3000],
57
+ 'React': [2000, 2000, 2600, 2300, 2300, 2000, 2600, 2200, 2500, 2800, 2500, 2200],
58
+ 'Angular': [827, 949, 1400, 1000, 884, 911, 983, 989, 925, 1100, 1200, 930],
59
+ },
60
+ xAxis: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec'],
61
+ areaStyle: {},
62
+ stack: 'total',
63
+ smooth: true,
64
+ overrides:{
65
+ tooltip: {
66
+ trigger: 'axis',
67
+ axisPointer: {
68
+ type: 'cross',
69
+ label: {
70
+ backgroundColor: '#6a7985'
71
+ }
72
+ }
73
+ },
74
+ toolbox: {
75
+ feature: {
76
+ saveAsImage: {}
77
+ }
78
+ },
79
+ }
80
+ }
81
+ };
82
+ return getOption;`
83
+ };
84
+
85
+ const percentage_stacked_area_chart = {
86
+ code: `const getOption = () => {
87
+ return {
88
+ type: 'line',
89
+ data: {
90
+ 'Vue': [3000, 3500, 3900, 3100, 3200, 3100, 3600, 3300, 3600, 3400, 3100, 3000],
91
+ 'React': [4000, 4500, 4900, 4300, 4400, 4300, 4800, 4500, 4800, 4600, 4300, 4000],
92
+ 'Angular': [827, 949, 1400, 1000, 884, 911, 983, 989, 925, 1100, 1200, 930, ],
93
+ },
94
+ xAxis: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec'],
95
+ areaStyle: {},
96
+ smooth: true,
97
+ percentage: true,
98
+ }
99
+ };
100
+ return getOption;`
101
+ };
102
+
103
+ const step_line_chart ={
104
+ code: `const getOption = () => {
105
+ return {
106
+ type: 'line',
107
+ data: {
108
+ 'Vue': [3000, 3500, 3900, 3100, 3200],
109
+ 'React': [4000, 4500, 4900, 4300, 4400],
110
+ 'Angular': [827, 949, 1400, 1000, 884],
111
+ },
112
+ xAxis: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
113
+ smooth: true,
114
+ areaStyle: {},
115
+ step: ['start', 'end', 'middle'],
116
+ }
117
+ };
118
+ return getOption;`
119
+ };
120
+
121
+ // Addition Line Setting
122
+
123
+ const line_label_Axis = {
124
+ code: `const getOption = () => {
125
+ return {
126
+ type: 'line',
127
+ data: {
128
+ 'Vue': [3000, 3500, 3900, 3100, 3200],
129
+ 'React': [4000, 4500, 4900, 4300, 4400],
130
+ 'Angular': [827, 949, 1400, 1000, 884],
131
+ },
132
+ xAxis: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
133
+ smooth: true,
134
+ label: [
135
+ {bold: true, color: 'blue',fontSize: 20},
136
+ {color: 'red'},
137
+ {color: 'green'},
138
+ ],
139
+ yAxisLabelColor: 'rgba(209, 10, 220, 1)',
140
+ xAxisLabelColor: 'rgba(14, 33, 237, 1)',
141
+ }
142
+ };
143
+ return getOption;`
144
+ };
145
+
146
+ const hide_axis = {
147
+ code: `const getOption = () => {
148
+ return {
149
+ title: 'Daily Electricity Usage',
150
+ type: 'line',
151
+ data: {
152
+ 'usage': [300, 280, 250, 260, 270, 300, 550, 500, 400, 390, 380, 390, 400, 500, 600, 750, 800, 700, 600, 400],
153
+ 'usage2': [125, 280, 223, 260, 270, 300, 550, 343, 400, 390, 553, 213, 400, 223, 123, 750, 321, 123, 542, 135],
154
+ },
155
+ xAxis: ['00:00', '01:15', '02:30', '03:45', '05:00', '06:15', '07:30', '08:45', '10:00', '11:15', '12:30', '13:45', '15:00', '16:15', '17:30', '18:45', '20:00', '21:15', '22:30', '23:45'],
156
+ xAxisLineshow: false,
157
+ yAxisLineshow: true,
158
+ yAxisLabelShow:false,
159
+ smooth: true,
160
+ overrides:{
161
+ }
162
+ }
163
+ };
164
+ return getOption;`
165
+ };
166
+
167
+ const markArea = {
168
+ code: `const getOption = () => {
169
+ return {
170
+ title: 'Daily Electricity Usage',
171
+ type: 'line',
172
+ data: {
173
+ 'usage': [300, 280, 250, 260, 270, 300, 550, 500, 400, 390, 380, 390, 400, 500, 600, 750, 800, 700, 600, 400],
174
+ 'usage2': [125, 280, 223, 260, 270, 300, 550, 343, 400, 390, 553, 213, 400, 223, 123, 750, 321, 123, 542, 135],
175
+ },
176
+ xAxis: ['00:00', '01:15', '02:30', '03:45', '05:00', '06:15', '07:30', '08:45', '10:00', '11:15', '12:30', '13:45', '15:00', '16:15', '17:30', '18:45', '20:00', '21:15', '22:30', '23:45'],
177
+ smooth: true,
178
+ markArea: [
179
+ {
180
+ 'xAxis': [{start:'06:15', end:'08:45', name: "High Demanding Period"}],
181
+ 'yAxis': {start: 400, end: 600},
182
+ },
183
+ {
184
+ 'xAxis': [{start:'00:00', end:'02:30', name: "Low Demanding Period"}, {start:'05:00',end:'06:15'}],
185
+ 'data': [[{ name: 'avg to max', type: 'average'},{ type: 'max' }]],
186
+ }
187
+ ],
188
+ }
189
+ };
190
+ return getOption;`};
191
+
192
+ const markLine = {
193
+ code: `const getOption = () => {
194
+ return {
195
+ title: 'Daily Electricity Usage',
196
+ type: 'line',
197
+ data: {
198
+ 'usage': [300, 280, 250, 260, 270, 300, 550],
199
+ 'usage2': [125, 373, 223, 323, 270, 352, 250],
200
+ },
201
+ xAxis: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
202
+ smooth: true,
203
+ markLine: [
204
+ {
205
+ data: [
206
+ { name: 'avg', type: 'average'},
207
+ { name: 'min', type: 'min'},
208
+ { name: 'max', type: 'max'},
209
+ ],
210
+ },{
211
+ data: [
212
+ {
213
+ name: 'Y-axis',
214
+ yAxis: 100,
215
+ label: { formatter: '{b}', }
216
+ },
217
+ [
218
+ { name: 'min to avg', type: 'min'},
219
+ { type: 'average'}
220
+ ],
221
+ [
222
+ { name: 'from two points', coord: ['Wed', 100]},
223
+ { coord: ['Fri', 200] }
224
+ ],
225
+ [
226
+ { yAxis: 'average', x: '30%' },
227
+ { type: 'max' }
228
+ ]
229
+ ],
230
+ }],
231
+ }
232
+ };
233
+ return getOption;`};
234
+
235
+ const peak_valley = {
236
+ code: `const getOption = () => {
237
+ return {
238
+ title: 'Daily Electricity Usage',
239
+ type: 'line',
240
+ data: {
241
+ 'usage': [300, 280, 250, 260, 270, 300, 550, 500, 400, 390, 380, 390, 400, 500, 600, 750, 800, 700, 600, 400],
242
+ 'usage2': [125, 280, 223, 260, 270, 300, 550, 343, 400, 390, 553, 213, 400, 223, 123, 750, 321, 123, 542, 135],
243
+ },
244
+ xAxis: ['00:00', '01:15', '02:30', '03:45', '05:00', '06:15', '07:30', '08:45', '10:00', '11:15', '12:30', '13:45', '15:00', '16:15', '17:30', '18:45', '20:00', '21:15', '22:30', '23:45'],
245
+ smooth: true,
246
+ peak: '峰',
247
+ valley: true,
248
+ overrides:{}
249
+ }
250
+ };
251
+ return getOption;`};
252
+
253
+ const ex1 = new $visualify.LiveEditor(basic_line).mount('#ex1');
254
+ const ex2 = new $visualify.LiveEditor(smooth_line).mount('#ex2');
255
+ const ex3 = new $visualify.LiveEditor(basic_area_chart).mount('#ex3');
256
+ const ex4 = new $visualify.LiveEditor(stacked_area_chart).mount('#ex4');
257
+ const ex5 = new $visualify.LiveEditor(percentage_stacked_area_chart).mount('#ex5');
258
+ const ex6 = new $visualify.LiveEditor(step_line_chart).mount('#ex6');
259
+ const ex7 = new $visualify.LiveEditor(line_label_Axis).mount('#ex7');
260
+ const ex8 = new $visualify.LiveEditor(hide_axis).mount('#ex8');
261
+ const ex9 = new $visualify.LiveEditor(markArea).mount('#ex9');
262
+ const ex10 = new $visualify.LiveEditor(markLine).mount('#ex10');
263
+ const ex11 = new $visualify.LiveEditor(peak_valley).mount('#ex11');
264
+ </script>
265
+
266
+ # Line Chart
267
+
268
+ ## Basic Line Chart
269
+
270
+ <div id="ex1"></div>
271
+
272
+ ## Smooth Line Chart
273
+
274
+ <div id="ex2"></div>
275
+
276
+ ## Basic Area Chart
277
+
278
+ <div id="ex3"></div>
279
+
280
+ ## Stacked Area Chart
281
+
282
+ <div id="ex4"></div>
283
+
284
+ ## Percentage Stacked Area Chart
285
+
286
+ <div id="ex5"></div>
287
+
288
+ ## Step Line Chart
289
+
290
+ <div id="ex6"></div>
291
+
292
+ ## Addition Line Setting
293
+
294
+ ### Setting Label & AxisColor
295
+
296
+ <div id="ex7"></div>
297
+
298
+ ### Hiding Axis
299
+
300
+ <div id="ex8"></div>
301
+
302
+ ### Marking Area
303
+
304
+ <div id="ex9"></div>
305
+
306
+ ### Marking Line
307
+
308
+ <div id="ex10"></div>
309
+
310
+ ### Peak & Valley
311
+
312
+ <div id="ex11"></div>
313
+
314
+ ## Overall Configuration
315
+
316
+ ### Basic Configuration
317
+
318
+ The basic configuration includes:
319
+
320
+ | Attribute | Type | Description | Choice | Default |
321
+ | --------------- | ----------- | ----------------------- | -------------------------- | ------- |
322
+ | title | string | The main title | User-defined title | - |
323
+ | subtitle | string | A secondary title | User-defined subtitle | - |
324
+ | width | string | The width dimension | Any valid CSS width value | - |
325
+ | height | string | The height dimension | Any valid CSS height value | 400px |
326
+ | legend | bool/object | show or hide legend | False, User-defined legend | {} |
327
+ | xAxis | array/false | The xAxis | User-defined xAxis Data | [] |
328
+ | yAxis | array/false | The yAxis | User-defined yAxis Data | [] |
329
+ | label | object | The label | User-defined label | {} |
330
+ | labelLine | object | The labelLine | User-defined labelLine | {} |
331
+ | tooltip | object | The tooltip | User-defined tooltip | {} |
332
+ | xAxisLineshow | bool | show or hide xAxisLines | True, False | true |
333
+ | yAxisLineshow | bool | show or hide yAxisLines | True, False | true |
334
+ | xAxisLabelShow | bool | show or hide xAxisLabel | True, False | true |
335
+ | yAxisLabelShow | bool | show or hide yAxisLabel | True, False | true |
336
+ | xAxisLabelColor | string | The xAxisLabelColor | Any valid CSS color value | - |
337
+ | yAxisLabelColor | string | The yAxisLabelColor | Any valid CSS color value | - |
338
+
339
+ ### Data Configuration
340
+
341
+ | Attribute | Type | Description | Choice | Default |
342
+ | ---------- | ----------------- | --------------------------- | ----------------------------------------------------------------------------------------- | --------- |
343
+ | data | string | The data | User-defined data | {} |
344
+ | type | string/array | The type | 'line', 'bar' | undefined |
345
+ | smooth | bool/array | The smooth | True, False, [true, false] | false |
346
+ | areaStyle | object | The area style | {},[{color: 'red'},{color: 'blue'}] | {} |
347
+ | stack | string/array | The stack | {}, ['x', 'y'], 'total' | - |
348
+ | markArea | object/array | The mark area | {XAxis: [{start: '...', end:'...', name: "..."}, ... ], YAxis: ..., props: ..}, [{}, ...] | - |
349
+ | markLine | object/array | The mark line | {data: { name: 'average', type: 'average'}, props: .. }, [{ data: {}, props: ..}, ...] | - |
350
+ | peak | bool/string | name of the peak | True, False, user-defined name of the peak | false |
351
+ | valley | bool/string | name of the valley | True, False, user-defined name of the valley | false |
352
+ | smooth | bool/array | The smooth | True, False, [true, false] | false |
353
+ | areaStyle | object | The area style | {},[{color: 'red'},{color: 'blue'}] | {} |
354
+ | percentage | bool | The percentage stacked mode | True, False | false |
355
+ | steps | bool/string/array | The steps | True, False, 'start', 'middle', 'end', ['start', 'middle', 'end'] | false |
File without changes
@@ -0,0 +1,225 @@
1
+ <script defers>
2
+
3
+ const Basic_Pie = {
4
+ code: `const getOption = () => {
5
+ return {
6
+ type: 'pie',
7
+ data: {
8
+ 'Referer of a Websit': [
9
+ { value: 1048, name: 'Search Engine' },
10
+ { value: 735, name: 'Direct' },
11
+ { value: 580, name: 'Email' },
12
+ { value: 484, name: 'Union Ads' },
13
+ { value: 300, name: 'Video Ads' }
14
+ ],
15
+ },
16
+ }
17
+ };
18
+ return getOption;`
19
+ };
20
+
21
+ const selected_Pie = {
22
+ code: `const getOption = () => {
23
+ return {
24
+ type: 'pie',
25
+ data: {
26
+ 'Referer of a Websit': [
27
+ { value: 1048, name: 'Search Engine' },
28
+ { value: 735, name: 'Direct' },
29
+ { value: 580, name: 'Email' },
30
+ { value: 484, name: 'Union Ads' },
31
+ { value: 300, name: 'Video Ads' }
32
+ ],
33
+ },
34
+ selectedMode: "single", // "multiple"
35
+ }
36
+ };
37
+ return getOption;`
38
+ };
39
+
40
+ const Nightingale = {
41
+ code: `const getOption = () => {
42
+ return {
43
+ type: 'pie',
44
+ data: {
45
+ 'Rose': [
46
+ { value: 40, name: 'rose 1' },
47
+ { value: 33, name: 'rose 2' },
48
+ { value: 28, name: 'rose 3' },
49
+ { value: 22, name: 'rose 4' },
50
+ { value: 20, name: 'rose 5' },
51
+ { value: 15, name: 'rose 6' },
52
+ { value: 12, name: 'rose 7' },
53
+ { value: 10, name: 'rose 8' }
54
+ ],
55
+ 'Rose2': [
56
+ { value: 30, name: 'rose 1' },
57
+ { value: 28, name: 'rose 2' },
58
+ { value: 26, name: 'rose 3' },
59
+ { value: 24, name: 'rose 4' },
60
+ { value: 22, name: 'rose 5' },
61
+ { value: 20, name: 'rose 6' },
62
+ { value: 18, name: 'rose 7' },
63
+ { value: 16, name: 'rose 8' }
64
+ ]
65
+ },
66
+ roseType: 'area',
67
+ radius: [20, 140],
68
+ center: [['75%', '50%'],['25%', '50%']],
69
+ overrides:{
70
+ toolbox: {
71
+ show: true,
72
+ feature: {
73
+ mark: { show: true },
74
+ dataView: { show: true, readOnly: false },
75
+ restore: { show: true },
76
+ saveAsImage: { show: true }
77
+ }
78
+ },
79
+ }
80
+ }
81
+ };
82
+ return getOption;`
83
+ };
84
+
85
+
86
+ const Nested_Pie = {
87
+ code: `const getOption = () => {
88
+ return {
89
+ type: 'pie',
90
+ data: {
91
+ 'Access From 2': [
92
+ { value: 1048, name: 'Baidu' },
93
+ { value: 335, name: 'Direct' },
94
+ { value: 310, name: 'Email' },
95
+ { value: 251, name: 'Google' },
96
+ { value: 234, name: 'Union Ads' },
97
+ { value: 147, name: 'Bing' },
98
+ { value: 135, name: 'Video Ads' },
99
+ { value: 102, name: 'Others' }
100
+ ],
101
+ 'Access From': [
102
+ { value: 1548, name: 'Search Engine' },
103
+ { value: 775, name: 'Direct' },
104
+ { value: 679, name: 'Marketing', selected: true }
105
+ ],
106
+ },
107
+ legend: {
108
+ data: [
109
+ 'Email',
110
+ 'Union Ads',
111
+ 'Video Ads',
112
+ 'Baidu',
113
+ 'Google',
114
+ 'Bing',
115
+ 'Others'
116
+ ],
117
+ orient: 'horizontal',
118
+ },
119
+ radius: [['45%', '60%'],[0, '30%']],
120
+ label: [
121
+ {
122
+ formatter: '{a|{a}}{abg|}\\n{hr|}\\n {b|{b}:}{c} {per|{d}%} ',
123
+ backgroundColor: '#F6F8FC',
124
+ borderColor: '#8C8D8E',
125
+ borderWidth: 1,
126
+ borderRadius: 4,
127
+ rich: {
128
+ a: {
129
+ color: '#6E7079',
130
+ lineHeight: 22,
131
+ align: 'center'
132
+ },
133
+ hr: {
134
+ borderColor: '#8C8D8E',
135
+ width: '100%',
136
+ borderWidth: 1,
137
+ height: 0
138
+ },
139
+ b: {
140
+ color: '#4C5058',
141
+ fontSize: 14,
142
+ fontWeight: 'bold',
143
+ lineHeight: 33
144
+ },
145
+ per: {
146
+ color: '#fff',
147
+ backgroundColor: '#4C5058',
148
+ padding: [3, 4],
149
+ borderRadius: 4
150
+ }
151
+ }
152
+ },
153
+ {
154
+ position: 'inner',
155
+ fontSize: 14
156
+ },
157
+ ]
158
+ }
159
+ };
160
+ return getOption;`
161
+ };
162
+
163
+
164
+
165
+ const ex1 = new $visualify.LiveEditor(Basic_Pie).mount('#ex1');
166
+ const ex2 = new $visualify.LiveEditor(selected_Pie).mount('#ex2');
167
+ const ex3 = new $visualify.LiveEditor(Nightingale).mount('#ex3');
168
+ const ex4 = new $visualify.LiveEditor(Nested_Pie).mount('#ex4');
169
+ </script>
170
+
171
+ # Pie Chart
172
+
173
+ ## Basic Pie Chart
174
+
175
+ <div id="ex1"></div>
176
+
177
+ ## Selected Pie Chart
178
+
179
+ <div id="ex2"></div>
180
+
181
+ ## Nightingale Rose Chart
182
+
183
+ <div id="ex3"></div>
184
+
185
+ ## Nested Pie Chart
186
+
187
+ <div id="ex4"></div>
188
+
189
+ ## Overall Configuration
190
+
191
+ ### Basic Configuration
192
+
193
+ The basic configuration includes:
194
+
195
+ | Attribute | Type | Description | Choice | Default |
196
+ | --------------- | ----------- | ----------------------- | -------------------------- | ------- |
197
+ | title | string | The main title | User-defined title | - |
198
+ | subtitle | string | A secondary title | User-defined subtitle | - |
199
+ | width | string | The width dimension | Any valid CSS width value | - |
200
+ | height | string | The height dimension | Any valid CSS height value | 400px |
201
+ | legend | bool/object | show or hide legend | False, User-defined legend | {} |
202
+ | xAxis | array/false | The xAxis | User-defined xAxis Data | [] |
203
+ | yAxis | array/false | The yAxis | User-defined yAxis Data | [] |
204
+ | label | object | The label | User-defined label | {} |
205
+ | labelLine | object | The labelLine | User-defined labelLine | {} |
206
+ | tooltip | object | The tooltip | User-defined tooltip | {} |
207
+ | xAxisLineshow | bool | show or hide xAxisLines | True, False | true |
208
+ | yAxisLineshow | bool | show or hide yAxisLines | True, False | true |
209
+ | xAxisLabelShow | bool | show or hide xAxisLabel | True, False | true |
210
+ | yAxisLabelShow | bool | show or hide yAxisLabel | True, False | true |
211
+ | xAxisLabelColor | string | The xAxisLabelColor | Any valid CSS color value | - |
212
+ | yAxisLabelColor | string | The yAxisLabelColor | Any valid CSS color value | - |
213
+
214
+ ### Data Configuration
215
+
216
+ | Attribute | Type | Description | Choice | Default |
217
+ | ---------- | --------------------- | --------------------------- | ----------------------------------- | --------- |
218
+ | data | string | The data | User-defined data | {} |
219
+ | type | string/array | The type | 'line', 'bar' | undefined |
220
+ | areaStyle | object | The area style | {},[{color: 'red'},{color: 'blue'}] | {} |
221
+ | stack | string/array | The stack | 'total',['x','y'] | - |
222
+ | percentage | bool | The percentage stacked mode | True, False | false |
223
+ | areaStyle | object | The area style | {},[{color: 'red'},{color: 'blue'}] | {} |
224
+ | radius | array/ array of array | The radius | [20, 140], [[20,140]] | - |
225
+ | center | array/ array of array | The center | ['75%', '50%'], [['75%', '50%']] | - |
File without changes