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);
      }
    });

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要实现echarts词云图自定义形状,可以使用echarts-wordcloud插件。 首先,在html文件中引入echartsecharts-wordcloud插件的js文件。 然后,在js文件中定义词云图的配置项option,设置series属性的type为'wordCloud',并设置shape属性为自定义形状的svg路径,例如: ```javascript option = { series: [{ type: 'wordCloud', shape: 'path://M10 10 h 80 v 80 h -80 Z', // 自定义形状的svg路径 ... }] }; ``` 其中,'path://'是固定前缀,后面跟上svg路径即可。 最后,调用echarts的setOption方法渲染词云图即可。 需要注意的是,自定义形状要求是一个封闭的路径,不能有交叉或重叠的部分,否则会导致渲染异常。 ### 回答2: Echarts词云图是一种用于展示文本内容词频的可视化图表。在词云图中,词语的大小和颜色表示该词的重要程度或出现频率。 Echarts提供了自定义形状的功能,使得我们可以通过特定的形状来呈现词云图。实现自定义形状的步骤如下: 1. 准备自定义形状的图像:首先,我们需要准备一个自定义的形状图像作为词云图的背景,可以是PNG、SVG等格式的图像。这个图像将成为词云图的形状。 2. 将图像转换为颜色矩阵:使用图片处理工具,将图像转换为一个颜色的矩阵,矩阵的每个元素表示该位置的颜色值。可以使用Python的PIL库或其他工具进行这一步骤。 3. 创建echarts词云图使用Echarts库创建词云图,并将自定义的形状矩阵作为词云图的形状参数传入。可以设置词云图中词语的大小、颜色等属性。 4. 加载词频数据:将文本的词频数据传入词云图中,词云图会根据词频数据自动计算词语的大小和颜色,并根据形状参数进行布局,将词语填充到形状中。 5. 渲染和展示:最后,将词云图渲染到页面上,并展示出来。 通过以上步骤,我们可以实现在Echarts词云图使用自定义形状。这样,我们可以根据不同的需求和场景,选择适合的形状来展示词云图,增加图表的个性化和趣味性。 ### 回答3: echarts词云图可以通过自定义形状来增加图表的个性化效果。自定义形状通常使用一个图片作为词云的形状模板,然后根据图片的轮廓来生成词云的布局。 首先,准备一个形状模板图片,比如一个心形。将模板图片转换为Base64编码的字符串,可以使用在线工具或者编程方式进行转换。然后,将该字符串作为配置项中的maskImage属性的值传递给echarts词云图的配置。 在配置项中,需要设置maskImage为形状模板图片的Base64编码字符串。同时,可以设置词云布局的相关属性,如词云大小、词云字体、词云形状等等。通过相应的配置项,可以实现对词云图的形状进行自定义。 在使用echarts生成词云图时,可以将自定义的形状模板图片和词语数据结合起来,生成一张带有特定形状的词云图。词语的位置和大小会根据形状的轮廓进行调整,从而使词云图呈现出与形状模板相匹配的效果。 总之,通过echarts词云图的自定义形状功能,我们可以根据需求选择合适的形状模板,并与词语数据结合,生成个性化、独特的词云图。这为展示文本数据提供了更加丰富多样的可视化方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值