1.Echarts的颜色设计

  • Echarts的颜色的设置分为两种:色盘和具体颜色
  • 色盘适合做全局设置,因为他里面有多个颜色,通俗的说色盘就是颜色预设值列表,色盘统一使用color属性进行配置。
  • 而具体元素或者具体系列只有一个颜色时,可以单独为其进行设置,他的值为单个颜色值,但是具体元素和具体系列的类别不一样,没有统一的配置项名称,需要用时按文档进行配置。
  • 当某个系列需要多种颜色支持时,请使用色盘。当某个系列或者元素只有一个颜色时,且不项使用默认的颜色时,这时候可以进行具体的配置

2.色盘的介绍

色盘就是一个数组,每个元素是一个颜色值,每个系列的数据按照先后顺序从色盘数组中依次取色,例如:

不同版本默认的色盘可能不一致,这是V4的默认效果:

3.设置全局色盘

option下面的color节点用来设置全局色盘的颜色,每个系列根据先后顺序从色盘取色,全局色盘适用于折线图,直方图这种图表,因为他们每个系列只有一种颜色。

option: {
color:["#ff0000","#00ff00","#0000ff"],//红绿蓝

4.设置系列的色盘

有时候只希望设置的色盘只在某个系列里面生效,可以将color属性写入到相应的系列里面

色盘是多颜色预设列表,如果设置在某个系列里面,需要这个系列支持多颜色,例如饼图,饼图一个系列需要多种颜色支持。而折线图,直方图这种图表本身只有一个颜色,所以为其设置系列色盘时只有第一个颜色才有效,所以这种图表不推荐设置色盘。

方法:在serise的元素中配置color属性

option3: {
series: [
{
color: ["#ff0000", "#00ff00", "#0000ff"],//红绿蓝
name: '访问来源',
type: 'pie', // 设置图表类型为饼图
radius: '55%', // 饼图的半径,外半径为可视区尺寸(容器高宽中较小一项)的 55% 长度。
data: [ // 数据数组,name 为数据项名称,value 为数据项值
{ value: 235, name: '视频广告' },
{ value: 274, name: '联盟广告' },
{ value: 310, name: '邮件营销' },
]
}
]
}

注意:系列色盘的优先级高于全局色盘

4.设置具体系列或元素的颜色 itemStyle

为某个系列设置单个颜色时,可以使用itemStyle.color为其配置颜色,他的好处在于只在当前系列生效,不影响全局颜色分配

series: [
{ type: 'bar', name: "1", data: [20, 15, 10, 75, 85, 20] ,itemStyle:{color:'#ff0000'}},
{ type: 'bar', name: "2", data: [15, 25, 20, 85, 45, 50] ,itemStyle:{color:'#00ff00'}},
{ type: 'bar', name: "3", data: [10, 35, 40, 45, 25, 30] ,itemStyle:{color:'#0000ff'}},
]

series: [
{ type: 'line', name: "1", data: [20, 15, 10, 75, 85, 20] ,itemStyle:{color:'#ff0000'}},
{ type: 'line', name: "2", data: [15, 25, 20, 85, 45, 50] ,itemStyle:{color:'#00ff00'}},
{ type: 'line', name: "3", data: [10, 35, 40, 45, 25, 30] ,itemStyle:{color:'#0000ff'}},
]

itemStyle中的color属性值可以是一个函数,data中每个数据渲染时都会执行一遍,通过参数可以返回不同的颜色值,从而让每个数据代表的元素拥有不同的颜色

itemStyle:{
color:function(e){
//e.dataIndex
var colorArr = ['red','yellow','green']
return colorArr[e.dataIndex]
}
}

5.渐变色生成函数

前面使用的颜色都是单一的颜色值,Echarts还支持渐变色,渐变色设置有2中方法:

  • (1)配置法:将color属性的值设置为对象,通过相应的配置来生成渐变色
  • (2)api调用法:通过调用相应的api,传入配置项来返回想要的渐变色。

渐变有两个因素:颜色和角度。

在Echarts中,角度由四个坐标决定,即: (x2 - x)会有一个横向的向量距离,(y2 - y)会有一个纵向的向量距离,这两个向量连接起来的角度就是渐变的角度

下面两种效果是一致的

series: [{
type: 'bar',
name: "1",
data: [20, 15, 10, 75, 85, 20],
itemStyle: {
color: {
type: 'linear',//渐变类型 线性渐变
x: 0,y: 0,x2: 0,y2: 1,
//四个坐标决定渐变的角度
colorStops: [{
offset: 0,
color: '#ff0000' // 0% 处的颜色
},
{
offset: 1,
color: '#00ff00' // 100% 处的颜色
}],
globalCoord: false // false表示四个坐标值使用比例 true则表示四个坐标值是绝对的像素位置
}
}
},
{
type: 'bar',
name: "1",
data: [20, 15, 10, 75, 85, 20],
itemStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, //四个坐标决定渐变的角度
[{
offset: 0,
color: '#ff0000' ,// 0% 处的颜色
},
{
offset: 1,
color: '#00ff00',// 100% 处的颜色
},
])
}
},
]

将四个坐标设置成下面

x: 0,y: 0,x2: 1,y2: 1,

Echarts 颜色管理的更多相关文章

  1. Color.js 增强你对颜色的控制

    Color.js是一个能加强前端开发中对颜色处理的第三方库. 假设你已经基本了解色彩通道.色彩空间.色相.饱和度.亮度.不透明度等概念.当然了,毕竟前端算是半只脚踏进设计领域了,相信这些概念难不到你. ...

  2. Color.js增强你对颜色的控制

    往逝之因 不要低头,皇冠会掉...  可你又没有皇冠 Color.js 增强你对颜色的控制 阅读目录 轻松管理颜色--color.js库 使用color.js Accessor Methods 你该知 ...

  3. Photoshop颜色出现比较大的偏差,偏色严重,显示器配置文件2351似乎有问题

    其实出现这个问题是因为 显示器的配置问题.并不是PS版本或者电脑系统问题. 一般在你首次启动PS的时候会出现提示:显示器配置文件2351似乎有问题. 如果你点击了继续运行那以后你使用PS打开任何文件都 ...

  4. echarts常见配置项总结,legend、toolbox、tooltip等

    1.饼状图指示线改变颜色:series.labelLine.lineStyle series : [ { name: '默认文字', type: 'pie',//类型饼状图 hoverAnimatio ...

  5. [lr & ps] 色彩空间管理

    色彩空间 • 定义 色彩空间,Color Space,又称作色域.在色彩学中,人们建立了许多色彩模型,以一维.二维.三维甚至四维空间坐标来表示某一色彩,这种坐标系统所能定义的色彩范围即色彩空间.我们经 ...

  6. Quartz 2D编程指南(4) - 颜色和颜色空间

    不同的设备(显示器.打印机.扫描仪.摄像头)处理颜色的方式是不同的.每种设备都有其所能支持的颜色值范围.一种设备能支持的颜色可能在其它设备中无法支持.为了有效的使用颜色及理解Quartz 2D中用于颜 ...

  7. 个人永久性免费-Excel催化剂功能第77波-专业图表制作辅助之批量维护序列点颜色及数据标签

    2018年最后一天工作日完成第77波,7是代表完美,2个7,双重的完美,Excel催化剂的2018年从始至终共77波都充满着完美接近极致的功能体验.感谢各位一路相随,陪伴成长.最后一波,再次让数据分析 ...

  8. echarts图表自适应盒子的大小(盒子的大小是动态改变的),大到需要全屏展示

    项目中用到了echarts,并且页面是自适应的,且页面中有一个[放大.缩小]功能,因此图表还需要根据盒子的大小来变化. 即:两个需求,如下: ① 图表根据窗口的大小自适应 ② 图表根据所在盒子的大小自 ...

  9. 国庆总结:echarts自定义颜色主题,保证你看的明明白白

    为什么需要使用颜色主题 随着用户审美越来越高,不再是过去那样只注重功能. 所以对界面的颜色样式都具有一定的审美要求 此时颜色是否好看就非常重要了 因为人都是视觉动物 对界面的第一印象肯定都是颜色. 如 ...

  10. [WPF]颜色主题功能

    效果 点击选择皮肤颜色 代码 public enum Themes { Blue, Gray, Orange } /// <summary> /// 主题颜色管理类 /// </su ...

随机推荐

  1. CSS & JS Effect – Simulation Position Sticky (用 JavaScript 实现 position sticky)

    前言 在 CSS – Position 我有提到过, 原生的 sticky 有一些 limitation. 不是每次都闪的掉. 这篇主要是通过 JS 来模拟它, 突破那些限制. Google Ads ...

  2. CSS – Counters

    介绍 counter 有点像 JS 的 for loop index. 最常用到的地方就是做 ol > li. 参考: W3Schools – CSS Counters 默认 ol > l ...

  3. SQL SERVER (MSSQL) 学习笔记 性能

    refer: 看懂SqlServer查询计划 How do I identify slow queries in sql server? join operator, hash, merge, nes ...

  4. 人脸识别 face detect & recognize

    前言 最近有一个项目要升级. 它是一个在线教育的 web app. 由于学生年龄小, 不适合用 username/password 这种方式做登入. 所以项目开始之初是使用 RFID 来登入的. 但由 ...

  5. ASP.NET Core – Web API Versioning

    前言 项目持续维护, API 就需要版本控制. ASP.NET Core 有官方的插件专门处理 API 版本控制. 主要参考 Your Guide to REST API Versioning in ...

  6. 2024年常用的Net web框架

    ASP.NET Core 框架声明:是微软推出的新一代开源.跨平台的 Web 应用框架,用于构建高性能.现代化的 Web 应用程序. 官网地址:https://dotnet.microsoft.com ...

  7. 我是如何开发一款支持IDEA、PyCharm、Android Sutdio 等JB全家桶的摸鱼插件的

    公众号「古时的风筝」,专注于后端技术,尤其是 Java 及周边生态. 个人博客:www.moonkite.cn 大家好,我是风筝 前些天做了一款支持 Jetbrains 大部分 IDE 的摸鱼插件- ...

  8. Java项目笔记(三)

    一.前端传参类似以下格式,对象中包含一个对象,后台此时接收option为stirng类型 curriculumid question answer option {optionOne ,optionT ...

  9. 《你必须掌握的Entity Framework 6.x与Core 2.0》代码下载

      https://item.jd.com/12376014.html<你必须掌握的Entity Framework 6.x与Core 2.0>代码下载,共享代码: https://git ...

  10. Thinkphp原生验证码的使用

    Thinkphp原生验证码的使用 一. 获取验证码 public function verifyCode(){ $captcha = new \think\captcha\Captcha(); $ca ...