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] };
});
相关推荐
xiaohe06014 小时前
🥳 Uni ECharts 2.1 发布:正式支持鸿蒙,零成本迁移、全平台兼容、跨端开发零负担!
vue.js·uni-app·echarts
前端_Danny21 小时前
使用 ECharts + ECharts-GL 生成 3D 环形图
3d·信息可视化·echarts
景早1 天前
小黑记账清单案例(axios,echarts,vue)
前端·vue.js·echarts
uuai2 天前
echarts不同版本显示不一致问题
前端·javascript·echarts
马卫斌 前端工程师2 天前
vue3 实现echarts 3D 地图
前端·javascript·echarts
盼哥PyAI实验室4 天前
纯前端打造个人成长网站:零后端、零部署、零服务器的实践分享
运维·服务器·前端·javascript·echarts·个人开发
Lsx_4 天前
详解ECharts中的convertToPixel和convertFromPixel
前端·javascript·echarts
java水泥工5 天前
基于Echarts+HTML5可视化数据大屏展示-工厂信息监控台
echarts·html5·可视化大屏·大屏模版
菩提树下的杨过6 天前
dify+LLM+echarts打造智能可视化数据分析AI助手
echarts·dify
合作小小程序员小小店8 天前
web网页,在线%抖音,舆情%分析系统demo,基于python+web+echart+nlp+知识图谱,数据库mysql
数据库·python·自然语言处理·flask·nlp·echarts·知识图谱