vue如何用Echarts画柱状图
其中series
中的label
属性为柱状图文本标签,可显示数据、文本等信息,默认不展示,需要将其show
设置为true
时才会在图中展示出来。
4 柱状图样式设置
4.1 柱条样式
柱条的样式可以通过series.itemStyle
设置,包括:
柱条的颜色(
color
);柱条的宽度(
barWidth
);柱条的描边颜色(
borderColor
)、宽度(borderWidth
)、样式(borderType
);柱条的背景色(
showBackground
)柱条圆角的半径(barBorderRadius
);柱条透明度(
opacity
);阴影(
shadowBlur
、shadowColor
、shadowOffsetX
、shadowOffsetY
)。
我们可以对同一个系列柱条设置同一样式,也可以对单一柱条设置特定的样式,如下:
option={xAxis:{data:["A","B","C","D","E"]},yAxis:{},series:[{type:"bar",data:[10,22,28,{value:43,//设置单个柱子的样式itemStyle:{color:"#91cc75",shadowColor:"#91cc75",borderType:"dashed",opacity:0.5}},49],barWidth:"20%",//每个柱条的宽度就是类目宽度的20%//同系列柱条样式itemStyle:{barBorderRadius:5,borderWidth:1,borderType:"solid",borderColor:"#73c0de",shadowColor:"#5470c6",shadowBlur:3}}]};
效果如下:
4.2 柱条间距
柱条间距分为两种,一种是不同系列在同一类目下的距离barWidth
,另一种是类目与类目的距离barCategoryGap
。
示例如下:
option={xAxis:{data:["A","B","C","D","E"]},yAxis:{},series:[{type:"bar",data:[23,24,18,25,18],barGap:"0%",//两个柱子之间的距离相对于柱条宽度的百分比;barCategoryGap:"40%"//每侧空余的距离相对于柱条宽度的百分比},{type:"bar",data:[12,14,9,9,11]}]};
以上示例如图:
在这个例子中,barGap
被设为'0%'
,这意味着每个类目(比如A
)下的两个柱子之间的距离,相对于柱条宽度的百分比,设置成0%说明两个柱跳之间没有间隙。而barCategoryGap
是'40%'
,意味着柱条每侧空余的距离,相对于柱条宽度的百分比。
通常而言,设置barGap
及barCategoryGap
后,就不需要设置barWidth
了,这时候的宽度会自动调整。如果有需要的话,可以设置barMaxWidth
作为柱条宽度的上限,当图表宽度很大的时候,柱条宽度也不会太宽。
在同一坐标系上,此属性会被多个柱状图系列共享。此属性应设置于此坐标系中最后一个柱状图系列上才会生效,并且是对此坐标系中所有柱状图系列生效。
以上效果vue代码如下:
5 动态排序柱状图
动态排序柱状图是一种展示随时间变化的数据排名变化的图表,从 ECharts 5 开始内置支持。
动态排序柱状图通常是横向的柱条,如果想要采用纵向的柱条,只要把本教程中的 X 轴和 Y 轴相反设置即可。
实现动态排序柱状图需要使用以下属性:
yAxis.realtimeSort
设为true
,表示开启 Y 轴的动态排序效果
yAxis.inverse
设为true
,表示 Y 轴从下往上是从小到大的排列
yAxis.animationDuration
建议设为300
,表示第一次柱条排序动画的时长
yAxis.animationDurationUpdate
建议设为300
,表示第一次后柱条排序动画的时长
如果想只显示前n名,将yAxis.max
设为n - 1,否则显示所有柱条
xAxis.max
建议设为'dataMax'
表示用数据的最大值作为 X 轴最大值,视觉效果更好
如果想要实时改变标签,需要将series.label.valueAnimation
设为true
animationDuration
设为0
,表示第一份数据不需要从0
开始动画(如果希望从0
开始则设为和animationDurationUpdate
相同的值)
animationDurationUpdate
建议设为3000
表示每次更新动画时长,这一数值应与调用setOption
改变数据的频率相同
以animationDurationUpdate
的频率调用setInterval
,更新数据值,显示下一个时间点对应的柱条排序
实现效果如下:
上图vue完整代码如下:```js
关于vue如何用Echarts画柱状图问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注恰卡编程网行业资讯频道了解更多相关知识。