首页 > 其他分享 >Echarts图表的使用以及相关配置

Echarts图表的使用以及相关配置

时间:2023-08-17 13:32:44浏览次数:29  
标签:color 配置 echarts 图表 rgba type Echarts

前言

1、Echarts简介

Echarts,全称Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,能够流畅的运行在PC以及移动设备上,兼容当前绝大部分浏览器。为我们许多提供直观,生动,可交互,可高度个性化定制的数据可视化图表。能够支持折线图、柱状图、散点图、K线图、饼图、雷达图、和弦图、力导向布局图、地图、仪表盘、漏斗图、事件河流图等12类图表,同时提供标题,详情气泡、图例、值域、数据区域、时间轴、工具箱等7个可交 互组件,支持多图表、组件的联动和混搭展现。

2、Echarts特点

  1. 功能丰富: Echarts 支持多种图表类型、多种数据格式、多种交互方式,能够满足各种不同的数据可视化需求。
  2. 易于使用: Echarts 提供了完整的 API 文档和示例代码,开发者可以轻松地上手使用。
  3. 可定制性强: Echarts 提供了丰富的配置项,开发者可以根据自己的需求进行自定义设置,如修改图表样式、添加动画效果等。
  4. 兼容性好: Echarts 支持主流的浏览器和移动端设备,能够兼容各种不同的平台。

3、Echarts基本名词

  1. Series(系列): 指图表中的数据系列,一般由多个数据点组成。常见的系列有折线图、柱状图、散点图等。
  2. Axis(坐标轴): 指图表中的坐标轴,一般包括横轴和纵轴。横轴又称为 x 轴,纵轴又称为 y 轴。
  3. Legend(图例 : 指图表中的图例,一般用于标识不同的数据系列。
  4. Tooltip(提示框): 指图表中的提示框,一般用于展示鼠标悬停在数据点上时的详细信息。
  5. Label(标签): 指图表中的标签,一般用于展示数据点的具体数值。
  6. Grid(网格): 指图表中的网格,一般用于将图表分成多个区域,便于展示不同的数据。
  7. Toolbox(工具箱): 指图表中的工具箱,一般包括导出图片、数据视图、刷新等工具。
  8. Visual Map(视觉映射): 指图表中的视觉映射,一般用于将数据映射到颜色、大小等视觉属性上,便于展示数据的变化趋势。

正文开始

1、通过 npm 安装 Echarts

npm install echarts --save

2、在 main.js 全局引入

import Vue from 'vue'
import * as echarts from "echarts";//引入echarts
Vue.prototype.$echarts = echarts//挂载到vue实例,方便全局使用

3、在 Vue 组件中使用

下面的使用的案例,相对比较完整,包含常用相关配置,以及如果如何基于窗口的自适应配置。

<template>
  <div style="width: 100%; height: 100%">
    <div ref="chart" style="width: 100%; height: 100%"></div>
  </div>
</template>
<script>
export default {
  data() {
    return {
      myChart: "",
      XData: [],
      lineData1: [],
      lineData2: [],
    };
  },
  mounted() {
    this.getEchartData();
    window.addEventListener("resize", this.echartResize);
  },
  methods: {
    echartResize() {
      this.myChart.resize();
    },
    getEchartData() {
      const chart = this.$refs.chart;
      if (chart) {
        this.myChart = this.$echarts.init(chart);
        const option = {
          title: {
            text: "折线图案例", //图标标题
            left: "center", //标题位置-居中
          },
          //提示框组件
          tooltip: {
            trigger: "axis",
          },
          //图例配置
          legend: {
            top: "8%",
            textStyle: {
              //文字颜色
              color: "#0f0",
            },
          },
          //绘图区域配置
          grid: {
            show: true,
            left: "6%",
            right: "12%",
            bottom: "3%",
            containLabel: true,
            backgroundColor: "#eee",
          },
          //工具栏
          toolbox: {
            top: "16%",
            right: "6%",
            orient: "vertical",
            feature: {
              //数据视图工具
              dataView: {
                readOnly: true,
                backgroundColor: "rgba(146, 37, 37, 1)",
                textareaColor: "rgba(29, 93, 153, 1)",
                textColor: "rgba(233, 15, 208, 1)",
              },
              //数据区域缩放
              dataZoom: {
                yAxisIndex: "none",
              },
              //动态类型切换
              magicType: {
                type: ["line", "bar"],
              },
              //配置项还原
              restore: {},
              //保存为图片
              saveAsImage: {},
            },
            iconStyle: {
              borderColor: "rgba(21, 29, 134, 1)",
            },
          },
          //区域缩放配置信息
          dataZoom: {
            type: "inside",
          },
          //X轴配置
          xAxis: {
            type: "category",
            name: "时间/天",
            nameTextStyle: {
              color: "rgba(229, 8, 8, 1)",
            },
            nameGap: 4,
            axisLine: {
              lineStyle: {
                color: "rgba(97, 12, 12, 1)",
              },
            },
            axisLabel: {
              show: true,
              color: "rgba(195, 34, 34, 1)",
              fontSize: 13,
            },
            data: this.XData,
          },
          //Y轴配置
          yAxis: {
            type: "value",
            name: "数量/个",
            nameLocation: "middle",
            nameTextStyle: {
              color: "rgba(47, 18, 194, 1)",
            },
            nameGap: "40",
            axisLine: {
              show: true,
              lineStyle: {
                color: "rgba(18, 61, 216, 1)",
              },
            },
          },
          // 数据配置
          series: [
            {
              name: "折线一", //线的名字
              type: "line", //显得类型
              symbol: "none", //是否显示拐点
              smooth: true, //拐点是否圆润
              //拐点属性
              itemStyle: {
                color: "#f00",
              },
              //线的属性
              lineStyle: {
                color: "#f00", // 线的颜色
                width: 2, //线的宽度
                type: "dashed", //线的类型
              },
              data: this.lineData1,
            },
            {
              name: "折线二", //线的名字
              type: "line", //显得类型
              symbol: "none", //是否显示拐点
              smooth: true, //拐点是否圆润
              //拐点属性
              itemStyle: {
                color: "#00f",
              },
              //线的属性
              lineStyle: {
                color: "#00f", // 线的颜色
                width: 2, //线的宽度
                type: "dashed", //线的类型
              },
              data: this.lineData2,
            },
          ],
        };
        this.myChart.setOption(option);
      }
    },
  },
  created() {
    let x = [];
    let line1 = [];
    let line2 = [];
    for (let i = 0; i < 20; i++) {
      x.push(i);
      line1.push(Math.floor(Math.random() * (500 - 200 + 1)) + 200);
      line2.push(Math.floor(Math.random() * (600 - 400 + 1)) + 400);
    }
    this.lineData1 = line1;
    this.lineData2 = line2;
    this.XData = x;
  },
  beforeDestroy() {
    window.removeEventListener("resize", this.echartResize);
  },
};
</script>

效果展示

image-20230327095229818.png

总结

charts 是一款功能强大、易于使用、可定制性强、兼容性好的图表库,是数据可视化的不二选择。

标签:color,配置,echarts,图表,rgba,type,Echarts
From: https://blog.51cto.com/u_16203259/7120991

相关文章

  • 统信UOS桌面操作系统1060上配置鼠标右键打开方式
    原文链接:统信UOS桌面操作系统1060上配置鼠标右键打开方式hello,大家好啊,今天给大家带来一篇在统信UOS桌面操作系统1060上配置鼠标右键打开方式的内容,有时候我们会发现鼠标右键选择一个文件,在打开方式中会有很多的软件供我们选择,比如要打开一个TXT文件,里面却有wps等选项,这些有时候看......
  • Linux常用网络配置
    1、nmcli命令中的device和connection分别代表什么含义?device:网络接口,是物理设备connection:是连接,偏重于逻辑设置2、如何查看Linux主机的IP参数?ifconfig、ipaddr、iplink3、如何修改Linux主机的计算机名字(主机名)?hostname查看和临时设置hostnamectl永久设置修......
  • echarts 背景颜色透明和提示框背景颜色与透明度
    echarts背景颜色透明描述:使用'dark'系列主题初始化控件,控件会自带黑色背景色,与页面整体风格不符合,所以需要将其背景颜色设置为透明.官网文档:http://echarts.baidu.com/option.html#backgroundColor方法一:varoption={backgroundColor:'rgba(128,128,128,0.1)'//r......
  • python rasa聊天机器人教程三:基于WebSocket的简单网页组件配置
    1.准备环境新建一个目录,并且在命令行中进入该目录初始化一个Rasa项目,使用以下命令:rasainit2.修改Rasa的配置在Rasa项目目录中,找到credentials.yml文件,添加以下内容:socketio:user_message_evt:user_utteredbot_message_evt:bot_utteredsession_persistenc......
  • ubuntu虚拟机git环境配置
    1 ssh-keygen-trsa-C‘git注册的邮箱’  //记得改成自己的注册git的邮箱 2 把公钥黏贴到http://git.software.team/profile/keys页面中的大框中3本地配置全局用户名和用户Email gitconfig--globaluser.email"[email protected]"gitconfig--globaluser.n......
  • 安防监控视频云存储EasyCVR平台H.265转码功能更新:新增分辨率配置
    安防视频集中存储EasyCVR视频监控综合管理平台可以根据不同的场景需求,让平台在内网、专网、VPN、广域网、互联网等各种环境下进行音视频的采集、接入与多端分发。在视频能力上,视频云存储平台EasyCVR可实现视频实时直播、云端录像、视频云存储、视频存储磁盘阵列、录像回放与检索、......
  • redis配置文件:redis.conf
    配置项及说明配置项名称取值说明daemonizeyes、no是否启用守护进程(进程启动后在后台一直运行)。默认no。port Redis监听端口,默认6379bind 绑定的主机地址(只有符合条件的IP,才能用redis-cli登录该redis服务器并进行操作)bind和protected-mode控制了是否可......
  • Nginx支持websocket的配置详解
     目录一、对wss与nginx代理wss的理解:二、Nginx支持websocket的配置一、对wss与nginx代理wss的理解:1、wss协议实际是websocket+SSL,就是在websocket协议上加入SSL层,类似https(http+SSL)。2、利用nginx代理wss【通讯原理及流程】客户端发起wss连接连到nginxnginx......
  • .NET Core读取配置文件 配置文件可以是JSON、XML或INI等格式,需要添加 Microsoft.Exten
    .NETCore读取配置文件配置文件可以是JSON、XML或INI等格式需要添加Microsoft.Extensions.Configuration扩展包原文链接:https://pythonjishu.com/qipsfiygesyrqfi/下面是“.NETCore读取配置文件”的完整攻略:1.创建配置文件首先,我们需要在项目中创建一个配置文件,以便存......
  • Shiro配置类中的各个配置项浅谈
    背景:上文中在落地实践时,对Shiro进行了相关的配置,并未对其含义作用进行详细学习,本章将进一步详解其作用含义。Shiro配置类中的各个配置项的作用: @BeanpublicSecurityManagersecurityManager(){DefaultWebSecurityManagersecurityManager=newDefaultWebSecurityM......