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] };
});
相关推荐
阿乐今天敲代码没3 小时前
echarts实现项目进度甘特图
前端·echarts·甘特图
阿乐今天敲代码没3 天前
echarts定制化柱状图——条纹柱状图
前端·echarts
二次程序员4 天前
ECharts图表工厂,完整代码+思路逻辑
前端·javascript·css·echarts·抽象工厂模式·大屏端
陈杨_7 天前
HarmonyOS5云服务技术分享--认证文档问题
华为·echarts·创业创新·harmonyos
koiy.cc9 天前
记录:echarts实现tooltip的某个数据常显和恢复
前端·echarts
小嘟嚷ovo10 天前
h5,原生html,echarts关系网实现
前端·html·echarts
小二·12 天前
ECharts:数据可视化的强大引擎
前端·信息可视化·echarts
pixle013 天前
Vue3 Echarts 3D饼图(3D环形图)实现讲解附带源码
前端·3d·echarts
懒羊羊我小弟14 天前
使用 ECharts GL 实现交互式 3D 饼图:技术解析与实践
前端·vue.js·3d·前端框架·echarts
香蕉可乐荷包蛋15 天前
vue数据可视化开发echarts等组件、插件的使用及建议-浅看一下就行
vue.js·信息可视化·echarts