ECharts 图表教程

从零学会制造业大屏最常用的图表库 — 给中际旭创数据可视化工程师的实战手册

01 · ECharts 简介

📊 核心概念:ECharts 能做什么

假设你管理一个工厂,有 5 条产线。你想看各条产线的日产量高峰时段良品率趋势……

  • Excel = 白板 + 马克笔:能画图,但每次更新数据你得自己擦了重画
  • ECharts = 自动化数字大屏:数据一变,图表秒级刷新,还能做动画、联动、实时监控

在制造业里,ECharts 就是车间大屏的"画笔"——MES 系统、SCADA 看板、日报大屏,几乎全是它画的。

什么是 ECharts?

ECharts 是百度开源的 JavaScript 可视化库,是中国使用率最高的图表库。它的特点是:

5 行代码画一个图表

HTML — 最小可用示例
<!-- 第1步:引入 ECharts -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5/dist/echarts.min.js"></script>

<!-- 第2步:准备一个有宽高的容器 -->
<div id="chart" style="width:600px;height:400px"></div>

<!-- 第3步:写 JS 初始化图表 -->
<script>
  var chart = echarts.init(document.getElementById('chart'));
  chart.setOption({
    title: { text: '我的第一个图表' },
    xAxis: { data: ['A','B','C'] },
    yAxis: {},
    series: [{ type: 'bar', data: [120, 200, 150] }]
  });
</script>
📊 VS Excel 对比
Excel 图表ECharts
交互静态图片,不能缩放/联动鼠标悬浮提示、缩放、联动
实时手动刷新自动刷新,秒级更新
部署发文件给领导发个链接,手机也能看
动画入场动画、数据过渡动画
大屏不适用专为数据大屏设计
学习成本会 Excel 就行需要会 HTML + JS 基础

ECharts 的核心概念只有 3 个,记住这 3 个就能画所有图表:

  1. type — 图表类型(bar 柱状、line 折线、pie 饼图、gauge 仪表盘……)
  2. data — 数据(就是 Excel 里你选中的那列数字)
  3. setOption({...}) — 所有配置都塞进这个大括号里

02 · 柱状图 (Bar)

📊 核心概念

你想比较 5 家分店今天的销量——哪家卖得多、哪家卖得少。把每家的销量画成一根柱子,柱子越高 = 销量越多,一眼就能看出谁是销冠。

在制造业里就是:各产线今天谁的 OEE 最高?

什么时候用柱状图?

完整代码 — 各产线 OEE 对比

HTML + JavaScript
<div id="bar-chart" style="width:700px;height:400px"></div>
<script>
  var barChart = echarts.init(document.getElementById('bar-chart'));
  barChart.setOption({
    title: { text: '各产线 OEE 对比 (%)' },
    tooltip: {},
    xAxis: {
      type: 'category',
      data: ['Line-1', 'Line-2', 'Line-3', 'Line-4', 'Line-5']
    },
    yAxis: {
      type: 'value',
      max: 100,
      axisLabel: { formatter: '{value}%' }
    },
    series: [{
      type: 'bar',
      data: [85.2, 78.6, 91.3, 72.8, 88.1],
      itemStyle: {
        color: function(params) {
          // OEE < 80% 标红,>= 80% 标蓝
          return params.data < 80 ? '#ee6666' : '#5470c6';
        }
      },
      label: { show: true, position: 'top', formatter: '{c}%' }
    }]
  });
</script>
✅ 运行结果

5 根柱子并排显示。X 轴是 Line-1 到 Line-5,Y 轴是 0~100%。其中 Line-2 (78.6%) 和 Line-4 (72.8%) 的柱子是红色(低于 80% 警告),其余为蓝色。每根柱子顶部显示具体数值。

📊 VS Excel
ExcelECharts
操作选中数据 → 插入 → 柱状图写 xAxis + series
颜色手动一个个改颜色用函数自动判断颜色
数值标签右键 → 添加数据标签label: { show: true }

关键配置速记

配置作用示例值
type: 'bar'声明柱状图
xAxis.type: 'category'X 轴是分类(文字)Line-1, Line-2...
label柱子上方显示数值label: { show: true, position: 'top' }
itemStyle.color柱子颜色(可传函数)低于阈值标红

03 · 折线图 (Line)

📊 核心概念

你想看今天从开门到打烊,每个小时的销量变化。把每小时销量连成一条线,你能一眼看出:高峰在几点?低谷在几点?趋势是上升还是下降?

制造业版本:过去 24 小时产量趋势——哪班产量最高?有没有异常波动?

什么时候用折线图?

完整代码 — 24 小时产量趋势

HTML + JavaScript
<div id="line-chart" style="width:700px;height:400px"></div>
<script>
  var lineChart = echarts.init(document.getElementById('line-chart'));
  var hours = [];
  for (var i = 0; i < 24; i++) hours.push(i + ':00');

  lineChart.setOption({
    title: { text: '24 小时产量趋势(单位:件)' },
    tooltip: { trigger: 'axis' },
    xAxis: { type: 'category', data: hours },
    yAxis: { type: 'value' },
    series: [{
      type: 'line',
      data: [120,98,85,72,65,58,62,180,245,268,
             290,310,305,298,285,275,280,265,248,230,
             210,195,175,150],
      smooth: true,         // 平滑曲线(像 Excel 里的"平滑线")
      areaStyle: {           // 填充线下面的区域
        color: new echarts.graphic.LinearGradient(0,0,0,1,[
          { offset: 0, color: 'rgba(84,112,198,0.4)' },
          { offset: 1, color: 'rgba(84,112,198,0.05)' }
        ])
      },
      markLine: {            // 添加目标线(类似 Excel 的参考线)
        data: [{ yAxis: 250, name: '目标产量' }]
      }
    }]
  });
</script>
✅ 运行结果

X 轴是 0:00 到 23:00。一条平滑的蓝色曲线从深夜低谷(58件)逐步上升到上午高峰(310件),之后缓慢回落。曲线下方有蓝色渐变填充。250 处有一条虚线标注"目标产量"。鼠标悬浮会显示具体数值。

📊 VS Excel
ExcelECharts
平滑线右键数据系列 → 勾选"平滑线"smooth: true
面积填充改图表类型为"面积图"areaStyle: { ... }
参考线手动画一条线markLine: { data: [{ yAxis: 250 }] }

04 · 饼图 (Pie)

📊 核心概念

你统计了这周所有停机时间的原因占多少比例:设备故障 40%、换线调试 25%、缺料等待 20%、其他 15%。画成饼图,每块"饼"代表一种停机原因的占比

制造业版本:停机原因分布——设备故障占 35%、换线占 25%、缺料占 20%……

什么时候用饼图?

完整代码 — 停机原因分布(环形图)

HTML + JavaScript
<div id="pie-chart" style="width:700px;height:400px"></div>
<script>
  var pieChart = echarts.init(document.getElementById('pie-chart'));
  pieChart.setOption({
    title: { text: '停机原因分布', left: 'center' },
    tooltip: { trigger: 'item', formatter: '{b}: {c}分钟 ({d}%)' },
    legend: { bottom: 10 },
    series: [{
      type: 'pie',
      radius: ['40%', '70%'],   // 内半径40%,外半径70% → 环形图(甜甜圈)
      data: [
        { value: 180, name: '设备故障' },
        { value: 130, name: '换线调整' },
        { value: 95,  name: '缺料等待' },
        { value: 60,  name: '人员不足' },
        { value: 45,  name: '计划停机' },
        { value: 30,  name: '其他' }
      ],
      emphasis: {
        itemStyle: {
          shadowBlur: 10,
          shadowOffsetX: 0,
          shadowColor: 'rgba(0,0,0,0.3)'
        }
      }
    }]
  });
</script>
✅ 运行结果

中间镂空的环形图(像甜甜圈)。最大的一块是"设备故障"(180分钟,占 33%),其次是"换线调整"、"缺料等待"等。鼠标悬浮时对应扇区会凸出并显示阴影,底部有图例。

📊 VS Excel
ExcelECharts
环形图图表类型选"圆环图"radius: ['40%', '70%'](设置内半径)
百分比右键添加数据标签tooltip 自动显示 ({d}%)
悬浮效果emphasis 设置阴影、放大

饼图 vs 环形图

区别只有一个配置:radius

05 · 仪表盘 (Gauge) ⭐ 关键

📊 核心概念

想象你车上的时速表——指针从左到右,0 到 220 km/h。你一眼就能看出现在开多快,有没有超速。

制造业的 OEE 仪表盘完全一样:0~100%,指针指向当前 OEE。绿色区间 = 正常,黄色 = 需关注,红色 = 报警。

为什么仪表盘在制造业特别重要?

在车间大屏上,领导和工程师最关心的几个数字:OEE、直通率、设备利用率。这些用一个百分比就能表达,仪表盘是最直观的展示方式

完整代码 — OEE 仪表盘

HTML + JavaScript
<div id="gauge-chart" style="width:600px;height:400px"></div>
<script>
  var gaugeChart = echarts.init(document.getElementById('gauge-chart'));
  gaugeChart.setOption({
    series: [{
      type: 'gauge',
      center: ['50%', '60%'],
      min: 0,
      max: 100,
      splitNumber: 10,
      axisLine: {
        lineStyle: {
          width: 20,
          color: [
            [0.6, '#ee6666'],   // 0~60% 红色(差)
            [0.8, '#fac858'],   // 60~80% 黄色(一般)
            [1,   '#91cc75']    // 80~100% 绿色(优秀)
          ]
        }
      },
      pointer: { width: 5 },
      axisTick: { length: 8 },
      splitLine: { length: 15 },
      detail: {
        formatter: '{value}%',
        fontSize: 28,
        offsetCenter: [0, '70%'],
        color: 'auto'     // 数字颜色跟随区间颜色
      },
      title: {
        offsetCenter: [0, '90%'],
        fontSize: 16
      },
      data: [{ value: 78.5, name: 'OEE' }]
    }]
  });
</script>
✅ 运行结果

一个半圆形仪表盘,像汽车时速表。外圈颜色分段:0~60 红色、60~80 黄色、80~100 绿色。指针指向 78.5,在黄色区间(需改善)。中间大字显示 "78.5%",下方文字 "OEE"。

📊 VS Excel
ExcelECharts
仪表盘不支持(需第三方插件)type: 'gauge' 原生支持
颜色区间条件格式(复杂)axisLine.lineStyle.color 直接配
动态更新手动改setOption + 定时器自动刷新

06 · 地图 (Map)

📊 核心概念

你开了 50 家分店,分布在全省各地。你在地图上把每家店标出来,颜色深浅表示销量高低,一眼就能看出哪个区域生意好。

制造业版本:各车间产量热力图——哪个车间产量最高用深色,最低用浅色。

什么时候用地图?

完整代码 — 车间产量热力图(简化版)

注:中国地图需要额外加载地图 JSON 数据。这里用散点图在自定义坐标系上模拟车间布局。

HTML + JavaScript — 使用散点图模拟车间布局
<div id="map-chart" style="width:700px;height:400px"></div>
<script>
  var mapChart = echarts.init(document.getElementById('map-chart'));

  // 真实项目中,用 echarts.registerMap('china', chinaJson) 注册地图
  // 这里用散点图模拟各车间的位置和产量
  var workshops = [
    { name: 'A1车间', value: [50, 30, 5200] },
    { name: 'A2车间', value: [150, 50, 3800] },
    { name: 'B1车间', value: [250, 40, 6100] },
    { name: 'B2车间', value: [350, 60, 4500] },
    { name: 'C1仓库', value: [200, 120, 2000] }
  ];

  mapChart.setOption({
    title: { text: '各车间产量分布(气泡大小 = 产量)' },
    tooltip: {
      formatter: function(p) {
        return p.name + '<br/>产量:' + p.value[2] + ' 件';
      }
    },
    xAxis: { show: false, min: 0, max: 400 },
    yAxis: { show: false, min: 0, max: 150 },
    series: [{
      type: 'scatter',
      symbolSize: function(d) { return d[2] / 80; },
      data: workshops,
      label: { show: true, formatter: '{b}', position: 'bottom' },
      itemStyle: {
        color: function(p) {
          var v = p.value[2];
          return v >= 5000 ? '#5470c6' : v >= 3000 ? '#91cc75' : '#fac858';
        }
      }
    }]
  });
</script>
✅ 运行结果

在空白区域上有 5 个大小不同的彩色气泡。B1 车间最大(6100件,蓝色),A2 车间中等(3800件,绿色),C1 仓库最小(2000件,黄色)。每个气泡下方有名称标签。悬浮显示详细产量。

使用真实中国地图的方法

3 步加载中国地图
// 第1步:引入 ECharts 后,再引入中国地图 JSON
<script src="https://cdn.jsdelivr.net/npm/echarts@5/dist/echarts.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/echarts@4/map/js/china.js"></script>

// 第2步:series 用 type: 'map', map: 'china'
series: [{
  type: 'map',
  map: 'china',
  data: [
    { name: '山东', value: 57200 },
    { name: '江苏', value: 48900 }
  ]
}]

// 第3步:配合 visualMap 组件做颜色映射
visualMap: {
  min: 0, max: 60000,
  inRange: { color: ['#e0f3db', '#a8ddb5', '#43a2ca'] }
}

07 · 动态排序图 (Dynamic Bar Race) ⭐

📊 核心概念

你看过那种"全球 GDP 排名变化"的动画视频吗?柱子会根据数值大小自动重新排列,像赛跑一样。哪家店冲到了第一,哪家掉到了最后——一目了然。

制造业版本:各机台产量排名动态变化——看哪些机台是"黑马",哪些在下滑。

为什么岗位要求会提到这个?

动态排序图是近年来大屏展示的热门效果,特别适合做年度汇报、季度总结的动态数据展示。

完整代码 — 各机台产量动态排名

HTML + JavaScript
<div id="race-chart" style="width:700px;height:400px"></div>
<script>
  var raceChart = echarts.init(document.getElementById('race-chart'));
  var machines = ['CNC-01','CNC-02','CNC-03','CNC-04','CNC-05','CNC-06'];
  var currentData = [320, 280, 350, 260, 310, 290];
  var year = 2024;

  function update() {
    // 模拟数据变化(实际项目从 API 获取)
    currentData = currentData.map(function(v) {
      return Math.round(v + (Math.random() - 0.3) * 50);
    });
    year++;

    // 按产量排序(从大到小)
    var sorted = machines.map(function(m, i) {
      return { name: m, value: currentData[i] };
    }).sort(function(a, b) { return a.value - b.value; });

    raceChart.setOption({
      title: { text: '各机台产量动态排名 - ' + year + '年' },
      xAxis: { max: 500 },
      yAxis: {
        type: 'category',
        data: sorted.map(function(d) { return d.name; }),
        inverse: true   // 从上到下:最大在上
      },
      series: [{
        type: 'bar',
        data: sorted.map(function(d) { return d.value; }),
        label: { show: true, position: 'right' },
        itemStyle: { color: '#5470c6' }
      }],
      animationDuration: 1000,   // 过渡动画 1 秒
      animationEasing: 'cubicInOut'
    });
  }

  update();                    // 首次渲染
  setInterval(update, 2000);  // 每 2 秒更新一次
</script>
✅ 运行结果

6 根横向柱子,按产量从大到小排列。每 2 秒柱子会重新排序并平滑移动,像赛跑一样。柱子右侧显示具体数值,标题显示当前年份。

08 · 组合图表 (Mixed) ⭐

📊 核心概念

你想在一张图里同时看每天的销量(柱子)累计评分趋势(折线)。柱子表示绝对数量,折线表示百分比趋势,两者用不同的 Y 轴。

制造业最常见组合:产量(柱)+ 直通率(折线)——产量看数量,直通率看质量,两个指标必须一起看。

什么时候用组合图?

完整代码 — 产量 + 直通率组合图

HTML + JavaScript
<div id="mixed-chart" style="width:700px;height:400px"></div>
<script>
  var mixedChart = echarts.init(document.getElementById('mixed-chart'));
  var days = ['周一','周二','周三','周四','周五','周六','周日'];

  mixedChart.setOption({
    title: { text: '本周产量 & 直通率' },
    tooltip: { trigger: 'axis' },
    legend: {},
    xAxis: { type: 'category', data: days },
    yAxis: [
      {
        type: 'value',
        name: '产量(件)',
        position: 'left'
      },
      {
        type: 'value',
        name: '直通率(%)',
        position: 'right',
        min: 90,
        max: 100,
        axisLabel: { formatter: '{value}%' }
      }
    ],
    series: [
      {
        name: '产量',
        type: 'bar',
        data: [1250, 1380, 1420, 1350, 1500, 1100, 980],
        itemStyle: { color: '#5470c6' }
      },
      {
        name: '直通率',
        type: 'line',
        yAxisIndex: 1,          // ⭐ 关键:用右侧 Y 轴
        data: [96.2, 95.8, 97.1, 94.5, 98.2, 96.8, 95.3],
        smooth: true,
        itemStyle: { color: '#ee6666' },
        lineStyle: { width: 3 }
      }
    ]
  });
</script>
✅ 运行结果

蓝色柱子表示每天产量(左 Y 轴,0~1500件),红色折线表示直通率(右 Y 轴,90~100%)。周五产量最高(1500件)且直通率也最高(98.2%)。可以清楚看到产量和质量的关联关系。

📊 VS Excel
ExcelECharts
组合图选中两组数据 → 组合图series 里放两个不同 type
双 Y 轴右键系列 → 设置次坐标轴yAxisIndex: 1
图例自动生成legend: {} 即可

09 · 实时数据更新

📊 核心概念

你在站里装了一个实时销量显示屏。每卖出一杯,数字就自动 +1。不需要你手动刷新,它自己会更新。

制造业大屏的核心需求:OEE 仪表盘每 2 秒刷新一次,车间大屏数据实时滚动。用 setOption + setInterval 实现。

核心思路

  1. setInterval 定时获取新数据
  2. chart.setOption() 更新图表(ECharts 会自动做动画过渡)
  3. dispatchAction 控制高亮、tooltip 等交互

完整代码 — OEE 仪表盘实时刷新

HTML + JavaScript
<div id="realtime-gauge" style="width:600px;height:400px"></div>
<script>
  var rtGauge = echarts.init(document.getElementById('realtime-gauge'));
  var oee = 78.5;  // 初始值

  function renderGauge(val) {
    rtGauge.setOption({
      series: [{
        type: 'gauge',
        min: 0, max: 100,
        detail: { formatter: '{value}%', fontSize: 32 },
        axisLine: {
          lineStyle: {
            width: 20,
            color: [[0.6,'#ee6666'],[0.8,'#fac858'],[1,'#91cc75']]
          }
        },
        data: [{ value: val, name: 'OEE(实时)' }]
      }]
    });
  }

  renderGauge(oee);

  // 每 2 秒模拟 OEE 波动
  setInterval(function() {
    oee = oee + (Math.random() - 0.48) * 3;  // 小幅波动
    oee = Math.max(60, Math.min(98, oee));     // 限制在 60~98
    oee = Math.round(oee * 10) / 10;           // 保留一位小数
    renderGauge(oee);
  }, 2000);
</script>
✅ 运行结果

仪表盘的指针每 2 秒平滑移动一次,数值在 60~98 之间波动。过渡动画自动完成,不需要额外配置。

dispatchAction — 控制交互

除了更新数据,还可以用 dispatchAction 程序化触发交互:

常用 dispatchAction 示例
// 高亮某个数据项(比如停机最多的设备)
chart.dispatchAction({
  type: 'highlight',
  seriesIndex: 0,
  dataIndex: 2    // 第 3 个数据项
});

// 显示 tooltip
chart.dispatchAction({
  type: 'showTip',
  seriesIndex: 0,
  dataIndex: 2
});

// 图表联动:一个图点击,另一个图跟着更新
chart1.on('click', function(params) {
  chart2.setOption({ /* 根据点击更新 */ });
});

10 · 响应式与自适应

📊 核心概念

你的销量大屏本来挂在墙上(大屏),现在老板想在手机上也能看。图表要自动缩放,不能在大屏上很好看、在手机上就挤成一团。

核心:监听窗口变化,调用 resize()

JavaScript — 响应式适配
// 方法1:监听 window resize(基础方案)
window.addEventListener('resize', function() {
  myChart.resize();
});

// 方法2:多个图表一起 resize
window.addEventListener('resize', function() {
  chart1.resize();
  chart2.resize();
  chart3.resize();
});

// 方法3:防抖 resize(推荐,避免频繁触发)
var resizeTimer;
window.addEventListener('resize', function() {
  clearTimeout(resizeTimer);
  resizeTimer = setTimeout(function() {
    myChart.resize();
  }, 300);
});

// 方法4:容器自适应(CSS 方案,推荐)
// 容器用 CSS 百分比宽度,图表自动跟随
// <div id="chart" style="width:100%;height:400px"></div>

大屏适配方案

制造业大屏通常是固定分辨率(如 1920x1080),可以用 CSS transform: scale() 做等比缩放:

CSS — 大屏等比缩放
/* 大屏容器:固定设计稿尺寸,自动缩放 */
.dashboard {
  width: 1920px;
  height: 1080px;
  transform-origin: 0 0;
  position: fixed;
  top: 0;
  left: 0;
}

<script>
  // 根据窗口大小计算缩放比例
  function autoScale() {
    var scaleX = window.innerWidth / 1920;
    var scaleY = window.innerHeight / 1080;
    var scale = Math.min(scaleX, scaleY);
    document.querySelector('.dashboard').style.transform =
      'scale(' + scale + ')';
  }
  autoScale();
  window.addEventListener('resize', autoScale);
</script>

11 · 配色方案

📊 核心概念

配色影响视觉感受:暖色调让人感觉温馨,冷色调让人感觉干净。制造业大屏通常用深色背景 + 科技感配色——因为大屏在暗处观看,深色背景减少眩光,亮色数据更突出。

制造业大屏配色原则

开箱即用的深色主题配置

JavaScript — 制造业大屏主题
// 复制这个配置,所有图表共用
var darkTheme = {
  backgroundColor: '#0d1b2a',          // 深色背景

  color: [                            // 图表配色板
    '#00d2ff',  // 科技蓝(主色)
    '#00e676',  // 工业绿(正常/达标)
    '#ff9100',  // 警告橙(注意)
    '#ff1744',  // 报警红(异常)
    '#D2A8FF',  // 辅助紫
    '#18ffff'   // 青色辅助
  ],

  title: {
    textStyle: { color: '#e0e0e0', fontSize: 18 },
    subtextStyle: { color: '#90a4ae' }
  },

  legend: {
    textStyle: { color: '#b0bec5' }
  },

  xAxis: {
    axisLine:  { lineStyle: { color: '#37474f' } },
    axisLabel: { color: '#90a4ae' },
    splitLine: { lineStyle: { color: '#263238' } }
  },

  yAxis: {
    axisLine:  { lineStyle: { color: '#37474f' } },
    axisLabel: { color: '#90a4ae' },
    splitLine: { lineStyle: { color: '#263238' } }
  },

  tooltip: {
    backgroundColor: 'rgba(13,27,42,0.9)',
    borderColor: '#37474f',
    textStyle: { color: '#e0e0e0' }
  }
};

// 使用方式:传入 init 的第二个参数
// var chart = echarts.init(dom, darkTheme);
// 或者:chart.setOption({ ...darkTheme, series: [...] });

12 · 速查表

一张表掌握所有常用图表,打印出来贴工位上。

图表类型 什么时候用 关键配置 制造业场景
柱状图
type: 'bar'
比较不同类别的数值大小 xAxis.type: 'category'
label: { show: true }
各产线 OEE 对比
各班次产量排名
各机台停机时长
折线图
type: 'line'
展示时间趋势变化 smooth: true(平滑)
areaStyle: {}(面积)
markLine(参考线)
24h 产量趋势
月度 OEE 走势
温度监控曲线
饼图
type: 'pie'
展示各部分占总体的比例 radius: ['40%','70%'](环形)
emphasis(悬浮效果)
停机原因分布
不良品类型占比
能耗分类
仪表盘
type: 'gauge'
展示单个百分比指标 min / max
axisLine(颜色区间)
detail(中央数字)
OEE 仪表盘
设备利用率
直通率监控
地图
type: 'map'
展示地理分布数据 map: 'china'
visualMap(颜色映射)
registerMap 注册
各车间产量热力图
全国工厂分布
供应链地图
动态排序
type: 'bar'
动态展示排名变化 setInterval 定时更新
sort 排序
inverse: true
机台产量排名变化
各厂产能竞赛
年度数据对比
组合图
bar + line
同时展示不同量纲数据 yAxisIndex: 1(右轴)
两个不同 type 的 series
产量 + 直通率
能耗 + 单位成本
产量 + 不良率
散点图
type: 'scatter'
展示两个变量的相关性 symbolSize(点大小)
visualMap(颜色映射)
温度 vs 不良率
速度 vs 质量
设备位置分布
堆叠柱状图
stack: 'x'
展示各部分构成 + 总量 stack 属性相同则堆叠
label: { position: 'inside' }
停机时长分类堆叠
各产线不良品构成
能耗分时段堆叠
雷达图
type: 'radar'
多维度综合评估 radar.indicator(维度)
多个 series 对比
产线综合评分
供应商能力评估
设备五维评价

常用配置速查

需求配置
图表标题title: { text: '标题', left: 'center' }
鼠标提示tooltip: { trigger: 'axis' }(折线/柱状用 axis,饼图用 item)
图例legend: { bottom: 10 }
显示数值label: { show: true, position: 'top' }
颜色itemStyle: { color: '#00d2ff' }
动画时长animationDuration: 1000(毫秒)
保存为图片toolbox: { feature: { saveAsImage: {} } }
缩放dataZoom: [{ type: 'inside' }]
更新数据chart.setOption({ series: [{ data: [...] }] })
响应式window.addEventListener('resize', () => chart.resize())
ECharts 图表教程 · 中际旭创岗位培训 · 全部示例可直接在浏览器中运行