ECharts 词云案例三:2024年阅读关键词

ECharts 词云案例三:2024年阅读关键词

引言

在数据可视化领域,ECharts 以其强大的功能性和灵活性,成为开发者和设计师的首选工具之一。继上一篇关于 ECharts 词云图的详细介绍后,本文将探索词云图的进阶应用------使用蒙版来创造更具个性化和创意的词云效果。

效果预览

本次实现的是一个2024年阅读关键词,使用了一个渐变色背景的设计。以及随机颜色。

蒙版概念

蒙版,或称遮罩,是一种覆盖在图像或图表上的图层,用来隐藏或显示部分内容。在词云图中,蒙版可以是任何形状,它将决定词云的外形和分布,从而使得词云图不仅仅是数据的展示,更是一件视觉艺术品。

案例实现

准备阶段

在实现蒙版效果之前,我们需要准备两样东西:一是 ECharts 词云图的基本配置,二是用作蒙版的图像。

  1. ECharts 配置:确保已经引入了 ECharts 主文件和词云图插件文件。
  2. 蒙版图像:选择或设计一个具有代表性或美观性的图像,它将作为词云的蒙版。

HTML 结构

创建一个包含 ECharts 容器和蒙版图像展示区的 HTML 结构。

html 复制代码
<div class="main">
  <div id="ECharts" class="EChartBox"></div>
  <div class="image-box">
    <div class="tit">蒙版图片</div>

  </div>
</div>

配置 ECharts 词云图

在 JavaScript 中,初始化 ECharts 实例,并配置词云图选项。重点在于设置 maskImage 属性,它将指向我们的蒙版图像。

javascript 复制代码
var myChart = echarts.init(document.getElementById('ECharts'));
var option = {
  // ... 省略其他配置 ...
  series: [
    {
      type: 'wordCloud',
      maskImage: maskImage, // 指向蒙版图像
      // ... 其他词云图配置 ...
    },
  ],
};
myChart.setOption(option);

蒙版图像加载

确保在蒙版图像加载完成后,确保在蒙版图像加载完成后,确保在蒙版图像加载完成后,再渲染词云图。这可以通过监听图像的 onload 事件来实现。

javascript 复制代码
var maskImage = new Image();
maskImage.src = 'data_url_of_your_mask_image';
maskImage.onload = function() {
  // 图片加载完成后的操作
  myChart.setOption(option);
};

代码以及依赖

卫星: Wusp1994

企鹅: 812190146

点我下载代码和依赖

创意延伸

蒙版的应用不仅限于固定的图像轮廓,您可以发挥创意,使用自定义的 SVG 路径或通过 CSS 样式来实现更多样化的蒙版效果。此外,结合动画和交互效果,可以使词云图更加生动和有趣。

下面附上五个蒙版图,原图都在资源包里面

结语

通过本案例的介绍,我们可以看到 ECharts 词云图结合蒙版后的强大表现力。无论是商业报告、教育展示还是艺术创作,ECharts 都能提供丰富的定制选项,满足不同场景的需求。希望本案例能激发您在数据可视化上的更多创意和灵感。

相关推荐
BYSJMG7 分钟前
计算机毕业设计选题推荐|【基于大数据的植被光谱特征与环境因子关联分析及可视化】Spark+K-Means
大数据·python·信息可视化·数据分析·spark·kmeans·课程设计
咖啡无伴侣8 分钟前
3. 从零搭建企业级 Monorepo 工程化模板:集成 Husky 9 + lint-staged
前端·架构
MetaLite15 分钟前
Java通用枚举驱动下拉框-元数据接口与前端契约
java·前端·状态模式
Json____18 分钟前
基于 Node + Vue3 的选课管理系统:从教务业务到全栈实践
前端·node·毕设·wwwoop.com
创新技术阁20 分钟前
FastapiAdmin 定时任务实现原理与新建任务实操指南
前端·后端·fastapi
3A Cloud24 分钟前
Huashu Design:把 AI Agent 变成一间以 HTML 为画布的设计工作室
前端·人工智能·html
你别说话了26 分钟前
Webpack 如何迁移重构到 Vite
前端·webpack·重构
catastrophe_zy29 分钟前
如何用 WebCodecs 在浏览器里实现高清录屏 —— 无插件、无水印、直接导出 MP4
前端·javascript·录屏
芳心粽伙饭32 分钟前
HTML第七章 表格标签
前端·html
我就是DaLing呀!32 分钟前
vue3 + 独立的数据管理 Store实现视频剪辑功能
前端·typescript·vue3·canvas·store