【echarts】多个柱状图渐变色

实现效果:👇

第一种办法:

itemStyle: {
              normal: {
                  //柱体的颜色
                  //右,下,左,上(1,0,0,0)表示从正右开始向左渐变
                  color: function (params) {
                      console.log(params);
                      var colorList = [
                          ['#00FCFF', '#008297'],
                          ['#0091FF', '#005EA4'],
                          ['#901698', '#F157EE'],
                          ['#40FBCB', '#009871']
                      ];

                      var colorItem = colorList[params.dataIndex];
                      return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
                              offset: 0,
                              color: colorItem[0]
                          },
                          {
                              offset: 1,
                              color: colorItem[1]
                          }
                      ], false);
                  }
              }
          },

但是。。。迷幻的是  echarts 和 graphic 一直报错,这个方法就是用不了 时间有限 于是换了种写法

            itemStyle: {
              normal: {
                color: function (params) {
                  let colorArray = [
                    {
                      top: "#DC143C", 
                      bottom: "#FFC0CB",
                    },
                    {
                      top: "#DC143C", 
                      bottom: "#FFC0CB",
                    },
                    {
                      top: "#DC143C", 
                      bottom: "#FFC0CB",
                    },
                    {
                      top: "#0091FF", 
                      bottom: "#00FCFF",
                    },
                    {
                      top: "#0091FF", 
                      bottom: "#00FCFF",
                    },
                    {
                      top: "#0091FF", 
                      bottom: "#00FCFF",
                    },
                    {
                      top: "#0091FF", 
                      bottom: "#00FCFF",
                    },

                    {
                      top: "#008000",
                      bottom: "#98FB98",
                    },
                    {
                      top: "#008000",
                      bottom: "#98FB98",
                    },
                    {
                      top: "#008000",
                      bottom: "#98FB98",
                    },
                  ];
                  let num = colorArray.length;
                  return {
                    type: "linear",
                    colorStops: [
                      {
                        offset: 0,
                        color: colorArray[params.dataIndex % num].bottom,
                      },
                      {
                        offset: 1,
                        color: colorArray[params.dataIndex % num].top,
                      },
                    ],
                  };
                },

                label: {
                  show: true,
                  position: "inside",
                  textStyle: {
                    color: "white",
                  },
                },
              },
            },

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
echarts柱状图可以使用渐变色来实现视觉效果的丰富化。根据引用和引用[2]的内容,可以通过设置颜色数组来实现渐变效果。在渐变的主要使用文章中,有详细介绍了如何设置渐变色。 具体来说,可以通过一个二维数组来定义每个柱体的渐变颜色,其中每一行代表一个柱体的渐变色,第一列是开始渐变时的颜色,第二列是结束渐变时的颜色。引用提供了一个示例代码,可以通过params.dataIndex取二维数组colorList中每个柱体的颜色,并将其填入echarts.graphic.LinearGradient中。 例如,在柱状图的样式设置中,可以使用以下代码来实现渐变效果: ```javascript var colorList = [ ['#ff0000', '#ffff00'], // 第一个柱体的渐变色 ['#00ff00', '#00ffff'], // 第二个柱体的渐变色 // 更多柱体的渐变色... ]; // 在柱状图的itemStyle中设置渐变色 itemStyle: { color: function(params) { var colorItem = colorList }, { offset: 1, color: colorItem } ], false); } } ``` 这样,每个柱体就可以根据定义的渐变色进行渲染了。以上就是关于echarts柱状图渐变的一种实现方式。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [echarts 柱状图渐变色背景](https://download.csdn.net/download/qq_36437172/12418565)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [ECharts(三):柱状图柱体颜色渐变(每个柱体不同渐变色)](https://blog.csdn.net/baidu_41327283/article/details/100114760)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值