项目里使用Echarts开发柱状统计图,需要让每个柱子显示不同的颜色也颜色固定,简单通过color设置不起作用,现记录柱状图重要属性以及颜色控制方法。
xAxis
- 类型:{Array|Object}
-
- 只有一个横轴坐标时,可以省略数组写成Object
-
- 最多同时存在两条横轴,位置互斥,默认第一条在底部,第二条在顶部
// option 的xAxis
xAxis : {
show : false,// 默认为true,显示下方x轴;设置为false不显示
type : 'category',// 坐标轴类型,共三种:类目category、数值、时间。
data : ['海尔','美的','格力']// 柱子名称
axisLabel : {// 坐标轴文本标签
show : false,// 默认为true,显示标签;设置为false不显示
interval : 0,// 默认为"auto",自动隐藏显示不下的标签;0:全部显示;{number}:用户指定间隔;{function}回调函数:传递参数[index,data[index]],返回true显示,返回false隐藏
rotate : 90,// 默认为0:标签不旋转
textStyle{// 文字样式
}
}
}
yAxis
yAxis : [
{
type : 'value',
name:'数量',
min: 0,//最小是多少,最大是多少,默认一次增加多少
max: 30,
interval: 6,
axisLabel: {//显示格式化
formatter: '{value} 包'
}
}
]
series
series : [
{
name: '数量',
type: 'bar',
itemStyle: {
normal: {
//这里用函数控制柱子颜色,定义一个list,然后根据所以取得不同的值
color: function(params) {
var colorList = [
'#C1232B','#B5C334','#FCCE10','#E87C25','#27727B',
'#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD',
'#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0'
];
return colorList[params.dataIndex]
},
label: {
show: true,
position: 'top',
formatter: '{b}\n{c}'
}
}
},
//设置柱的宽度,要是数据太少,柱子太宽不美观~
barWidth:70,
data: [28,15,9,4,7,8,23,11,17]
}
]