NoteZ_技术博客 NoteZ_技术博客
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)

NoteZ_技术博客

前端界的小学生
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)
  • Web技术

  • Git笔记

  • Linux文档

  • Markdown

  • Nginx文档

  • Npm笔记

  • 技术文档

  • 其他文档

    • 解决 bash_wget 未找到命令的解决办法
    • CentOS7 常见问题应对,如何升级make和gcc版本
    • CodeMirror代码编辑器实现自定义提示功能增强版(支持搜索、调用接口查询提示内容)
    • CSS 滚动条样式
    • d3 svg 基本图形绘制
    • d3.js中update,enter,exit的概念
    • dat.gui 基本使用方法
    • echarts 使用案例(demo)
      • js版本
        • HTML
        • javaScript
      • vue版本
    • jsplumb 中文基础教程
    • Linux服务器(centos7)使用LibreOffice将Word转换PDF文档出现中文乱码或方格解决方法
    • npm install 报错 npm ERR code UNABLE_TO_VERIFY_LEAF_SIGNATURE npm ERR errno UNABLE_TO_VERIFY_LEA 解决
    • Npm 清除缓存
    • Npm设置淘宝镜像
    • NPS内网穿透安装方法
    • ThreeJs 基础入门
    • unable to verify the first certificate 原因及解决方法
    • vue 安装node-sass报错解决方案(缺少python2.7支持)
    • windows下安装 stable-diffusion-webui 步骤
    • yarn的安装与使用
    • 关于微信支付 WeixinJSBridge.invoke 、 wx.chooseWXPay使用方法
    • 内网穿透的几款工具汇总
    • 前端使用 swd-deploy 自动化部署项目到服务器
    • 常用工具集(utils.js)
    • 开源项目大杂烩
    • 微信小程序-APP生命周期与运行机制总结
    • 微信小程序踩坑之布局适配单位(rpx、px、vw、vh)
    • 服务器常用的状态码
    • 解决google浏览器翻译无法使用的问题
    • 解决使用 Gitalk 登录授权报错的问题
    • 解决在使用 stable-diffusion-webui 时,安装 gfpgan 失败的方案(windows下的操作)
    • 通过 js 进行 shapefile 文件解析渲染方法
    • 部署脚本 deploy.sh
    • Tauri打包慢或者报错问题解决方法
    • Ubuntu和Nginx搭配Certbot配置SSL证书https访问网站
    • Centos下yum无法正常使用
    • Linux 系统下通过 Let‘s Encrypt 生成免费 https 证书的步骤
    • Mongo 风格的查询对象映射到 SQL 查询的 Node.js 库 json-sql
    • CentOS7安装与卸载anaconda3基础步骤
  • 前端开发
  • 其他文档
NoteZ
2019-11-19
目录

echarts 使用案例(demo)

# js版本

# HTML

<div id="myChart"></div>
1

# javaScript

//防止出现 echarts.js:28681 There is a chart instance already initialized on the dom. 警告
if (myEcharts != null && myEcharts != "" && myEcharts != undefined) {
  myEcharts.dispose();
};
// 初始化
let myEcharts = echarts.init(document.querySelector('#myChart'));
//显示加载动画( 根据需求自行添加 )
myEcharts.showLoading({
  text: '加载中...',
  color: '#c23531',
  textColor: '#fff',
  maskColor: 'transparent',
});

//装载配置项
let option = {};  // 请参考tab页的 Option配置,直接替换即可。
myEcharts.setOption(option, true);

//清除点击事件防止多次触发
myEcharts.off("click");

//图谱点击事件绑定
myEcharts.on("click", param => {
  //做一些逻辑处理事件
  console.log(param);
});

//监听浏览器窗口变化 自适应 注意:只在浏览器窗口发生改变时才会触发
window.addEventListener("resize", () => {
  myEcharts.resize();
});

//关闭加载动画( 根据需求自行添加 )
myEcharts.hideLoading();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

# vue版本

<template>
  <div class="chart" ref="chart"></div>
  <!-- <div class="chart" :style="{height:height+'px',width:'100%'}" ref="chart"></div> -->
</template>

<script>
export default {
  name: "chart",
  data: () => ({
    myEcharts: null,
    height: 520,
  }),
  // 使用 props 传参
  props: ["content"],
  watch: {
    content(val) {
      if (!this.myEcharts) {
        this.$nextTick(() => {
          this.showLoading("加载中...", true, "#2d8cf0");
          if (val && val.show) {
            this.setChart();
          } else {
            this.showLoading("暂无数据", false, "#666");
          }
        });
      }
    }
  },
  mounted() {
    // this.setHeight();
    this.$nextTick(() => {
      if (!this.myEcharts) {
        this.myEcharts = this.$echarts.init(this.$refs.chart);
        this.setChart();
        //监听窗口变化 自适应( 根据需求自行添加 )
        window.addEventListener("resize", this.resize, true);
      }
    });
  },
  methods: {
    showLoading(text, showSpinner, textColor) {
      //显示加载动画( 根据需求自行添加 )
      this.myEcharts.showLoading({
        text,
        showSpinner,
        color: "#2d8cf0",
        textColor,
        // maskColor: "#2d8cf0",
      });
    },
    setChart() {
      if (this.content) {
        let option = {};

        // 将 option 注册到 echarts 中
        this.myEcharts.setOption(option, true);

        // 添加点击事件( 根据需求自行添加 )
        this.myEcharts.off("click");
        this.myEcharts.on("click", (param) => {
          //根据需求做逻辑处理
          // console.log(param);
        });

        //隐藏动画效果( 根据需求自行添加 )
        this.myEcharts.hideLoading();
      }
    },
    // setHeight() {
    //   this.height =
    //     document.body.clientHeight || document.documentElement.clientHeight;
    // },
    resize() {
      //   this.setHeight();
      this.myEcharts.resize();
    },
  },

  beforeDestroy() {
    if (this.myEcharts) {
      window.removeEventListener("resize", this.resize, true);
      this.myEcharts.clear();
      this.myEcharts.dispose();
    }
  }
};
</script>

<style lang="scss" scoped>
.chart {
  height: 600px;
  width: 100%;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#Echarts
上次更新: 2024/01/30, 00:35:17
dat.gui 基本使用方法
jsplumb 中文基础教程

← dat.gui 基本使用方法 jsplumb 中文基础教程→

最近更新
01
Gitea数据备份与还原
03-10
02
Linux 中使用 rsync 同步文件目录教程
03-10
03
Linux 使用 rsync 互相传输同步文件的简单步骤
03-08
更多文章>
Theme by Vdoing | Copyright © 2019-2025 NoteZ,All rights reserved | 冀ICP备2021027292号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式