visualifyjs 2.5.3-2.dev → 2.5.3-9-dev
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of visualifyjs might be problematic. Click here for more details.
- package/.github/workflows/{static.yml.bak → build.yaml} +51 -51
- package/LICENSE +674 -674
- package/README.md +40 -58
- package/config-overrides.js +31 -31
- package/dist/visualify.js +3 -3
- package/docs/CLI.md +15 -0
- package/docs/{docs/README.md → README.md} +41 -65
- package/docs/{docs/Rechart → Rechart}/bar.md +190 -190
- package/docs/{docs/Rechart → Rechart}/funnel.md +193 -241
- package/docs/{docs/Rechart → Rechart}/line.md +355 -355
- package/docs/{docs/Rechart → Rechart}/pie.md +225 -225
- package/docs/{docs/Rechart → Rechart}/radar.md +253 -253
- package/docs/{docs/_404.md → _404.md} +51 -51
- package/docs/{docs/_coverpage.md → _coverpage.md} +11 -11
- package/docs/{docs/_sidebar.md → _sidebar.md} +42 -44
- package/docs/{docs/components → components}/dotBio.md +34 -34
- package/docs/{docs/components → components}/echart.md +82 -82
- package/docs/{docs/components → components}/html.md +34 -34
- package/docs/{docs/components → components}/macaron.md +145 -145
- package/docs/components/markdown.md +0 -0
- package/docs/{docs/components → components}/more.md +142 -142
- package/docs/{docs/components → components}/plotly.md +62 -62
- package/docs/{docs/components → components}/scatterL.md +70 -70
- package/docs/{docs/components → components}/visium.md +56 -56
- package/docs/{docs/configuration.md → configuration.md} +123 -121
- package/docs/{docs/deploy.md → deploy.md} +23 -31
- package/docs/index.html +70 -70
- package/docs/log.md +1 -0
- package/docs/manifest.json +23 -23
- package/docs/{docs/more-pages.md → more-pages.md} +23 -23
- package/docs/{docs/quickstart.md → quickstart.md} +115 -124
- package/docs/{docs/rechart-attributes.md → rechart-attributes.md} +74 -74
- package/docs/{docs/rechart-basic-usage.md → rechart-basic-usage.md} +162 -162
- package/docs/static/css/fluff-stuff.css +169 -169
- package/docs/static/css/font-awesome.min.css +4 -4
- package/docs/static/css/visualify.css +25 -25
- package/docs/static/js/configuration.js +448 -448
- package/docs/static/js/visualify.js +24 -23
- package/docs/theme.md +3 -0
- package/package.json +74 -83
- package/rollup.config.mjs +75 -75
- package/src/_css/404.css +115 -115
- package/src/_css/App.css +37 -37
- package/src/_css/autoSuggestion.css +26 -26
- package/src/_css/circular-progress.css +32 -32
- package/src/_css/index.css +36 -36
- package/src/_css/modern.css +24 -24
- package/src/_media/corner.svg +8 -8
- package/src/_media/download.svg +3 -3
- package/src/_media/logo.svg +14 -14
- package/src/_test/App.test.js +15 -15
- package/src/_utils/reportWebVitals.js +13 -13
- package/src/core/appContext.js +27 -27
- package/src/core/components/Scatter.js +188 -188
- package/src/core/components/ScatterBio.js +572 -572
- package/src/core/components/VisiumPlot.js +165 -165
- package/src/core/components/browser.js +42 -42
- package/src/core/components/dotplot.js +413 -413
- package/src/core/components/html.js +29 -29
- package/src/core/components/list.js +178 -178
- package/src/core/components/macaron.js +201 -201
- package/src/core/components/markdown.js +56 -56
- package/src/core/components/parser.scatterBio.js +579 -587
- package/src/core/components/ratio.js +80 -80
- package/src/core/components/scatterL.js +173 -173
- package/src/core/components/searchbar.js +131 -131
- package/src/core/components/selection.js +193 -193
- package/src/core/components/timeline.js +281 -281
- package/src/core/components/visium.js +97 -97
- package/src/core/fetch/condfetch.js +82 -82
- package/src/core/fetch/fetch.js +92 -92
- package/src/core/fetch/json.js +29 -29
- package/src/core/fetch/vfetch.js +42 -42
- package/src/core/liveEditor.js +44 -44
- package/src/core/modules/codeEditorWithPreview.js +104 -104
- package/src/core/modules/echarts/common.js +20 -20
- package/src/core/modules/echarts/presetHandler.js +41 -41
- package/src/core/modules/echarts/presets/esodev.chromium.js +172 -172
- package/src/core/modules/echarts/presets/esodev.codex.js +130 -130
- package/src/core/modules/echarts/presets/esodev.visium.js +123 -123
- package/src/core/modules/echarts/presets/mmtrbc.js +186 -186
- package/src/core/modules/echarts.js +71 -71
- package/src/core/modules/echartsUtils.js +43 -43
- package/src/core/modules/echartswitcher.js +152 -152
- package/src/core/modules/replotly/presetHandler.js +24 -24
- package/src/core/modules/replotly/presets/minimum.js +18 -18
- package/src/core/modules/replotly/presets/mmtrbc.dot.js +114 -114
- package/src/core/modules/replotly/presets/mmtrbc.violin.js +100 -100
- package/src/core/modules/replotly.js +71 -71
- package/src/core/pages/404.js +50 -50
- package/src/core/pages/error.js +27 -27
- package/src/core/pages/jsonPage.js +62 -62
- package/src/core/pages/loading.js +44 -44
- package/src/core/parser/echart.data.js +183 -183
- package/src/core/parser/echart.features.js +125 -125
- package/src/core/parser/echart.general.js +143 -147
- package/src/core/parser/echart.hilbert.js +57 -57
- package/src/core/parser/echart.parser.js +210 -210
- package/src/core/parser/echart.series.js +67 -67
- package/src/core/parser/echart.types.js +76 -76
- package/src/core/parser/plotly.config.js +10 -10
- package/src/core/parser/plotly.data.js +132 -132
- package/src/core/parser/plotly.layout.js +9 -9
- package/src/core/parser/plotly.violin.js +18 -18
- package/src/core/recharts.js +62 -62
- package/src/core/router/alias.js +49 -49
- package/src/core/router/jsonRouter.js +31 -31
- package/src/core/themes/modern.js +32 -32
- package/src/core/themes/themeSelector.js +33 -33
- package/src/core/visualify.js +47 -47
- package/src/core/widgets/circularProgress.js +23 -23
- package/src/core/widgets/controller.js +83 -83
- package/src/core/widgets/errorBoundary.js +36 -36
- package/src/core/widgets/footer.js +177 -177
- package/src/core/widgets/header.js +234 -234
- package/src/core/widgets/layout/Grid.js +31 -31
- package/src/core/widgets/layout.js +36 -36
- package/src/core/widgets/mapping.js +42 -42
- package/src/index.js +62 -62
- package/src/setupTests.js +5 -5
- package/docs/docs/CLI.md +0 -34
- package/docs/docs/Rechart/scatter.md +0 -298
- package/docs/docs/log.md +0 -9
- package/docs/docs/static/logo/favicon.ico +0 -0
- package/docs/docs/static/logo/logo_128x128.png +0 -0
- package/docs/docs/static/logo/logo_192x192.png +0 -0
- package/docs/docs/static/logo/logo_256x256.png +0 -0
- package/docs/docs/static/logo/logo_512x512.png +0 -0
- package/docs/docs/static/logo/logo_64x64.png +0 -0
- package/docs/docs/theme.md +0 -5
- /package/docs/{docs/Rechart → Rechart}/geo.md +0 -0
- /package/docs/{docs/Rechart → Rechart}/liquidfill.md +0 -0
- /package/docs/{docs/Rechart → Rechart}/polar.md +0 -0
- /package/docs/{docs/Rechart → Rechart}/sankey.md +0 -0
- /package/docs/{docs/Rechart/sunburst.md → Rechart/scatter.md} +0 -0
- /package/docs/{docs/Rechart/tree.md → Rechart/sunburst.md} +0 -0
- /package/docs/{docs/Rechart/wordcloud.md → Rechart/tree.md} +0 -0
- /package/docs/{docs/components/markdown.md → Rechart/wordcloud.md} +0 -0
- /package/docs/{docs/static → static}/_images/deploy-github-pages.png +0 -0
@@ -1,253 +1,253 @@
|
|
1
|
-
<script defers>
|
2
|
-
|
3
|
-
const Basic_Radar = {
|
4
|
-
code: `const getOption = () => {
|
5
|
-
return {
|
6
|
-
type: 'radar',
|
7
|
-
data: {
|
8
|
-
'Referer of a Websit': [
|
9
|
-
{
|
10
|
-
name: '2018',
|
11
|
-
value: [5000, 7000, 12000, 11000, 15000, 14000]
|
12
|
-
}
|
13
|
-
],
|
14
|
-
},
|
15
|
-
radar:{
|
16
|
-
indicator: [
|
17
|
-
{ name: 'APP', max: 6000 },
|
18
|
-
{ name: 'PC', max: 16000 },
|
19
|
-
{ name: 'Mobile', max: 30000 },
|
20
|
-
{ name: 'Wechat', max: 35000 },
|
21
|
-
{ name: 'Mobile QQ', max: 50000 },
|
22
|
-
{ name: 'Mini App', max: 25000 }
|
23
|
-
]
|
24
|
-
},
|
25
|
-
}
|
26
|
-
};
|
27
|
-
return getOption;`
|
28
|
-
};
|
29
|
-
|
30
|
-
const Circular_radar = {
|
31
|
-
code: `const getOption = () => {
|
32
|
-
return {
|
33
|
-
type: 'radar',
|
34
|
-
data: {
|
35
|
-
'Referer of a Websit': [
|
36
|
-
{
|
37
|
-
name: '2018',
|
38
|
-
value: [5000, 7000, 12000, 11000, 15000, 14000]
|
39
|
-
}
|
40
|
-
],
|
41
|
-
},
|
42
|
-
radar:{
|
43
|
-
indicator: [
|
44
|
-
{ name: 'APP', max: 6000 },
|
45
|
-
{ name: 'PC', max: 16000 },
|
46
|
-
{ name: 'Mobile', max: 30000 },
|
47
|
-
{ name: 'Wechat', max: 35000 },
|
48
|
-
{ name: 'Mobile QQ', max: 50000 },
|
49
|
-
{ name: 'Mini App', max: 25000 }
|
50
|
-
],
|
51
|
-
radius: 120,
|
52
|
-
splitNumber: 3,
|
53
|
-
shape: 'circle',
|
54
|
-
splitArea: {
|
55
|
-
areaStyle: {
|
56
|
-
color: ['rgba(114, 172, 209, 0.2)','rgba(114, 172, 209, 0.4)', 'rgba(114, 172, 209, 0.6)','rgba(114, 172, 209, 0.8)', 'rgba(114, 172, 209, 1)'],
|
57
|
-
shadowColor: 'rgba(0, 0, 0, 0.3)',
|
58
|
-
shadowBlur: 10
|
59
|
-
}
|
60
|
-
}
|
61
|
-
},
|
62
|
-
}
|
63
|
-
};
|
64
|
-
return getOption;`
|
65
|
-
};
|
66
|
-
|
67
|
-
|
68
|
-
const Indicator_radar = {
|
69
|
-
code: `const getOption = () => {
|
70
|
-
return {
|
71
|
-
type: 'radar',
|
72
|
-
data: {
|
73
|
-
'Referer of a Websit': [
|
74
|
-
{
|
75
|
-
name: '2018',
|
76
|
-
value: [5000, 7000, 12000, 11000, 15000, 14000]
|
77
|
-
},
|
78
|
-
{
|
79
|
-
name: '2019',
|
80
|
-
value: [4000, 9000, 15000, 15000, 13000, 11000],
|
81
|
-
symbol: 'rect',
|
82
|
-
symbolSize: 12,
|
83
|
-
lineStyle: {
|
84
|
-
type: 'dashed'
|
85
|
-
},
|
86
|
-
label: {
|
87
|
-
show: true,
|
88
|
-
formatter: function (params) {
|
89
|
-
return params.value;
|
90
|
-
}
|
91
|
-
}
|
92
|
-
}
|
93
|
-
],
|
94
|
-
},
|
95
|
-
radar:{
|
96
|
-
indicator: [
|
97
|
-
{ name: 'APP', max: 6000 },
|
98
|
-
{ name: 'PC', max: 16000 },
|
99
|
-
{ name: 'Mobile', max: 30000 },
|
100
|
-
{ name: 'Wechat', max: 35000 },
|
101
|
-
{ name: 'Mobile QQ', max: 50000 },
|
102
|
-
{ name: 'Mini App', max: 25000 }
|
103
|
-
],
|
104
|
-
radius: 120,
|
105
|
-
splitNumber: 3,
|
106
|
-
shape: 'circle',
|
107
|
-
name: {
|
108
|
-
fontSize: 20,
|
109
|
-
color: 'rgba(185, 11, 220, 1)'
|
110
|
-
}
|
111
|
-
},
|
112
|
-
}
|
113
|
-
};
|
114
|
-
return getOption;`
|
115
|
-
};
|
116
|
-
|
117
|
-
const Multiple_radar = {
|
118
|
-
code: `const getOption = () => {
|
119
|
-
return {
|
120
|
-
type: 'radar',
|
121
|
-
data: {
|
122
|
-
'First': [
|
123
|
-
{
|
124
|
-
value: [60, 73, 85, 40],
|
125
|
-
name: 'A Software'
|
126
|
-
}
|
127
|
-
],
|
128
|
-
"Second": [
|
129
|
-
{
|
130
|
-
value: [85, 90, 90, 95, 95],
|
131
|
-
name: 'A Phone'
|
132
|
-
},
|
133
|
-
{
|
134
|
-
value: [95, 80, 95, 90, 93],
|
135
|
-
name: 'Another Phone'
|
136
|
-
}
|
137
|
-
],
|
138
|
-
'Third': [
|
139
|
-
{
|
140
|
-
name: 'Precipitation',
|
141
|
-
value: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 75.6, 82.2, 48.7, 18.8, 6.0, 2.3]
|
142
|
-
},
|
143
|
-
{
|
144
|
-
name: 'Evaporation',
|
145
|
-
value: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 35.6, 62.2, 32.6, 20.0, 6.4, 3.3]
|
146
|
-
}
|
147
|
-
],
|
148
|
-
},
|
149
|
-
radar: [
|
150
|
-
{
|
151
|
-
indicator: [
|
152
|
-
{ text: 'Brand', max: 100 },
|
153
|
-
{ text: 'Content', max: 100 },
|
154
|
-
{ text: 'Usability', max: 100 },
|
155
|
-
{ text: 'Function', max: 100 }
|
156
|
-
],
|
157
|
-
center: ['25%', '40%'],
|
158
|
-
radius: 80
|
159
|
-
},
|
160
|
-
{
|
161
|
-
indicator: [
|
162
|
-
{ text: 'Look', max: 100 },
|
163
|
-
{ text: 'Photo', max: 100 },
|
164
|
-
{ text: 'System', max: 100 },
|
165
|
-
{ text: 'Performance', max: 100 },
|
166
|
-
{ text: 'Screen', max: 100 }
|
167
|
-
],
|
168
|
-
radius: 80,
|
169
|
-
center: ['50%', '60%']
|
170
|
-
},
|
171
|
-
{
|
172
|
-
indicator: (function () {
|
173
|
-
var res = [];
|
174
|
-
for (var i = 1; i <= 12; i++) {
|
175
|
-
res.push({ text: i + '月', max: 100 });
|
176
|
-
}
|
177
|
-
return res;
|
178
|
-
})(),
|
179
|
-
center: ['75%', '40%'],
|
180
|
-
radius: 80
|
181
|
-
}
|
182
|
-
],
|
183
|
-
}
|
184
|
-
};
|
185
|
-
return getOption;`
|
186
|
-
};
|
187
|
-
|
188
|
-
const ex1 = new $visualify.LiveEditor(Basic_Radar).mount('#ex1');
|
189
|
-
const ex2 = new $visualify.LiveEditor(Circular_radar).mount('#ex2');
|
190
|
-
const ex3 = new $visualify.LiveEditor(Indicator_radar).mount('#ex3');
|
191
|
-
const ex4 = new $visualify.LiveEditor(Multiple_radar).mount('#ex4');
|
192
|
-
</script>
|
193
|
-
|
194
|
-
# Radar Chart
|
195
|
-
|
196
|
-
## Basic Radar Chart
|
197
|
-
|
198
|
-
<div id="ex1"></div>
|
199
|
-
|
200
|
-
## Circular Radar Chart
|
201
|
-
|
202
|
-
<div id="ex2"></div>
|
203
|
-
|
204
|
-
## Indicator Radar Chart
|
205
|
-
|
206
|
-
<div id="ex3"></div>
|
207
|
-
|
208
|
-
## Multiple Radar Chart
|
209
|
-
|
210
|
-
<div id="ex4"></div>
|
211
|
-
|
212
|
-
## Overall Configuration
|
213
|
-
|
214
|
-
### Basic Configuration
|
215
|
-
|
216
|
-
The basic configuration includes:
|
217
|
-
|
218
|
-
| Attribute | Type | Description | Choice | Default |
|
219
|
-
| --------------- | ----------- | ----------------------- | -------------------------- | ------- |
|
220
|
-
| title | string | The main title | User-defined title | - |
|
221
|
-
| subtitle | string | A secondary title | User-defined subtitle | - |
|
222
|
-
| width | string | The width dimension | Any valid CSS width value | - |
|
223
|
-
| height | string | The height dimension | Any valid CSS height value | 400px |
|
224
|
-
| legend | bool/object | show or hide legend | False, User-defined legend | {} |
|
225
|
-
| xAxis | array/false | The xAxis | User-defined xAxis Data | [] |
|
226
|
-
| yAxis | array/false | The yAxis | User-defined yAxis Data | [] |
|
227
|
-
| label | object | The label | User-defined label | {} |
|
228
|
-
| labelLine | object | The labelLine | User-defined labelLine | {} |
|
229
|
-
| tooltip | object | The tooltip | User-defined tooltip | {} |
|
230
|
-
| xAxisLineshow | bool | show or hide xAxisLines | True, False | true |
|
231
|
-
| yAxisLineshow | bool | show or hide yAxisLines | True, False | true |
|
232
|
-
| xAxisLabelShow | bool | show or hide xAxisLabel | True, False | true |
|
233
|
-
| yAxisLabelShow | bool | show or hide yAxisLabel | True, False | true |
|
234
|
-
| xAxisLabelColor | string | The xAxisLabelColor | Any valid CSS color value | - |
|
235
|
-
| yAxisLabelColor | string | The yAxisLabelColor | Any valid CSS color value | - |
|
236
|
-
|
237
|
-
### Data Configuration
|
238
|
-
|
239
|
-
| Attribute | Type | Description | Choice | Default |
|
240
|
-
| --------- | ------------ | ----------- | ----------------- | --------- |
|
241
|
-
| data | string | The data | User-defined data | {} |
|
242
|
-
| type | string/array | The type | 'line', 'bar' | undefined |
|
243
|
-
| radar | object | The radar | User-defined data | {} |
|
244
|
-
|
245
|
-
### Radar Configuration
|
246
|
-
|
247
|
-
| Attribute | Type | Description | Choice | Default |
|
248
|
-
| ----------- | ------ | --------------- | ------------------------ | --------- |
|
249
|
-
| indicator | array | The indicator | User-defined indicator | [] |
|
250
|
-
| radius | number | The radius | User-defined radius | 75 |
|
251
|
-
| splitNumber | number | The splitNumber | User-defined splitNumber | 5 |
|
252
|
-
| shape | string | The shape | 'polygon', 'circle' | 'polygon' |
|
253
|
-
| splitArea | object | The splitArea | User-defined splitArea | {} |
|
1
|
+
<script defers>
|
2
|
+
|
3
|
+
const Basic_Radar = {
|
4
|
+
code: `const getOption = () => {
|
5
|
+
return {
|
6
|
+
type: 'radar',
|
7
|
+
data: {
|
8
|
+
'Referer of a Websit': [
|
9
|
+
{
|
10
|
+
name: '2018',
|
11
|
+
value: [5000, 7000, 12000, 11000, 15000, 14000]
|
12
|
+
}
|
13
|
+
],
|
14
|
+
},
|
15
|
+
radar:{
|
16
|
+
indicator: [
|
17
|
+
{ name: 'APP', max: 6000 },
|
18
|
+
{ name: 'PC', max: 16000 },
|
19
|
+
{ name: 'Mobile', max: 30000 },
|
20
|
+
{ name: 'Wechat', max: 35000 },
|
21
|
+
{ name: 'Mobile QQ', max: 50000 },
|
22
|
+
{ name: 'Mini App', max: 25000 }
|
23
|
+
]
|
24
|
+
},
|
25
|
+
}
|
26
|
+
};
|
27
|
+
return getOption;`
|
28
|
+
};
|
29
|
+
|
30
|
+
const Circular_radar = {
|
31
|
+
code: `const getOption = () => {
|
32
|
+
return {
|
33
|
+
type: 'radar',
|
34
|
+
data: {
|
35
|
+
'Referer of a Websit': [
|
36
|
+
{
|
37
|
+
name: '2018',
|
38
|
+
value: [5000, 7000, 12000, 11000, 15000, 14000]
|
39
|
+
}
|
40
|
+
],
|
41
|
+
},
|
42
|
+
radar:{
|
43
|
+
indicator: [
|
44
|
+
{ name: 'APP', max: 6000 },
|
45
|
+
{ name: 'PC', max: 16000 },
|
46
|
+
{ name: 'Mobile', max: 30000 },
|
47
|
+
{ name: 'Wechat', max: 35000 },
|
48
|
+
{ name: 'Mobile QQ', max: 50000 },
|
49
|
+
{ name: 'Mini App', max: 25000 }
|
50
|
+
],
|
51
|
+
radius: 120,
|
52
|
+
splitNumber: 3,
|
53
|
+
shape: 'circle',
|
54
|
+
splitArea: {
|
55
|
+
areaStyle: {
|
56
|
+
color: ['rgba(114, 172, 209, 0.2)','rgba(114, 172, 209, 0.4)', 'rgba(114, 172, 209, 0.6)','rgba(114, 172, 209, 0.8)', 'rgba(114, 172, 209, 1)'],
|
57
|
+
shadowColor: 'rgba(0, 0, 0, 0.3)',
|
58
|
+
shadowBlur: 10
|
59
|
+
}
|
60
|
+
}
|
61
|
+
},
|
62
|
+
}
|
63
|
+
};
|
64
|
+
return getOption;`
|
65
|
+
};
|
66
|
+
|
67
|
+
|
68
|
+
const Indicator_radar = {
|
69
|
+
code: `const getOption = () => {
|
70
|
+
return {
|
71
|
+
type: 'radar',
|
72
|
+
data: {
|
73
|
+
'Referer of a Websit': [
|
74
|
+
{
|
75
|
+
name: '2018',
|
76
|
+
value: [5000, 7000, 12000, 11000, 15000, 14000]
|
77
|
+
},
|
78
|
+
{
|
79
|
+
name: '2019',
|
80
|
+
value: [4000, 9000, 15000, 15000, 13000, 11000],
|
81
|
+
symbol: 'rect',
|
82
|
+
symbolSize: 12,
|
83
|
+
lineStyle: {
|
84
|
+
type: 'dashed'
|
85
|
+
},
|
86
|
+
label: {
|
87
|
+
show: true,
|
88
|
+
formatter: function (params) {
|
89
|
+
return params.value;
|
90
|
+
}
|
91
|
+
}
|
92
|
+
}
|
93
|
+
],
|
94
|
+
},
|
95
|
+
radar:{
|
96
|
+
indicator: [
|
97
|
+
{ name: 'APP', max: 6000 },
|
98
|
+
{ name: 'PC', max: 16000 },
|
99
|
+
{ name: 'Mobile', max: 30000 },
|
100
|
+
{ name: 'Wechat', max: 35000 },
|
101
|
+
{ name: 'Mobile QQ', max: 50000 },
|
102
|
+
{ name: 'Mini App', max: 25000 }
|
103
|
+
],
|
104
|
+
radius: 120,
|
105
|
+
splitNumber: 3,
|
106
|
+
shape: 'circle',
|
107
|
+
name: {
|
108
|
+
fontSize: 20,
|
109
|
+
color: 'rgba(185, 11, 220, 1)'
|
110
|
+
}
|
111
|
+
},
|
112
|
+
}
|
113
|
+
};
|
114
|
+
return getOption;`
|
115
|
+
};
|
116
|
+
|
117
|
+
const Multiple_radar = {
|
118
|
+
code: `const getOption = () => {
|
119
|
+
return {
|
120
|
+
type: 'radar',
|
121
|
+
data: {
|
122
|
+
'First': [
|
123
|
+
{
|
124
|
+
value: [60, 73, 85, 40],
|
125
|
+
name: 'A Software'
|
126
|
+
}
|
127
|
+
],
|
128
|
+
"Second": [
|
129
|
+
{
|
130
|
+
value: [85, 90, 90, 95, 95],
|
131
|
+
name: 'A Phone'
|
132
|
+
},
|
133
|
+
{
|
134
|
+
value: [95, 80, 95, 90, 93],
|
135
|
+
name: 'Another Phone'
|
136
|
+
}
|
137
|
+
],
|
138
|
+
'Third': [
|
139
|
+
{
|
140
|
+
name: 'Precipitation',
|
141
|
+
value: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 75.6, 82.2, 48.7, 18.8, 6.0, 2.3]
|
142
|
+
},
|
143
|
+
{
|
144
|
+
name: 'Evaporation',
|
145
|
+
value: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 35.6, 62.2, 32.6, 20.0, 6.4, 3.3]
|
146
|
+
}
|
147
|
+
],
|
148
|
+
},
|
149
|
+
radar: [
|
150
|
+
{
|
151
|
+
indicator: [
|
152
|
+
{ text: 'Brand', max: 100 },
|
153
|
+
{ text: 'Content', max: 100 },
|
154
|
+
{ text: 'Usability', max: 100 },
|
155
|
+
{ text: 'Function', max: 100 }
|
156
|
+
],
|
157
|
+
center: ['25%', '40%'],
|
158
|
+
radius: 80
|
159
|
+
},
|
160
|
+
{
|
161
|
+
indicator: [
|
162
|
+
{ text: 'Look', max: 100 },
|
163
|
+
{ text: 'Photo', max: 100 },
|
164
|
+
{ text: 'System', max: 100 },
|
165
|
+
{ text: 'Performance', max: 100 },
|
166
|
+
{ text: 'Screen', max: 100 }
|
167
|
+
],
|
168
|
+
radius: 80,
|
169
|
+
center: ['50%', '60%']
|
170
|
+
},
|
171
|
+
{
|
172
|
+
indicator: (function () {
|
173
|
+
var res = [];
|
174
|
+
for (var i = 1; i <= 12; i++) {
|
175
|
+
res.push({ text: i + '月', max: 100 });
|
176
|
+
}
|
177
|
+
return res;
|
178
|
+
})(),
|
179
|
+
center: ['75%', '40%'],
|
180
|
+
radius: 80
|
181
|
+
}
|
182
|
+
],
|
183
|
+
}
|
184
|
+
};
|
185
|
+
return getOption;`
|
186
|
+
};
|
187
|
+
|
188
|
+
const ex1 = new $visualify.LiveEditor(Basic_Radar).mount('#ex1');
|
189
|
+
const ex2 = new $visualify.LiveEditor(Circular_radar).mount('#ex2');
|
190
|
+
const ex3 = new $visualify.LiveEditor(Indicator_radar).mount('#ex3');
|
191
|
+
const ex4 = new $visualify.LiveEditor(Multiple_radar).mount('#ex4');
|
192
|
+
</script>
|
193
|
+
|
194
|
+
# Radar Chart
|
195
|
+
|
196
|
+
## Basic Radar Chart
|
197
|
+
|
198
|
+
<div id="ex1"></div>
|
199
|
+
|
200
|
+
## Circular Radar Chart
|
201
|
+
|
202
|
+
<div id="ex2"></div>
|
203
|
+
|
204
|
+
## Indicator Radar Chart
|
205
|
+
|
206
|
+
<div id="ex3"></div>
|
207
|
+
|
208
|
+
## Multiple Radar Chart
|
209
|
+
|
210
|
+
<div id="ex4"></div>
|
211
|
+
|
212
|
+
## Overall Configuration
|
213
|
+
|
214
|
+
### Basic Configuration
|
215
|
+
|
216
|
+
The basic configuration includes:
|
217
|
+
|
218
|
+
| Attribute | Type | Description | Choice | Default |
|
219
|
+
| --------------- | ----------- | ----------------------- | -------------------------- | ------- |
|
220
|
+
| title | string | The main title | User-defined title | - |
|
221
|
+
| subtitle | string | A secondary title | User-defined subtitle | - |
|
222
|
+
| width | string | The width dimension | Any valid CSS width value | - |
|
223
|
+
| height | string | The height dimension | Any valid CSS height value | 400px |
|
224
|
+
| legend | bool/object | show or hide legend | False, User-defined legend | {} |
|
225
|
+
| xAxis | array/false | The xAxis | User-defined xAxis Data | [] |
|
226
|
+
| yAxis | array/false | The yAxis | User-defined yAxis Data | [] |
|
227
|
+
| label | object | The label | User-defined label | {} |
|
228
|
+
| labelLine | object | The labelLine | User-defined labelLine | {} |
|
229
|
+
| tooltip | object | The tooltip | User-defined tooltip | {} |
|
230
|
+
| xAxisLineshow | bool | show or hide xAxisLines | True, False | true |
|
231
|
+
| yAxisLineshow | bool | show or hide yAxisLines | True, False | true |
|
232
|
+
| xAxisLabelShow | bool | show or hide xAxisLabel | True, False | true |
|
233
|
+
| yAxisLabelShow | bool | show or hide yAxisLabel | True, False | true |
|
234
|
+
| xAxisLabelColor | string | The xAxisLabelColor | Any valid CSS color value | - |
|
235
|
+
| yAxisLabelColor | string | The yAxisLabelColor | Any valid CSS color value | - |
|
236
|
+
|
237
|
+
### Data Configuration
|
238
|
+
|
239
|
+
| Attribute | Type | Description | Choice | Default |
|
240
|
+
| --------- | ------------ | ----------- | ----------------- | --------- |
|
241
|
+
| data | string | The data | User-defined data | {} |
|
242
|
+
| type | string/array | The type | 'line', 'bar' | undefined |
|
243
|
+
| radar | object | The radar | User-defined data | {} |
|
244
|
+
|
245
|
+
### Radar Configuration
|
246
|
+
|
247
|
+
| Attribute | Type | Description | Choice | Default |
|
248
|
+
| ----------- | ------ | --------------- | ------------------------ | --------- |
|
249
|
+
| indicator | array | The indicator | User-defined indicator | [] |
|
250
|
+
| radius | number | The radius | User-defined radius | 75 |
|
251
|
+
| splitNumber | number | The splitNumber | User-defined splitNumber | 5 |
|
252
|
+
| shape | string | The shape | 'polygon', 'circle' | 'polygon' |
|
253
|
+
| splitArea | object | The splitArea | User-defined splitArea | {} |
|
@@ -1,52 +1,52 @@
|
|
1
|
-
<style>
|
2
|
-
body {
|
3
|
-
font-family: Arial, sans-serif;
|
4
|
-
display: flex;
|
5
|
-
justify-content: center;
|
6
|
-
align-items: center;
|
7
|
-
height: 100vh;
|
8
|
-
margin: 0;
|
9
|
-
}
|
10
|
-
|
11
|
-
.container {
|
12
|
-
text-align: center;
|
13
|
-
background-color: #ffffff;
|
14
|
-
padding: 50px;
|
15
|
-
margin-top: 5vh;
|
16
|
-
border-radius: 10px;
|
17
|
-
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
|
18
|
-
}
|
19
|
-
|
20
|
-
.container h1 {
|
21
|
-
font-size: 72px;
|
22
|
-
margin-bottom: 20px;
|
23
|
-
color: #ff5252;
|
24
|
-
}
|
25
|
-
|
26
|
-
.container p {
|
27
|
-
font-size: 24px;
|
28
|
-
margin-bottom: 30px;
|
29
|
-
}
|
30
|
-
|
31
|
-
.container a {
|
32
|
-
font-size: 18px;
|
33
|
-
text-decoration: none;
|
34
|
-
color: #2196f3;
|
35
|
-
border: 1px solid #2196f3;
|
36
|
-
padding: 10px 15px;
|
37
|
-
border-radius: 5px;
|
38
|
-
transition: background-color 0.3s, color 0.3s;
|
39
|
-
}
|
40
|
-
|
41
|
-
.container a:hover {
|
42
|
-
background-color: #2196f3;
|
43
|
-
color: #ffffff;
|
44
|
-
}
|
45
|
-
|
46
|
-
</style>
|
47
|
-
|
48
|
-
<div class="container">
|
49
|
-
<h1>404</h1>
|
50
|
-
<p>Oops! The page you're looking for doesn't exist.</p>
|
51
|
-
<a href="/">Go Home</a>
|
1
|
+
<style>
|
2
|
+
body {
|
3
|
+
font-family: Arial, sans-serif;
|
4
|
+
display: flex;
|
5
|
+
justify-content: center;
|
6
|
+
align-items: center;
|
7
|
+
height: 100vh;
|
8
|
+
margin: 0;
|
9
|
+
}
|
10
|
+
|
11
|
+
.container {
|
12
|
+
text-align: center;
|
13
|
+
background-color: #ffffff;
|
14
|
+
padding: 50px;
|
15
|
+
margin-top: 5vh;
|
16
|
+
border-radius: 10px;
|
17
|
+
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
|
18
|
+
}
|
19
|
+
|
20
|
+
.container h1 {
|
21
|
+
font-size: 72px;
|
22
|
+
margin-bottom: 20px;
|
23
|
+
color: #ff5252;
|
24
|
+
}
|
25
|
+
|
26
|
+
.container p {
|
27
|
+
font-size: 24px;
|
28
|
+
margin-bottom: 30px;
|
29
|
+
}
|
30
|
+
|
31
|
+
.container a {
|
32
|
+
font-size: 18px;
|
33
|
+
text-decoration: none;
|
34
|
+
color: #2196f3;
|
35
|
+
border: 1px solid #2196f3;
|
36
|
+
padding: 10px 15px;
|
37
|
+
border-radius: 5px;
|
38
|
+
transition: background-color 0.3s, color 0.3s;
|
39
|
+
}
|
40
|
+
|
41
|
+
.container a:hover {
|
42
|
+
background-color: #2196f3;
|
43
|
+
color: #ffffff;
|
44
|
+
}
|
45
|
+
|
46
|
+
</style>
|
47
|
+
|
48
|
+
<div class="container">
|
49
|
+
<h1>404</h1>
|
50
|
+
<p>Oops! The page you're looking for doesn't exist.</p>
|
51
|
+
<a href="/">Go Home</a>
|
52
52
|
</div>
|
@@ -1,11 +1,11 @@
|
|
1
|
-
<!-- _coverpage.md -->
|
2
|
-
|
3
|
-
![logo](./static/logo/logo_256x256.png)
|
4
|
-
|
5
|
-
# visualify.js <small>2.5.3</small>
|
6
|
-
|
7
|
-
> A magical data portal generator
|
8
|
-
|
9
|
-
[GitHub](https://github.com/
|
10
|
-
[Getting Started](#visualify)
|
11
|
-
|
1
|
+
<!-- _coverpage.md -->
|
2
|
+
|
3
|
+
![logo](./static/logo/logo_256x256.png)
|
4
|
+
|
5
|
+
# visualify.js <small>2.5.3</small>
|
6
|
+
|
7
|
+
> A magical data portal generator
|
8
|
+
|
9
|
+
[GitHub](https://github.com/usleolihao)
|
10
|
+
[Getting Started](#visualify)
|
11
|
+
|