echarts词云图是echarts的一个扩展
https://echarts.apache.org/zh/download-extension.html
1.安装依赖
npm install echarts npm install echarts-wordcloud
2.main.js引入
import echarts from \'echarts\'; Vue.prototype.$echarts = echarts
3.在用到的组件中引入扩展
<script> import \"echarts-wordcloud/dist/echarts-wordcloud\"; import \"echarts-wordcloud/dist/echarts-wordcloud.min\"; </script>
4.配置
<template> <div class=\"result\"> <el-tabs type=\"border-card\" v-model=\"name\"> <el-tab-pane label=\"各省累计确诊\" name=\"0\"> <div ref=\"chart1\" style=\"width: 800px;height:600px;\"></div> </el-tab-pane> <el-tab-pane label=\"各省现有确诊\" name=\"1\"> <div ref=\"chart2\" style=\"width: 800px;height:600px;\" class=\"charts-two\"></div> </el-tab-pane> <el-tab-pane label=\"各市累计确诊\" name=\"2\"> <div ref=\"chart3\" style=\"width: 800px;height:600px;\"></div> </el-tab-pane> <el-tab-pane label=\"各市现有确诊\" name=\"3\"> <div ref=\"chart4\" style=\"width: 800px;height:600px;\"></div> </el-tab-pane> </el-tabs> </div> </template> // 词云图 <script> import * as echarts from \"echarts\"; import \"echarts-wordcloud/dist/echarts-wordcloud\"; import \"echarts-wordcloud/dist/echarts-wordcloud.min\"; export default { name: \"VisitShow\", data() { return { userVisitNum: [], date: [], goodVisitNum: [], goodsName: [], name: \"0\", }; }, mounted() { this.showEeharts(); }, methods: { showEeharts() { var chart1 = echarts.init(this.$refs.chart1); var chart2 = echarts.init(this.$refs.chart2); var chart3 = echarts.init(this.$refs.chart3); var chart4 = echarts.init(this.$refs.chart4); var data1 = [ {\'name\': \'香港\', \'value\': 11801}, {\'name\': \'台湾\', \'value\': 1178}, {\'name\': \'上海\', \'value\': 2006}, {\'name\': \'广东\', \'value\': 2365}, {\'name\': \'云南\', \'value\': 347}, {\'name\': \'四川\', \'value\': 992}, {\'name\': \'福建\', \'value\': 595}, {\'name\': \'浙江\', \'value\': 1345}, {\'name\': \'海南\', \'value\': 188}, {\'name\': \'江苏\', \'value\': 720}, {\'name\': \'天津\', \'value\': 387}, {\'name\': \'山西\', \'value\': 251}, {\'name\': \'广西\', \'value\': 275}, {\'name\': \'陕西\', \'value\': 592}, {\'name\': \'湖北\', \'value\': 38158}, {\'name\': \'重庆\', \'value\': 597}, {\'name\': \'内蒙古\', \'value\': 382}, {\'name\': \'湖南\', \'value\': 1045}, {\'name\': \'山东\', \'value\': 879}, {\'name\': \'北京\', \'value\': 1057}, {\'name\': \'河南\', \'value\': 1312}, {\'name\': \'甘肃\', \'value\': 193}, {\'name\': \'西藏\', \'value\': 1}, {\'name\': \'吉林\', \'value\': 573}, {\'name\': \'河北\', \'value\': 1317}, {\'name\': \'青海\', \'value\': 18}, {\'name\': \'澳门\', \'value\': 49}, {\'name\': \'新疆\', \'value\': 980}, {\'name\': \'辽宁\', \'value\': 408}, {\'name\': \'安徽\', \'value\': 994}, {\'name\': \'黑龙江\', \'value\': 1610}, {\'name\': \'贵州\', \'value\': 147}, {\'name\': \'江西\', \'value\': 937}, {\'name\': \'宁夏\', \'value\': 75} ] var data2 = [ {\'name\': \'香港\', \'value\': 118}, {\'name\': \'台湾\', \'value\': 89}, {\'name\': \'上海\', \'value\': 56}, {\'name\': \'广东\', \'value\': 51}, {\'name\': \'云南\', \'value\': 46}, {\'name\': \'四川\', \'value\': 30}, {\'name\': \'福建\', \'value\': 25}, {\'name\': \'浙江\', \'value\': 22}, {\'name\': \'海南\', \'value\': 17}, {\'name\': \'江苏\', \'value\': 8}, {\'name\': \'天津\', \'value\': 7}, {\'name\': \'山西\', \'value\': 7}, {\'name\': \'广西\', \'value\': 7}, {\'name\': \'陕西\', \'value\': 6}, {\'name\': \'湖北\', \'value\': 6}, {\'name\': \'重庆\', \'value\': 6}, {\'name\': \'内蒙古\', \'value\': 4}, {\'name\': \'湖南\', \'value\': 4}, {\'name\': \'山东\', \'value\': 3}, {\'name\': \'北京\', \'value\': 2}, {\'name\': \'河南\', \'value\': 1}, {\'name\': \'甘肃\', \'value\': 1}, {\'name\': \'西藏\', \'value\': 0}, {\'name\': \'吉林\', \'value\': 0}, {\'name\': \'河北\', \'value\': 0}, {\'name\': \'青海\', \'value\': 0}, {\'name\': \'澳门\', \'value\': 0}, {\'name\': \'新疆\', \'value\': 10}, {\'name\': \'辽宁\', \'value\': 0}, {\'name\': \'安徽\', \'value\': 0}, {\'name\': \'黑龙江\', \'value\': 0}, {\'name\': \'贵州\', \'value\': 0}, {\'name\': \'江西\', \'value\': 0}, {\'name\': \'宁夏\', \'value\': 0} ] var data3 = [ {\'name\': \'香港\', \'value\': 11801}, {\'name\': \'台湾\', \'value\': 1178}, {\'name\': \'上海\', \'value\': 2006}, {\'name\': \'广东\', \'value\': 2365}, {\'name\': \'云南\', \'value\': 347}, {\'name\': \'四川\', \'value\': 992}, {\'name\': \'福建\', \'value\': 595}, {\'name\': \'浙江\', \'value\': 1345}, {\'name\': \'海南\', \'value\': 188}, {\'name\': \'江苏\', \'value\': 720}, {\'name\': \'天津\', \'value\': 387}, {\'name\': \'山西\', \'value\': 251}, {\'name\': \'广西\', \'value\': 275}, {\'name\': \'陕西\', \'value\': 592}, {\'name\': \'湖北\', \'value\': 38158}, {\'name\': \'重庆\', \'value\': 597}, {\'name\': \'内蒙古\', \'value\': 382}, {\'name\': \'湖南\', \'value\': 1045}, {\'name\': \'山东\', \'value\': 879}, {\'name\': \'北京\', \'value\': 1057}, {\'name\': \'河南\', \'value\': 1312}, {\'name\': \'甘肃\', \'value\': 193}, {\'name\': \'西藏\', \'value\': 1}, {\'name\': \'吉林\', \'value\': 573}, {\'name\': \'河北\', \'value\': 1317}, {\'name\': \'青海\', \'value\': 18}, {\'name\': \'澳门\', \'value\': 49}, {\'name\': \'新疆\', \'value\': 980}, {\'name\': \'辽宁\', \'value\': 408}, {\'name\': \'安徽\', \'value\': 994}, {\'name\': \'黑龙江\', \'value\': 1610}, {\'name\': \'贵州\', \'value\': 147}, {\'name\': \'江西\', \'value\': 937}, {\'name\': \'宁夏\', \'value\': 75} ] var data4 = [ {\'name\': \'香港\', \'value\': 118}, {\'name\': \'台湾\', \'value\': 89}, {\'name\': \'上海\', \'value\': 56}, {\'name\': \'广东\', \'value\': 51}, {\'name\': \'云南\', \'value\': 46}, {\'name\': \'四川\', \'value\': 30}, {\'name\': \'福建\', \'value\': 25}, {\'name\': \'浙江\', \'value\': 22}, {\'name\': \'海南\', \'value\': 17}, {\'name\': \'江苏\', \'value\': 8}, {\'name\': \'天津\', \'value\': 7}, {\'name\': \'山西\', \'value\': 7}, {\'name\': \'广西\', \'value\': 7}, {\'name\': \'陕西\', \'value\': 6}, {\'name\': \'湖北\', \'value\': 6}, {\'name\': \'重庆\', \'value\': 6}, {\'name\': \'内蒙古\', \'value\': 4}, {\'name\': \'湖南\', \'value\': 4}, {\'name\': \'山东\', \'value\': 3}, {\'name\': \'北京\', \'value\': 2}, {\'name\': \'河南\', \'value\': 1}, {\'name\': \'甘肃\', \'value\': 1}, {\'name\': \'西藏\', \'value\': 0}, {\'name\': \'吉林\', \'value\': 0}, {\'name\': \'河北\', \'value\': 0}, {\'name\': \'青海\', \'value\': 0}, {\'name\': \'澳门\', \'value\': 0}, {\'name\': \'新疆\', \'value\': 10}, {\'name\': \'辽宁\', \'value\': 0}, {\'name\': \'安徽\', \'value\': 0}, {\'name\': \'黑龙江\', \'value\': 0}, {\'name\': \'贵州\', \'value\': 0}, {\'name\': \'江西\', \'value\': 0}, {\'name\': \'宁夏\', \'value\': 0} ] var chart1Option = { title: { text: \'各省累计确诊-词云\',//标题 x: \'center\', textStyle: { fontSize: 23 } }, backgroundColor: \'#fff\', //F7F7F7 tooltip: { show: true }, series: [{ name: \'各省累计确诊\',//数据提示窗标题 type: \'wordCloud\', sizeRange: [12, 64],//画布范围,如果设置太大会出现少词(溢出屏幕) rotationRange: [-45, 90],//数据翻转范围 //shape: \'circle\', textPadding: 0, autoSize: { enable: true, minSize: 6 }, textStyle: { normal: { color: function() { return \'rgb(\' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(\',\') + \')\'; } }, emphasis: { shadowBlur: 10, shadowColor: \'#333\' } }, data: data1, }] }; var chart2Option = { title: { text: \'各省现有确诊-词云\',//标题 x: \'center\', textStyle: { fontSize: 23 } }, backgroundColor: \'#fff\', tooltip: { show: true }, series: [{ name: \'各省现有确诊\',//数据提示窗标题 type: \'wordCloud\', sizeRange: [12, 64],//画布范围,如果设置太大会出现少词(溢出屏幕) rotationRange: [-45, 90],//数据翻转范围 //shape: \'circle\', textPadding: 0, autoSize: { enable: true, minSize: 6 }, textStyle: { normal: { color: function() { return \'rgb(\' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(\',\') + \')\'; } }, emphasis: { shadowBlur: 10, shadowColor: \'#333\' } }, data: data2, }] }; var chart3Option = { title: { text: \'各市累计确诊-词云\',//标题 x: \'center\', textStyle: { fontSize: 23 } }, backgroundColor: \'#fff\', tooltip: { show: true }, series: [{ name: \'各市累计确诊\',//数据提示窗标题 type: \'wordCloud\', sizeRange: [12, 64],//画布范围,如果设置太大会出现少词(溢出屏幕) rotationRange: [-45, 90],//数据翻转范围 //shape: \'circle\', textPadding: 0, autoSize: { enable: true, minSize: 6 }, textStyle: { normal: { color: function() { console.log(\'rgb(\' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(\',\') + \')\') return \'rgb(\' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(\',\') + \')\'; } }, emphasis: { shadowBlur: 10, shadowColor: \'#333\' } }, data: data3, }] }; var chart4Option = { title: { text: \'各市现有确诊-词云\',//标题 x: \'center\', textStyle: { fontSize: 23 } }, backgroundColor: \'#fff\', tooltip: { show: true }, series: [{ name: \'各市现有确诊\',//数据提示窗标题 type: \'wordCloud\', sizeRange: [12, 64],//画布范围,如果设置太大会出现少词(溢出屏幕) rotationRange: [-45, 90],//数据翻转范围 //shape: \'circle\', textPadding: 0, autoSize: { enable: true, minSize: 6 }, textStyle: { normal: { color: function() { console.log(\'rgb(\' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(\',\') + \')\') return \'rgb(\' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(\',\') + \')\'; } }, emphasis: { shadowBlur: 10, shadowColor: \'#333\' } }, data: data4, }] }; chart1.setOption(chart1Option); chart2.setOption(chart2Option); chart3.setOption(chart3Option); chart4.setOption(chart4Option); }, }, }; </script> <style lang=\"less\"> </style>
5.完成图
总结
© 版权声明
THE END
暂无评论内容