EChart常用配置项

627 阅读5分钟

ECharts 是一个非常强大的 JavaScript 图表库,支持多种类型的图表,可以用来展示各种数据。以下是一些常用的 ECharts 图表

  • 折线图 (Line Chart)——适用于展示随时间变化的趋势数据
  • 柱状图 (Bar Chart)——适用于比较不同类别的数值大小
  • 饼图 (Pie Chart)——适用于展示各个部分占总体的比例
  • 散点图 (Scatter Chart)——适用于观察变量间的相关性
  • 常见的还有地图 (Map Chart)、雷达图 (Radar Chart) 和树图 (Tree Chart) 等等

ECharts_1.jpeg

ECharts_2.jpeg

NPM 安装 ECharts

npm install echarts --save 

引入 ECharts

import * as echarts from 'echarts';

// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 绘制图表
myChart.setOption({
  title: {
    text: 'ECharts 入门示例'
  },
  tooltip: {},
  xAxis: {
    data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
  },
  yAxis: {},
  series: [
    {
      name: '销量',
      type: 'bar',
      data: [5, 20, 36, 10, 10, 20]
    }
  ]
});

常用配置项

以下8个为常用配置项,还有很多配置项,具体细节可以查阅文档,ECharts官网讲的很清晰,可以锻炼查文档的能力,从而在学习工作中,从容根据需求修改配置。

title

标题组件,包含主标题和副标题

  title: {
    text: '主标题', /主标题文本/
    subtext:'副标题', /副标题文本/
    left: 'center', /位置参数,'left', 'center', 'right',也可填数值或百分比/
    top: 'top', /位置参数,'top', 'center', 'bottom',也可填数值或百分比/
    ...
  }

legend

图例组件,展现了不同系列的标记(symbol),颜色和名字。可以通过点击图例控制哪些系列不显示。

  legend: {
    orient: 'vertical',/布局朝向,可选:'horizontal' 'vertical'/
    left: 'left',      /位置参数,'left', 'center', 'right',也可填数值或百分比/
    top: 'top',        /位置参数,'top', 'center', 'bottom',也可填数值或百分比/
    ...
  },

tooltip

提示框组件

  tooltip: {
    trigger: 'axis', /可选:'axis' 坐标轴触发,'item'数据项图形触发,'none'什么都不触发/
    ...
  }

toolbox

工具栏。内置有导出图片数据视图动态类型切换数据区域缩放重置五个工具。

  toolbox: {
    feature: {
      magicType: {show: true, type: ['line', 'bar', 'stack']}, /图表类型切换/
      dataView: {show: true, readOnly: false},                 /数据视图工具,是否只读/
      restore: {show: true},                                   /配置项还原/
      saveAsImage: {show: true},                               /保存为图片/
      ...
    }
  }

grid

直角坐标系内绘图网格,单个 grid 内最多可以放置上下两个 X 轴,左右两个 Y 轴。可以在网格上绘制折线图柱状图散点图(气泡图)

  grid:{
    left:'5%',          /网格左侧的距离/
    right:'5%',         /网格右侧的距离/
    bottom:'5%',        /网格底部的距离/    
    containLabel: true, /grid 区域是否包含坐标轴的刻度标签/
    ...
  },

xAxis

直角坐标系 grid 中的 x 轴,一般情况下单个 grid 组件最多只能放上下两个 x 轴,多于两个 x 轴需要通过配置 offset 属性防止同个位置多个 x 轴的重叠。

  xAxis: {
    type: 'category',       /类型:'category' 类目轴,'value' 数值轴 'time'时间轴/
    position: 'bottom',     /x轴的位置 'top' 'bottom'/
    name: '我是x轴',        /坐标轴名称/
    nameLocation: 'start',  /坐标轴名称显示位置/
    axisTick:{              /刻度线配置/
      alignWithLabel: true, /刻度线和标签是否对齐/
    },
    data: ['周一', '周二', '周三', '周四', '周五'],   /类目数据/
    ...
  },

YAxis

直角坐标系 grid 中的 y 轴,一般情况下单个 grid 组件最多只能放左右两个 y 轴,多于两个 y 轴需要通过配置 offset 属性防止同个位置多个 Y 轴的重叠。

  yAxis: {
    type: 'value',
    position: 'left', /y轴位置 'left' 'right'/
    /其他配置同xAxis类似/
  },

series

图表的核心部分,用于定义图表中显示的具体数据和样式。每一个series对象代表图表中的一条数据线、一个柱状图等。

  series: [
    {
      data: [150, 230, 224, 218, 135], /系列中的数据值/
      name: 'data1',/系列名称,用于tooltip的显示,legend的图例筛选变化/
      type: 'line', /类型:'bar' 柱状图,'line' 线图,'pie' 饼图等/
      stack: 'all', /如果设置相同值,则会数据堆叠/
      ...
    },
    {
      data: [100, 222, 244, 254, 238],
      name: 'data2',
      type: 'line',
      stack: 'all',
      ...
    },
    ...
  ]

ECharts_3.png

formatter配置项

formatter 是一个非常重要的配置项,它用于格式化和自定义图表中显示的文本内容,比如提示框(tooltip)、轴标签(axis label)、图例(legend)、数据标签(data label)等组件中的文本。通过 formatter,可以使数据显示更加丰富、灵活并符合特定需求。

基本用法

  • 字符串模板——用于简单的显示需求,允许使用一些占位符来动态替换数据。
tooltip: { 
    formatter: '{a} <br/>{b}: {c} ({d}%)' ,
    / {a} 代表系列名称/
    / {b} 代表数据项名称/
    / {c} 代表数值/
    / {d} 代表百分比/
}
  • 回调函数——提供更强大的定制能力,可以访问更多数据和上下文信息,进行复杂的逻辑处理。
tooltip: { 
    formatter: function (params) { 
        // params 是一个对象,包含了当前数据点的信息 
        return params.name + ': ' + params.value;
    },
    / params 对象通常包含以下属性:/
    -   `name`: 数据项名称
    -   `value`: 数据项的值
    -   `seriesName`: 系列名称
    -   `componentType`: 组件类型
    -   `dataType`: 数据类型
    -   `axisValue`: 轴上的值
    -   `marker`: 标记符号
    -   `color`: 颜色
    -   `dataIndex`: 数据索引
    -   `data`: 原始数据项
}

使用场景

  • Tooltip 格式化:定制 tooltip 显示的文本格式,包括数据值、百分比、单位等。
  • Axis Label 自定义:调整轴标签的显示方式,比如日期格式化、数值千分位分隔等。
  • Legend 文本优化:改变图例中系列名称的显示,增加额外信息或简化文本。
  • Data Label 内容控制:直接在图表的数据点上显示定制化的文本标签。

以上内容只是ECharts的部分配置项的部分配置内容,更丰富和详细的功能及内容建议到文档中查阅。 ECharts配置项手册