echarts学习:调色盘

前言

在之前的几篇文章中,我试图复现下面的这张图表。

目前复现的效果如下:

今天我想要实现的效果是让y轴与对应的折线显示同样的颜色。

1.调色盘介绍

我早就听说echarts存在一个调色盘的概念,如今终于是好好的了解了一下。调色盘就是配置项中的color属性,它的值是一个颜色数组,它的作用是给系列设置颜色(如果系列本身没有设置颜色的话)

例如我设置了调色盘后效果如下:

JavaScript 复制代码
{
  color:[
    'Aqua',
    'BurlyWood'
  ],
} 

之后通过调色盘我就可以方便的将我的图表设置为示例图中一样的颜色。

不过不得不说,调色盘与我想象中的效果差别很大,我没想到它只能应用与系列,我本以为也可以在轴线中使用调色盘中的颜色的。

2.给y轴设置颜色

最后发现只能使用最笨的方法一个个的给y轴添加颜色。我这里使用了代码来添加:

JavaScript 复制代码
const option = ref({
  color: ["#F30502", "#FBA603", "#067E05", "#0000EB", "#82007A", "#FCB9CB"],
  tooltip: {
    trigger: "axis",
  },
  legend: {},
  grid: {
    left: "3%",
    right: "4%",
    bottom: "3%",
    containLabel: true,
  },
  toolbox: {
    feature: {
      saveAsImage: {},
    },
  },
  grid: {
    left: "20%",
    right: "20%",
  },
  xAxis: {
    type: "category",
    boundaryGap: false,
    data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],
    axisLine: {},
  },
  yAxis: [
    {
      type: "value",
      name: "水位(m)",
      axisLine: {
        show: true,
      },
      axisLabel: {
        inside: true,
      },
    },
    {
      type: "value",
      name: "流量(m³/s)",
      axisLine: {
        show: true,
      },
      axisLabel: {
        inside: true,
      },
    },
    {
      type: "value",
      name: "指标参数三",
      position: "right",
      offset: 60,
      axisLine: {
        show: true,
      },
      axisLabel: {
        inside: true,
      },
    },
    {
      type: "value",
      name: "指标参数四",
      position: "right",
      offset: 120,
      axisLine: {
        show: true,
      },
      axisLabel: {
        inside: true,
      },
    },
    {
      type: "value",
      name: "指标参数五",
      position: "left",
      offset: 60,
      axisLine: {
        show: true,
      },
      axisLabel: {
        inside: true,
      },
    },
    {
      type: "value",
      name: "指标参数六",
      position: "left",
      offset: 120,
      axisLine: {
        show: true,
      },
      axisLabel: {
        inside: true,
      },
    },
  ],
  series: [
    {
      name: "xxx水位",
      type: "line",
      yAxisIndex: 0,
      data: [120, 132, 101, 134, 90, 230, 210],
    },
    {
      name: "xxx流量",
      type: "line",
      yAxisIndex: 1,
      data: [220, 182, 191, 234, 290, 330, 310],
    },
    {
      name: "series3",
      type: "line",
      yAxisIndex: 2,
      data: [150, 232, 201, 154, 190, 330, 410],
    },
    {
      name: "series4",
      type: "line",
      yAxisIndex: 3,
      data: [320, 332, 301, 334, 390, 330, 320],
    },
    {
      name: "series5",
      type: "line",
      yAxisIndex: 4,
      data: [820, 932, 901, 934, 1290, 1330, 1320],
    },
    {
      name: "series6",
      type: "line",
      yAxisIndex: 5,
      data: [582, 570, 543, 599, 610, 550, 560],
    },
  ],
});

option.value.yAxis.forEach((axis, i) => {
  axis.axisLine.lineStyle = { color: option.value.color[i] };
});
相关推荐
shmily麻瓜小菜鸡1 天前
前端“伪防盗链”方案
前端·javascript·vue.js·bootstrap·echarts
张人玉2 天前
基于 Vue 3 + ECharts + Express + SQLite 的可视化大屏与业务管理系统——YOLOv8 高精度车辆行人检测与计数系统
数据库·vue.js·yolo·sqlite·echarts·express
张人玉3 天前
基于 Vue 3 + ECharts + Express + SQLite 构建的鞋类零售数据分析与毛利预测平台——基于深度学习的鞋类销售数据分析系统
vue.js·sqlite·echarts·express
猫3284 天前
echarts 日常问题解决
前端·javascript·echarts
winfredzhang5 天前
用 wxPython + ECharts + 阿里矢量地图,做一个可离线兜底的上海雨量看板
前端·javascript·echarts
瑞瑞小同学6 天前
处理echarts x轴内容过多,重叠问题
前端·javascript·echarts
张人玉7 天前
基于 Vue 3 + ECharts + Express + SQLite 的世界数据可视化大屏系统——世界态势数据可视化大屏
vue.js·echarts·express
程序猿乐锅7 天前
【苍穹外卖 day11|统计报表接口与 Apache ECharts 图表展示】
前端·apache·echarts
码哥字节8 天前
ECharts 8 个实战技巧,从配置到性能全覆盖
echarts·数据可视化·前端性能优化