mirror of
https://github.com/soybeanjs/soybean-admin.git
synced 2025-09-25 12:56:36 +08:00
feat(projects): 添加antv g2图表示例
ISSUES CLOSED: \
This commit is contained in:
parent
0a46ea0844
commit
44b022aefd
@ -26,6 +26,8 @@
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@antv/data-set": "^0.11.8",
|
||||
"@antv/g2": "^4.2.2",
|
||||
"@better-scroll/core": "^2.4.2",
|
||||
"@soybeanjs/vue-admin-layout": "^1.0.4",
|
||||
"@soybeanjs/vue-admin-tab": "^1.0.2",
|
||||
|
373
pnpm-lock.yaml
373
pnpm-lock.yaml
@ -2,6 +2,8 @@ lockfileVersion: 5.4
|
||||
|
||||
specifiers:
|
||||
'@amap/amap-jsapi-types': ^0.0.8
|
||||
'@antv/data-set': ^0.11.8
|
||||
'@antv/g2': ^4.2.2
|
||||
'@better-scroll/core': ^2.4.2
|
||||
'@commitlint/cli': ^17.0.1
|
||||
'@commitlint/config-conventional': ^17.0.0
|
||||
@ -71,6 +73,8 @@ specifiers:
|
||||
xgplayer: ^2.31.6
|
||||
|
||||
dependencies:
|
||||
'@antv/data-set': 0.11.8
|
||||
'@antv/g2': 4.2.2
|
||||
'@better-scroll/core': 2.4.2
|
||||
'@soybeanjs/vue-admin-layout': 1.0.4_vue@3.2.36
|
||||
'@soybeanjs/vue-admin-tab': 1.0.2_vue@3.2.36
|
||||
@ -167,6 +171,191 @@ packages:
|
||||
resolution: {integrity: sha512-CQkeV+oJxUazwjlHD0/3ZD08QWKuGQkhnrKo3e6ly5pd48VUpXbb77q0xMU4+vc2CkJnDS02Eq/M9ugyX20XZA==}
|
||||
dev: true
|
||||
|
||||
/@antv/adjust/0.2.5:
|
||||
resolution: {integrity: sha512-MfWZOkD9CqXRES6MBGRNe27Q577a72EIwyMnE29wIlPliFvJfWwsrONddpGU7lilMpVKecS3WAzOoip3RfPTRQ==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
tslib: 1.14.1
|
||||
dev: false
|
||||
|
||||
/@antv/attr/0.3.3:
|
||||
resolution: {integrity: sha512-7iSSRhYzZ7pYXZKTL1ECGhTdKVHPQx1Vj7yYVTAiyLMsWsLUAoMf0m6dT6msTs0SdrXHRbjzXavVXxRj/wZZJA==}
|
||||
dependencies:
|
||||
'@antv/color-util': 2.0.6
|
||||
'@antv/util': 2.0.17
|
||||
tslib: 1.14.1
|
||||
dev: false
|
||||
|
||||
/@antv/color-util/2.0.6:
|
||||
resolution: {integrity: sha512-KnPEaAH+XNJMjax9U35W67nzPI+QQ2x27pYlzmSIWrbj4/k8PGrARXfzDTjwoozHJY8qG62Z+Ww6Alhu2FctXQ==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/component/0.8.27:
|
||||
resolution: {integrity: sha512-FY9fgUBjEuWxQ4w7VbcMSwFr7pqnRf1/F1ja1weoEpNndKBlStNYWhXTx4p5uMJVLvMpXoFPqan7RzyP8rel6Q==}
|
||||
dependencies:
|
||||
'@antv/color-util': 2.0.6
|
||||
'@antv/dom-util': 2.0.4
|
||||
'@antv/g-base': 0.5.11
|
||||
'@antv/matrix-util': 3.1.0-beta.3
|
||||
'@antv/path-util': 2.0.15
|
||||
'@antv/scale': 0.3.18
|
||||
'@antv/util': 2.0.17
|
||||
fecha: 4.2.3
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/coord/0.3.1:
|
||||
resolution: {integrity: sha512-rFE94C8Xzbx4xmZnHh2AnlB3Qm1n5x0VT3OROy257IH6Rm4cuzv1+tZaUBATviwZd99S+rOY9telw/+6C9GbRw==}
|
||||
dependencies:
|
||||
'@antv/matrix-util': 3.1.0-beta.3
|
||||
'@antv/util': 2.0.17
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/data-set/0.11.8:
|
||||
resolution: {integrity: sha512-8/YDsfk4wNQdo/J9tfmzOuo9Y5nl0mB+sSZO+tEZsHFLUhMrioJGBMPkuW51Pn0zcVZPNivuMBi2sQKYCpCeew==}
|
||||
dependencies:
|
||||
'@antv/hierarchy': 0.6.8
|
||||
'@antv/util': 2.0.17
|
||||
d3-composite-projections: 1.4.0
|
||||
d3-dsv: 1.2.0
|
||||
d3-geo: 1.6.4
|
||||
d3-geo-projection: 2.1.2
|
||||
d3-hexjson: 1.1.1
|
||||
d3-hierarchy: 1.1.9
|
||||
d3-sankey: 0.9.1
|
||||
d3-voronoi: 1.1.4
|
||||
dagre: 0.8.5
|
||||
point-at-length: 1.1.0
|
||||
regression: 2.0.1
|
||||
simple-statistics: 6.1.1
|
||||
topojson-client: 3.1.0
|
||||
wolfy87-eventemitter: 5.2.9
|
||||
dev: false
|
||||
|
||||
/@antv/dom-util/2.0.4:
|
||||
resolution: {integrity: sha512-2shXUl504fKwt82T3GkuT4Uoc6p9qjCKnJ8gXGLSW4T1W37dqf9AV28aCfoVPHp2BUXpSsB+PAJX2rG/jLHsLQ==}
|
||||
dependencies:
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/event-emitter/0.1.3:
|
||||
resolution: {integrity: sha512-4ddpsiHN9Pd4UIlWuKVK1C4IiZIdbwQvy9i7DUSI3xNJ89FPUFt8lxDYj8GzzfdllV0NkJTRxnG+FvLk0llidg==}
|
||||
dev: false
|
||||
|
||||
/@antv/g-base/0.5.11:
|
||||
resolution: {integrity: sha512-10Hkq7XksVCqxZZrPkd6HTU9tb/+2meCVEMy/edhS4I/sokhcgC9m3fQP5bE8rA3EVKwELE7MJHZ98BEpVFqvQ==}
|
||||
dependencies:
|
||||
'@antv/event-emitter': 0.1.3
|
||||
'@antv/g-math': 0.1.7
|
||||
'@antv/matrix-util': 3.1.0-beta.3
|
||||
'@antv/path-util': 2.0.15
|
||||
'@antv/util': 2.0.17
|
||||
'@types/d3-timer': 2.0.1
|
||||
d3-ease: 1.0.7
|
||||
d3-interpolate: 1.4.0
|
||||
d3-timer: 1.0.10
|
||||
detect-browser: 5.3.0
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/g-canvas/0.5.12:
|
||||
resolution: {integrity: sha512-iJ/muwwqCCNONVlPIzv/7OL5iLguaKRj2BxNMytUO3TWwamM+kHkiyYEOkS0dPn9h/hBsHYlLUluSVz2Fp6/bw==}
|
||||
dependencies:
|
||||
'@antv/g-base': 0.5.11
|
||||
'@antv/g-math': 0.1.7
|
||||
'@antv/matrix-util': 3.1.0-beta.3
|
||||
'@antv/path-util': 2.0.15
|
||||
'@antv/util': 2.0.17
|
||||
gl-matrix: 3.4.3
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/g-math/0.1.7:
|
||||
resolution: {integrity: sha512-xGyXaloD1ynfp7gS4VuV+MjSptZIwHvLHr8ekXJSFAeWPYLu84yOW2wOZHDdp1bzDAIuRv6xDBW58YGHrWsFcA==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
gl-matrix: 3.4.3
|
||||
dev: false
|
||||
|
||||
/@antv/g-svg/0.5.6:
|
||||
resolution: {integrity: sha512-Xve1EUGk4HMbl2nq4ozR4QLh6GyoZ8Xw/+9kHYI4B5P2lIUQU95MuRsaLFfW5NNpZDx85ZeH97tqEmC9L96E7A==}
|
||||
dependencies:
|
||||
'@antv/g-base': 0.5.11
|
||||
'@antv/g-math': 0.1.7
|
||||
'@antv/util': 2.0.17
|
||||
detect-browser: 5.3.0
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/g2/4.2.2:
|
||||
resolution: {integrity: sha512-wAzVlbVUWg4Oum4tNgBy39Wltw2jwHW9+aIkK6CjXbv2gSrxGAQclNfpBZ37FPQGVf7/DTlMTw6/sdZbnuTyJA==}
|
||||
dependencies:
|
||||
'@antv/adjust': 0.2.5
|
||||
'@antv/attr': 0.3.3
|
||||
'@antv/color-util': 2.0.6
|
||||
'@antv/component': 0.8.27
|
||||
'@antv/coord': 0.3.1
|
||||
'@antv/dom-util': 2.0.4
|
||||
'@antv/event-emitter': 0.1.3
|
||||
'@antv/g-base': 0.5.11
|
||||
'@antv/g-canvas': 0.5.12
|
||||
'@antv/g-svg': 0.5.6
|
||||
'@antv/matrix-util': 3.1.0-beta.3
|
||||
'@antv/path-util': 2.0.15
|
||||
'@antv/scale': 0.3.18
|
||||
'@antv/util': 2.0.17
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/hierarchy/0.6.8:
|
||||
resolution: {integrity: sha512-wVzUl+pxny5gyGJ2mkWx8IiEypX6bnMHgr/NILgbxY6shoy0Vf4FhZpI3CY8Ez7bQT6js8fMkB2NymPW7d7i8A==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
dev: false
|
||||
|
||||
/@antv/matrix-util/3.0.4:
|
||||
resolution: {integrity: sha512-BAPyu6dUliHcQ7fm9hZSGKqkwcjEDVLVAstlHULLvcMZvANHeLXgHEgV7JqcAV/GIhIz8aZChIlzM1ZboiXpYQ==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
gl-matrix: 3.4.3
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/matrix-util/3.1.0-beta.3:
|
||||
resolution: {integrity: sha512-W2R6Za3A6CmG51Y/4jZUM/tFgYSq7vTqJL1VD9dKrvwxS4sE0ZcXINtkp55CdyBwJ6Cwm8pfoRpnD4FnHahN0A==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
gl-matrix: 3.4.3
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/path-util/2.0.15:
|
||||
resolution: {integrity: sha512-R2VLZ5C8PLPtr3VciNyxtjKqJ0XlANzpFb5sE9GE61UQqSRuSVSzIakMxjEPrpqbgc+s+y8i+fmc89Snu7qbNw==}
|
||||
dependencies:
|
||||
'@antv/matrix-util': 3.0.4
|
||||
'@antv/util': 2.0.17
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/scale/0.3.18:
|
||||
resolution: {integrity: sha512-GHwE6Lo7S/Q5fgaLPaCsW+CH+3zl4aXpnN1skOiEY0Ue9/u+s2EySv6aDXYkAqs//i0uilMDD/0/4n8caX9U9w==}
|
||||
dependencies:
|
||||
'@antv/util': 2.0.17
|
||||
fecha: 4.2.3
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@antv/util/2.0.17:
|
||||
resolution: {integrity: sha512-o6I9hi5CIUvLGDhth0RxNSFDRwXeywmt6ExR4+RmVAzIi48ps6HUy+svxOCayvrPBN37uE6TAc2KDofRo0nK9Q==}
|
||||
dependencies:
|
||||
csstype: 3.0.11
|
||||
tslib: 2.4.0
|
||||
dev: false
|
||||
|
||||
/@babel/code-frame/7.16.7:
|
||||
resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
@ -894,6 +1083,10 @@ packages:
|
||||
resolution: {integrity: sha512-BG7fQKZ689HIoc5h+6D2Dgq1fABRa0RbBWKBd9SP/MVRVXROflpm5fhwyATX5duFmbStzyzyycPB8qUYKDH3NA==}
|
||||
dev: true
|
||||
|
||||
/@types/d3-timer/2.0.1:
|
||||
resolution: {integrity: sha512-TF8aoF5cHcLO7W7403blM7L1T+6NF3XMyN3fxyUolq2uOcFeicG/khQg/dGxiCJWoAcmYulYN7LYSRKO54IXaA==}
|
||||
dev: false
|
||||
|
||||
/@types/estree/0.0.39:
|
||||
resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==}
|
||||
dev: true
|
||||
@ -1454,6 +1647,10 @@ packages:
|
||||
through: 2.3.8
|
||||
dev: true
|
||||
|
||||
/abs-svg-path/0.1.1:
|
||||
resolution: {integrity: sha512-d8XPSGjfyzlXC3Xx891DJRyZfqk5JU0BJrDQcsWomFIV1/BIzPW5HDH5iDdWpqWaav0YVIEzT1RHTwWr0FFshA==}
|
||||
dev: false
|
||||
|
||||
/acorn-jsx/5.3.2_acorn@8.7.1:
|
||||
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
|
||||
peerDependencies:
|
||||
@ -2301,6 +2498,118 @@ packages:
|
||||
type: 1.2.0
|
||||
dev: false
|
||||
|
||||
/d3-array/1.2.4:
|
||||
resolution: {integrity: sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==}
|
||||
dev: false
|
||||
|
||||
/d3-array/2.12.1:
|
||||
resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==}
|
||||
dependencies:
|
||||
internmap: 1.0.1
|
||||
dev: false
|
||||
|
||||
/d3-collection/1.0.7:
|
||||
resolution: {integrity: sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==}
|
||||
dev: false
|
||||
|
||||
/d3-color/1.4.1:
|
||||
resolution: {integrity: sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q==}
|
||||
dev: false
|
||||
|
||||
/d3-composite-projections/1.4.0:
|
||||
resolution: {integrity: sha512-csygyxdRfy7aUYRPea23veM6sjisdHI+DNd0nHcAGMd2LyL2lklr+xLRzHiJ+hy1HGp6YgAtbqdJR8CsLolrNQ==}
|
||||
dependencies:
|
||||
d3-geo: 2.0.2
|
||||
d3-path: 2.0.0
|
||||
dev: false
|
||||
|
||||
/d3-dsv/1.2.0:
|
||||
resolution: {integrity: sha512-9yVlqvZcSOMhCYzniHE7EVUws7Fa1zgw+/EAV2BxJoG3ME19V6BQFBwI855XQDsxyOuG7NibqRMTtiF/Qup46g==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
commander: 2.20.3
|
||||
iconv-lite: 0.4.24
|
||||
rw: 1.3.3
|
||||
dev: false
|
||||
|
||||
/d3-ease/1.0.7:
|
||||
resolution: {integrity: sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ==}
|
||||
dev: false
|
||||
|
||||
/d3-geo-projection/2.1.2:
|
||||
resolution: {integrity: sha512-zft6RRvPaB1qplTodBVcSH5Ftvmvvg0qoDiqpt+fyNthGr/qr+DD30cizNDluXjW7jmo7EKUTjvFCAHofv08Ow==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
commander: 2.20.3
|
||||
d3-array: 1.2.4
|
||||
d3-geo: 1.6.4
|
||||
dev: false
|
||||
|
||||
/d3-geo/1.6.4:
|
||||
resolution: {integrity: sha512-O5Q3iftLc6/EdU1MHUm+O29NoKKN/cyQtySnD9/yEEcinN+q4ng+H56e2Yn1YWdfZBoiaRVtR2NoJ3ivKX5ptQ==}
|
||||
dependencies:
|
||||
d3-array: 1.2.4
|
||||
dev: false
|
||||
|
||||
/d3-geo/2.0.2:
|
||||
resolution: {integrity: sha512-8pM1WGMLGFuhq9S+FpPURxic+gKzjluCD/CHTuUF3mXMeiCo0i6R0tO1s4+GArRFde96SLcW/kOFRjoAosPsFA==}
|
||||
dependencies:
|
||||
d3-array: 2.12.1
|
||||
dev: false
|
||||
|
||||
/d3-hexjson/1.1.1:
|
||||
resolution: {integrity: sha512-WMF1juFJwAx6LzdEVKlsCGZz+7QUG7VMJDtg8uD3cfNwWOTgMiy6qBRRGU7LSY2KbmEObu3BV5ZQbq9l/BvUZQ==}
|
||||
dependencies:
|
||||
d3-array: 1.2.4
|
||||
dev: false
|
||||
|
||||
/d3-hierarchy/1.1.9:
|
||||
resolution: {integrity: sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==}
|
||||
dev: false
|
||||
|
||||
/d3-interpolate/1.4.0:
|
||||
resolution: {integrity: sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA==}
|
||||
dependencies:
|
||||
d3-color: 1.4.1
|
||||
dev: false
|
||||
|
||||
/d3-path/1.0.9:
|
||||
resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==}
|
||||
dev: false
|
||||
|
||||
/d3-path/2.0.0:
|
||||
resolution: {integrity: sha512-ZwZQxKhBnv9yHaiWd6ZU4x5BtCQ7pXszEV9CU6kRgwIQVQGLMv1oiL4M+MK/n79sYzsj+gcgpPQSctJUsLN7fA==}
|
||||
dev: false
|
||||
|
||||
/d3-sankey/0.9.1:
|
||||
resolution: {integrity: sha512-nnRkDaUMjBdeuGg+kWGdA+tjG1AVTnJ+Ykw7ff7CZHVI17Hm5sy8n0UXykVffn13aNHwK5wPOdOt1gS1ZEaF+A==}
|
||||
dependencies:
|
||||
d3-array: 1.2.4
|
||||
d3-collection: 1.0.7
|
||||
d3-shape: 1.3.7
|
||||
dev: false
|
||||
|
||||
/d3-shape/1.3.7:
|
||||
resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==}
|
||||
dependencies:
|
||||
d3-path: 1.0.9
|
||||
dev: false
|
||||
|
||||
/d3-timer/1.0.10:
|
||||
resolution: {integrity: sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==}
|
||||
dev: false
|
||||
|
||||
/d3-voronoi/1.1.4:
|
||||
resolution: {integrity: sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg==}
|
||||
dev: false
|
||||
|
||||
/dagre/0.8.5:
|
||||
resolution: {integrity: sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==}
|
||||
dependencies:
|
||||
graphlib: 2.1.8
|
||||
lodash: 4.17.21
|
||||
dev: false
|
||||
|
||||
/danmu.js/0.5.10:
|
||||
resolution: {integrity: sha512-zLpSd5Yi+fxVVd0GHjrf5lZA45KKpbvc4Q8BbSVO3OdmCBkoB2vlDCGnVn18cnKpTNqi8Soy7AnzUw1YcqtzUA==}
|
||||
dependencies:
|
||||
@ -2436,6 +2745,10 @@ packages:
|
||||
resolution: {integrity: sha512-QqkneF8LrYmwATMdnuD2MLI3GHQIcBnG6qFC2q9bSH430VTCDAVjcspPmUaKhPGtAtPAftIUFqY1obQYQuwmbg==}
|
||||
dev: true
|
||||
|
||||
/detect-browser/5.3.0:
|
||||
resolution: {integrity: sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==}
|
||||
dev: false
|
||||
|
||||
/detect-file/1.0.0:
|
||||
resolution: {integrity: sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
@ -3270,6 +3583,10 @@ packages:
|
||||
reusify: 1.0.4
|
||||
dev: true
|
||||
|
||||
/fecha/4.2.3:
|
||||
resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==}
|
||||
dev: false
|
||||
|
||||
/figures/2.0.0:
|
||||
resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==}
|
||||
engines: {node: '>=4'}
|
||||
@ -3569,6 +3886,10 @@ packages:
|
||||
ini: 1.3.8
|
||||
dev: true
|
||||
|
||||
/gl-matrix/3.4.3:
|
||||
resolution: {integrity: sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==}
|
||||
dev: false
|
||||
|
||||
/glob-parent/5.1.2:
|
||||
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
|
||||
engines: {node: '>= 6'}
|
||||
@ -3665,6 +3986,12 @@ packages:
|
||||
/graceful-fs/4.2.10:
|
||||
resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
|
||||
|
||||
/graphlib/2.1.8:
|
||||
resolution: {integrity: sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==}
|
||||
dependencies:
|
||||
lodash: 4.17.21
|
||||
dev: false
|
||||
|
||||
/gzip-size/6.0.0:
|
||||
resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
|
||||
engines: {node: '>=10'}
|
||||
@ -3792,7 +4119,6 @@ packages:
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
safer-buffer: 2.1.2
|
||||
dev: true
|
||||
|
||||
/ignore/5.2.0:
|
||||
resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
|
||||
@ -3864,6 +4190,10 @@ packages:
|
||||
side-channel: 1.0.4
|
||||
dev: true
|
||||
|
||||
/internmap/1.0.1:
|
||||
resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==}
|
||||
dev: false
|
||||
|
||||
/is-arrayish/0.2.1:
|
||||
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
|
||||
dev: true
|
||||
@ -4047,6 +4377,10 @@ packages:
|
||||
is-docker: 2.2.1
|
||||
dev: true
|
||||
|
||||
/isarray/0.0.1:
|
||||
resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==}
|
||||
dev: false
|
||||
|
||||
/isarray/1.0.0:
|
||||
resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
|
||||
dev: true
|
||||
@ -4818,6 +5152,10 @@ packages:
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/parse-svg-path/0.1.2:
|
||||
resolution: {integrity: sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==}
|
||||
dev: false
|
||||
|
||||
/parseurl/1.3.3:
|
||||
resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
|
||||
engines: {node: '>= 0.8'}
|
||||
@ -4949,6 +5287,14 @@ packages:
|
||||
vue-demi: 0.12.5_vue@3.2.36
|
||||
dev: false
|
||||
|
||||
/point-at-length/1.1.0:
|
||||
resolution: {integrity: sha512-nNHDk9rNEh/91o2Y8kHLzBLNpLf80RYd2gCun9ss+V0ytRSf6XhryBTx071fesktjbachRmGuUbId+JQmzhRXw==}
|
||||
dependencies:
|
||||
abs-svg-path: 0.1.1
|
||||
isarray: 0.0.1
|
||||
parse-svg-path: 0.1.2
|
||||
dev: false
|
||||
|
||||
/postcss-selector-parser/6.0.10:
|
||||
resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==}
|
||||
engines: {node: '>=4'}
|
||||
@ -5125,6 +5471,10 @@ packages:
|
||||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/regression/2.0.1:
|
||||
resolution: {integrity: sha512-A4XYsc37dsBaNOgEjkJKzfJlE394IMmUPlI/p3TTI9u3T+2a+eox5Pr/CPUqF0eszeWZJPAc6QkroAhuUpWDJQ==}
|
||||
dev: false
|
||||
|
||||
/relateurl/0.2.7:
|
||||
resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==}
|
||||
engines: {node: '>= 0.10'}
|
||||
@ -5247,6 +5597,10 @@ packages:
|
||||
queue-microtask: 1.2.3
|
||||
dev: true
|
||||
|
||||
/rw/1.3.3:
|
||||
resolution: {integrity: sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==}
|
||||
dev: false
|
||||
|
||||
/rxjs/6.6.7:
|
||||
resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==}
|
||||
engines: {npm: '>=2.0.0'}
|
||||
@ -5270,7 +5624,6 @@ packages:
|
||||
|
||||
/safer-buffer/2.1.2:
|
||||
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
|
||||
dev: true
|
||||
|
||||
/sass/1.52.1:
|
||||
resolution: {integrity: sha512-fSzYTbr7z8oQnVJ3Acp9hV80dM1fkMN7mSD/25mpcct9F7FPBMOI8krEYALgU1aZoqGhQNhTPsuSmxjnIvAm4Q==}
|
||||
@ -5345,6 +5698,10 @@ packages:
|
||||
resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
|
||||
dev: true
|
||||
|
||||
/simple-statistics/6.1.1:
|
||||
resolution: {integrity: sha512-zGwn0DDRa9Zel4H4n2pjTFIyGoAGpnpjrGIctreCxj5XWrcx9v7Xy7270FkC967WMmcvuc8ZU7m0ZG+hGN7gAA==}
|
||||
dev: false
|
||||
|
||||
/sirv/2.0.2:
|
||||
resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==}
|
||||
engines: {node: '>= 10'}
|
||||
@ -5716,6 +6073,13 @@ packages:
|
||||
is-number: 7.0.0
|
||||
dev: true
|
||||
|
||||
/topojson-client/3.1.0:
|
||||
resolution: {integrity: sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
commander: 2.20.3
|
||||
dev: false
|
||||
|
||||
/totalist/3.0.0:
|
||||
resolution: {integrity: sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==}
|
||||
engines: {node: '>=6'}
|
||||
@ -5778,7 +6142,6 @@ packages:
|
||||
|
||||
/tslib/1.14.1:
|
||||
resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
|
||||
dev: true
|
||||
|
||||
/tslib/2.3.0:
|
||||
resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==}
|
||||
@ -6310,6 +6673,10 @@ packages:
|
||||
isexe: 2.0.0
|
||||
dev: true
|
||||
|
||||
/wolfy87-eventemitter/5.2.9:
|
||||
resolution: {integrity: sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==}
|
||||
dev: false
|
||||
|
||||
/word-wrap/1.2.3:
|
||||
resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
@ -1,9 +1,303 @@
|
||||
<template>
|
||||
<div>
|
||||
<h3>antv</h3>
|
||||
</div>
|
||||
<n-space :vertical="true" :size="16">
|
||||
<n-card :bordered="false" class="rounded-16px shadow-sm">
|
||||
<div ref="pieRef" class="h-400px"></div>
|
||||
</n-card>
|
||||
<n-card :bordered="false" class="rounded-16px shadow-sm">
|
||||
<div ref="lineRef" class="h-400px"></div>
|
||||
</n-card>
|
||||
<n-card :bordered="false" class="rounded-16px shadow-sm">
|
||||
<div ref="barRef" class="h-400px"></div>
|
||||
</n-card>
|
||||
<n-card :bordered="false" class="rounded-16px shadow-sm">
|
||||
<div ref="scatterRef" class="h-400px"></div>
|
||||
</n-card>
|
||||
</n-space>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts"></script>
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted } from 'vue';
|
||||
import DataSet from '@antv/data-set';
|
||||
import { Chart } from '@antv/g2';
|
||||
|
||||
const pieRef = ref<HTMLElement | null>(null);
|
||||
const lineRef = ref<HTMLElement | null>(null);
|
||||
const barRef = ref<HTMLElement | null>(null);
|
||||
const scatterRef = ref<HTMLElement | null>(null);
|
||||
|
||||
function renderPieChart() {
|
||||
if (!pieRef.value) return;
|
||||
|
||||
const data = [
|
||||
{ item: 'rose 1', count: 40, percent: 0.4 },
|
||||
{ item: 'rose 2', count: 40, percent: 0.4 },
|
||||
{ item: 'rose 3', count: 40, percent: 0.4 },
|
||||
{ item: 'rose 4', count: 40, percent: 0.4 },
|
||||
{ item: 'rose 5', count: 21, percent: 0.21 },
|
||||
{ item: 'rose 6', count: 17, percent: 0.17 },
|
||||
{ item: 'rose 7', count: 13, percent: 0.13 },
|
||||
{ item: 'rose 8', count: 9, percent: 0.09 }
|
||||
];
|
||||
|
||||
const chart = new Chart({
|
||||
container: pieRef.value,
|
||||
autoFit: true
|
||||
});
|
||||
|
||||
chart.data(data);
|
||||
|
||||
chart.coordinate('theta', {
|
||||
radius: 0.85
|
||||
});
|
||||
|
||||
chart.scale('percent', {
|
||||
formatter: (val: number) => `${val * 100}%`
|
||||
});
|
||||
chart.tooltip({
|
||||
showTitle: false,
|
||||
showMarkers: false
|
||||
});
|
||||
chart.legend({ position: 'top' });
|
||||
chart.axis(false); // 关闭坐标轴
|
||||
chart
|
||||
.interval()
|
||||
.adjust('stack')
|
||||
.position('percent')
|
||||
.color('item')
|
||||
.label('percent', {
|
||||
offset: -40,
|
||||
style: {
|
||||
textAlign: 'center',
|
||||
shadowBlur: 2,
|
||||
shadowColor: 'rgba(0, 0, 0, .45)',
|
||||
fill: '#fff'
|
||||
}
|
||||
})
|
||||
.tooltip('item*percent', (item, percent) => {
|
||||
return {
|
||||
name: item,
|
||||
value: `${percent * 100}%`
|
||||
};
|
||||
})
|
||||
.style({
|
||||
lineWidth: 1,
|
||||
stroke: '#fff'
|
||||
});
|
||||
chart.interaction('element-single-selected');
|
||||
chart.render();
|
||||
}
|
||||
|
||||
function renderLineChart() {
|
||||
fetch('https://gw.alipayobjects.com/os/antvdemo/assets/data/terrorism.json')
|
||||
.then(res => res.json())
|
||||
.then(data => {
|
||||
const ds = new DataSet();
|
||||
if (!lineRef.value) return;
|
||||
|
||||
const chart = new Chart({
|
||||
container: lineRef.value,
|
||||
autoFit: true,
|
||||
syncViewPadding: true
|
||||
});
|
||||
|
||||
chart.scale({
|
||||
Deaths: {
|
||||
sync: true,
|
||||
nice: true
|
||||
},
|
||||
death: {
|
||||
sync: true,
|
||||
nice: true
|
||||
}
|
||||
});
|
||||
|
||||
const dv1 = ds.createView().source(data);
|
||||
dv1.transform({
|
||||
type: 'map',
|
||||
callback: (row: any) => {
|
||||
const currentRow = { ...row };
|
||||
if (typeof row.Deaths === 'string') {
|
||||
currentRow.Deaths = row.Deaths.replace(',', '');
|
||||
}
|
||||
currentRow.Deaths = parseInt(row.Deaths, 10);
|
||||
currentRow.death = row.Deaths;
|
||||
currentRow.year = row.Year;
|
||||
return currentRow;
|
||||
}
|
||||
});
|
||||
const view1 = chart.createView();
|
||||
view1.data(dv1.rows);
|
||||
view1.axis('Year', {
|
||||
subTickLine: {
|
||||
count: 3,
|
||||
length: 3
|
||||
},
|
||||
tickLine: {
|
||||
length: 6
|
||||
}
|
||||
});
|
||||
view1.axis('Deaths', {
|
||||
label: {
|
||||
formatter: text => {
|
||||
return text.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
|
||||
}
|
||||
}
|
||||
});
|
||||
view1.line().position('Year*Deaths');
|
||||
|
||||
const dv2 = ds.createView().source(dv1.rows);
|
||||
dv2.transform({
|
||||
type: 'regression',
|
||||
method: 'polynomial',
|
||||
fields: ['year', 'death'],
|
||||
bandwidth: 0.1,
|
||||
as: ['year', 'death']
|
||||
});
|
||||
|
||||
const view2 = chart.createView();
|
||||
view2.axis(false);
|
||||
view2.data(dv2.rows);
|
||||
view2
|
||||
.line()
|
||||
.position('year*death')
|
||||
.style({
|
||||
stroke: '#969696',
|
||||
lineDash: [3, 3]
|
||||
})
|
||||
.tooltip(false);
|
||||
view1.annotation().text({
|
||||
content: '趋势线',
|
||||
position: ['1970', 2500],
|
||||
style: {
|
||||
fill: '#8c8c8c',
|
||||
fontSize: 14,
|
||||
fontWeight: 300
|
||||
},
|
||||
offsetY: -70
|
||||
});
|
||||
chart.render();
|
||||
});
|
||||
}
|
||||
|
||||
function renderBarChart() {
|
||||
if (!barRef.value) return;
|
||||
|
||||
const data = [
|
||||
{ type: '未知', value: 654, percent: 0.02 },
|
||||
{ type: '17 岁以下', value: 654, percent: 0.02 },
|
||||
{ type: '18-24 岁', value: 4400, percent: 0.2 },
|
||||
{ type: '25-29 岁', value: 5300, percent: 0.24 },
|
||||
{ type: '30-39 岁', value: 6200, percent: 0.28 },
|
||||
{ type: '40-49 岁', value: 3300, percent: 0.14 },
|
||||
{ type: '50 岁以上', value: 1500, percent: 0.06 }
|
||||
];
|
||||
|
||||
const chart = new Chart({
|
||||
container: barRef.value,
|
||||
autoFit: true,
|
||||
height: 500,
|
||||
padding: [50, 20, 50, 20]
|
||||
});
|
||||
chart.data(data);
|
||||
chart.scale('value', {
|
||||
alias: '销售额(万)'
|
||||
});
|
||||
|
||||
chart.axis('type', {
|
||||
tickLine: {
|
||||
alignTick: false
|
||||
}
|
||||
});
|
||||
chart.axis('value', false);
|
||||
|
||||
chart.tooltip({
|
||||
showMarkers: false
|
||||
});
|
||||
chart.interval().position('type*value');
|
||||
chart.interaction('element-active');
|
||||
|
||||
// 添加文本标注
|
||||
data.forEach(item => {
|
||||
chart
|
||||
.annotation()
|
||||
.text({
|
||||
position: [item.type, item.value],
|
||||
content: item.value,
|
||||
style: {
|
||||
textAlign: 'center'
|
||||
},
|
||||
offsetY: -30
|
||||
})
|
||||
.text({
|
||||
position: [item.type, item.value],
|
||||
content: `${(item.percent * 100).toFixed(0)}%`,
|
||||
style: {
|
||||
textAlign: 'center'
|
||||
},
|
||||
offsetY: -12
|
||||
});
|
||||
});
|
||||
chart.render();
|
||||
}
|
||||
|
||||
function renderScatterChart() {
|
||||
fetch('https://gw.alipayobjects.com/os/antvdemo/assets/data/scatter.json')
|
||||
.then(res => res.json())
|
||||
.then(data => {
|
||||
if (!scatterRef.value) return;
|
||||
|
||||
const chart = new Chart({
|
||||
container: scatterRef.value,
|
||||
autoFit: true,
|
||||
height: 500
|
||||
});
|
||||
chart.data(data);
|
||||
chart.scale({
|
||||
height: { nice: true },
|
||||
weight: { nice: true }
|
||||
});
|
||||
chart.tooltip({
|
||||
showTitle: false,
|
||||
showCrosshairs: true,
|
||||
crosshairs: {
|
||||
type: 'xy'
|
||||
},
|
||||
itemTpl:
|
||||
'<li class="g2-tooltip-list-item" data-index={index} style="margin-bottom:4px;">' +
|
||||
'<span style="background-color:{color};" class="g2-tooltip-marker"></span>' +
|
||||
'{name}<br/>' +
|
||||
'{value}' +
|
||||
'</li>'
|
||||
});
|
||||
chart
|
||||
.point()
|
||||
.position('height*weight')
|
||||
.color('gender')
|
||||
.shape('circle')
|
||||
.tooltip('gender*height*weight', (gender, height, weight) => {
|
||||
return {
|
||||
name: gender,
|
||||
value: `${height}(cm), ${weight}(kg)`
|
||||
};
|
||||
})
|
||||
.style({
|
||||
fillOpacity: 0.85
|
||||
});
|
||||
chart.interaction('legend-highlight');
|
||||
chart.render();
|
||||
});
|
||||
}
|
||||
|
||||
function init() {
|
||||
renderPieChart();
|
||||
renderLineChart();
|
||||
renderBarChart();
|
||||
renderScatterChart();
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
init();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style scoped></style>
|
||||
|
Loading…
Reference in New Issue
Block a user