echarts词云图echarts-wordcloud使用方法

1、echarts5.0以下的版本使用 echarts-wordcloud 1.0 的词云

复制代码
1. 安装 wordCloud 1.0 依赖包
    npm install echarts-wordcloud@1
    
2. man.js 注入
    import 'echarts-wordcloud'

2、echarts5.0及以上的下载 echarts-wordcloud 2.0 版本

注意:npm install echarts-wordcloud 默认安装的是 2.0 版本

具体使用:

项目中引用:

复制代码
import * as echarts from 'echarts';
import 'echarts-wordcloud';

echarts-wordcloud 基本配置

复制代码
<div ref="word-cloud" class="flex can-class" ></div>

// 这里和echarts的使用一样,先拿到容器元素
  const myChart = echarts.init(this.$refs['word-cloud']);
  window.addEventListener('resize', function() {
    myChart.resize();
  });
  appProto().then(res => {
      if (res.data.code === 200) {
      // 因为UI设计规定了颜色,因此我就采用这几个颜色座位随机的颜色调整
        const color = ['#1890FF', '#13C2C2', '#2FC25B', '#009DFF', '#8496FA'];
        var option = {
          backgroundColor: '#fff',
          series: [
            {
              type: 'wordCloud',
              sizeRange: [15, 70], // 用来调整字的大小范围
              rotationRange: [0, 0],// 每个词旋转的角度范围和旋转的步进
              rotationStep: 45,
              gridSize: 10, // 用来调整词之间的距离
              shape: 'pentagon',// shape这个属性虽然可配置,但是在词的数量不太多的时候,效果不明显,它会趋向于画一个椭圆
              //位置的配置
              width: '100%',
              height: '100%',
              drawOutOfBound: false,// 允许词太大的时候,超出画布的范围
              layoutAnimation: true,// 布局的时候是否有动画
              textStyle: {
                normal: {
                  // 颜色可以用一个函数来返回字符串,这里是随机色
                  color: function(v) {
                    const index = Math.floor(Math.random() * color.length);
                    return color[index];
                  },
                  fontFamily: 'sans-serif',
                  fontWeight: '550'
                }
              },
              //划过添加的阴影,因为我不需要,因此注释了
              <!-- emphasis: {
                focus: 'self',
                textStyle: {
                    textShadowBlur: 10,
                    textShadowColor: '#333'
                }
              }, -->
              //data格式是一个数组
              data: res.data.data
            }
          ]

        };
        myChart.setOption(option);
      }
    });
相关推荐
脑袋大大的7 小时前
JavaScript 性能优化实战:减少 DOM 操作引发的重排与重绘
开发语言·javascript·性能优化
速易达网络9 小时前
RuoYi、Vue CLI 和 uni-app 结合构建跨端全家桶方案
javascript·vue.js·低代码
耶啵奶膘9 小时前
uniapp+firstUI——上传视频组件fui-upload-video
前端·javascript·uni-app
JoJo_Way9 小时前
LeetCode三数之和-js题解
javascript·算法·leetcode
视频砖家9 小时前
移动端Html5播放器按钮变小的问题解决方法
前端·javascript·viewport功能
GISer_Jing12 小时前
Monorepo+Pnpm+Turborepo
前端·javascript·ecmascript
天涯学馆12 小时前
前端开发也能用 WebAssembly?这些场景超实用!
前端·javascript·面试
我在北京coding13 小时前
TypeError: Cannot read properties of undefined (reading ‘queryComponents‘)
前端·javascript·vue.js
海天胜景14 小时前
vue3 获取选中的el-table行数据
javascript·vue.js·elementui