依赖
yarn add echarts@5.4.2
yarn add echarts-wordcloud@2.0.0
词云组件
<template>
<div ref="wordCloud"></div>
</template>
<script>
import * as echarts from 'echarts'
import 'echarts-wordcloud'
import props from './props'
export default {
name: 'DgzWordCloud',
props: props,
data() {
return {}
},
created() {},
mounted() {
this.initEchart()
},
methods: {
initEchart() {
const myChart = echarts.init(this.$refs?.wordCloud)
const maskImage = new Image()
maskImage.src = this.imgBase64
// 规范化数据并排序
const data = this.data
?.map(it => ({ ...it, name: it?.[this.nameKey], value: it?.[this.valueKey] }))
?.sort((a, b) => b?.value - a?.value)
let fontSize = this.fontSizeMax
const options = {
series: [
{
type: 'wordCloud',
layout: 'random',
width: '100%',
height: '100%',
rotationRange: [-45, 45],
rotationStep: 45,
gridSize: 5,
emphasis: { focus: 'self' },
drawOutOfBound: false, // 允许展示在词云外面
shrinkToFit: false, // 控制词云图中词语的大小是否根据容器的大小进行缩放
layoutAnimation: true, // 使用动画效果进行平滑的过渡
maskImage: maskImage, // 此处添加图片的base64格式
sizeRange: [this.fontSizeMin, this.fontSizeMax],
data: data?.map((item, index) => {
let color
if (this.colors && this.colors.length !== 0) {
const i = Math.floor(Math.random() * this.colors.length)
color = this.colors[i]
} else {
color =
'rgb(' +
[
Math.round(Math.random() * 160),
Math.round(Math.random() * 160),
Math.round(Math.random() * 160)
].join(',') +
')'
}
// 减到最小字体就不再减了
if (fontSize - this.otherFontSizeStep < this.fontSizeMin) {
fontSize = this.fontSizeMin
} else {
// 前prefix个字体一次减prefixStep
if (index < this.prefix) {
fontSize = fontSize - this.prefixFontSizeStep
} else {
// 其他的每chunk个减一次 index+prefix逢chunk减otherFontSizeStep,其他不变
if ((index - this.prefix) % this.chunk === 0) {
fontSize = fontSize - this.otherFontSizeStep
}
}
}
return { ...item, textStyle: { fontSize, color, ...this.textStyle } }
}),
...this.seriesConfig
}
]
}
myChart.setOption(options)
// 随着屏幕大小调节图表
window.addEventListener('resize', () => {
myChart.resize()
})
}
}
}
</script>
props.js:组件属性
import { base64 } from './base64'
export default {
data: {
type: Array,
default: () => [],
description: '词云数据'
},
nameKey: {
type: String,
default: 'name',
description: '值的名'
},
valueKey: {
type: String,
default: 'value',
description: '键的名'
},
imgBase64: {
type: String,
default: base64,
description: '词云形状图片的base64格式,注意:图片词云填充部分不能为白色,其他部分必须为白色'
},
colors: {
type: Array,
default: () => [],
description: '词云字体颜色'
},
fontSizeMin: {
type: Number,
default: 10,
description: '词云字体最小值'
},
fontSizeMax: {
type: Number,
default: 80,
description: '词云字体最大值'
},
textStyle: {
type: Object,
default: () => {},
description: 'textStyle的其他参数'
},
seriesConfig: {
type: Object,
default: () => {},
description: 'series的其他参数'
},
prefix: {
type: Number,
default: 5,
description: '词云突出展示数据数量(大字体)'
},
prefixFontSizeStep: {
type: Number,
default: 10,
description: '词云突出展示数据字体大小一次减少的步长'
},
chunk: {
type: Number,
default: 10,
description: '词云其他数据隔几个字体大小减一次'
},
otherFontSizeStep: {
type: Number,
default: 5,
description: '词云其他字体大小一次减少的步长'
}
}
base64.js:默认词云形状的base64
// 要求图片底色是白色,内部是其他颜色,因为词云会将白色以外的部分排除在外
export const base64 =
'data:image/jpeg;base64,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'
使用:注意:本用例里面的background使用的不是完整链接,请注意
<DgzWordCloud
:data="list"
nameKey="surname"
valueKey="count"
style="width: 330px; height: 300px;background:url(/point/2023-12-28/zhb-6e1f2044-85d6-bc3b-7ecf-a709cdd7f0c4.png) no-repeat 0 0 / 100% 100%;"
/>
更改词云颜色
<DgzWordCloud
:data="list"
nameKey="surname"
valueKey="count"
:colors="['#1CA461', '#86C05F', '#E8BA00', '#6ED3DB', '#FFBE00', '#FF8E8E']"
style="width: 330px; height: 300px;background:url(/point/2023-12-28/zhb-6e1f2044-85d6-bc3b-7ecf-a709cdd7f0c4.png) no-repeat 0 0 / 100% 100%;"
/>
更改词云形状
阿里iconfont图标库获取矢量图:在这里选择自己想要的形状,一个背景图放到style的background里面,一个白底其他颜色的背景图片
图片转换为base64格式:使用这个网址将白底图片转换为base64格式放到imgBase64属性中
<DgzWordCloud
:data="list"
nameKey="surname"
valueKey="count"
:imgBase64="imgBase64"
style="width: 420px; height: 300px;background:url(/point/2023-12-28/zhb-edf5a0e9-0ff0-c2c9-92c7-2a940f779d06.jpg) no-repeat 0 0 / 100% 100%;"
/>
更改词云字体大小
<DgzWordCloud
:data="list"
nameKey="surname"
valueKey="count"
style="width: 330px; height: 300px;background:url(/point/2023-12-28/zhb-6e1f2044-85d6-bc3b-7ecf-a709cdd7f0c4.png) no-repeat 0 0 / 100% 100%;"
:prefix="8"
:prefixFontSizeStep="5"
:chunk="20"
:otherFontSizeStep="4"
/>
配置config.js
export const list = [
'王',
'李',
'张',
'刘',
'陈',
'杨',
'赵',
'长孙',
'澹台',
'淳于',
'公冶',
'黄',
'周',
'吴',
'徐',
'孙',
'胡',
'朱',
'高',
'林',
'东方',
'宇文',
'皇甫',
'何',
'郭',
'马',
'罗',
'梁',
'宋',
'郑',
'谢',
'韩',
'唐',
'冯',
'于',
'公孙',
'令狐',
'赫连',
'钟离',
'闻人',
'董',
'萧',
'程',
'曹',
'袁',
'邓',
'许',
'傅',
'沈',
'曾',
'彭',
'吕',
'苏',
'卢',
'蒋',
'蔡',
'贾',
'丁',
'魏',
'欧阳',
'慕容',
'司马',
'上官',
'夏侯',
'诸葛',
'薛',
'叶',
'阎',
'余',
'潘',
'杜',
'戴',
'夏',
'金',
'谭',
'邹',
'熊',
'秦',
'邱',
'江',
'尹',
'姚',
'肖',
'汪',
'王',
'李',
'张',
'刘',
'陈',
'杨',
'赵',
'长孙',
'澹台',
'淳于',
'公冶',
'黄',
'周',
'吴',
'徐',
'孙',
'胡',
'朱',
'高',
'林',
'东方',
'宇文',
'皇甫',
'何',
'郭',
'马',
'罗',
'梁',
'宋',
'郑',
'谢',
'韩',
'唐',
'冯',
'于',
'公孙',
'令狐',
'赫连',
'钟离',
'闻人',
'董',
'萧',
'程',
'曹',
'袁',
'邓',
'许',
'傅',
'沈',
'曾',
'彭',
'吕',
'苏',
'卢',
'蒋',
'蔡',
'贾',
'丁',
'魏',
'欧阳',
'慕容',
'司马',
'上官',
'夏侯',
'诸葛',
'薛',
'叶',
'阎',
'余',
'潘',
'杜',
'戴',
'夏',
'金',
'谭',
'邹',
'熊',
'秦',
'邱',
'江',
'尹',
'姚',
'肖',
'汪'
]?.map((it, i) => ({ surname: it, count: i * 1000 }))
export const imgBase64 =
'data:image/jpeg;base64,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'