highcharts分段显示不同颜色

最近在做统计图的时候,碰到一个需求 类似如下:

就是在红色虚线框内的折线在不同区域用不同的颜色表示,并且是虚线。

开始定位为用highcharts库实现。确定用这个库后,开始在网上查资料,发现有类似的例子,网址是:http://code.hcharts.cn/hcharts.cn/hhhhco

 1 $(function () {
 2     $('#container').highcharts({
 3         series: [{
 4             data: [-10, -5, 0, 5, 10, 15, 10, 10, 5, 0, -5],
 5             zones: [{
 6                     value: 0,
 7                     color: '#f7a35c',
 8                     dashStyle: 'dot'
 9                 }, {
10                     value: 10,
11                     color: '#7cb5ec'
12                 },{
13                     color: '#90ed7d'
14                 },
15             ]
16         }]
17     });
18 });
highcharts demo

效果图如下:

发现它使根据y轴的value值来分段展示的,虽然不符合我的要求,但是从中可以看到2点提示:

1. 分段显示可以根据series 中的zones 来实现;

2. 虚线可以用dashStyle: 'dot' 来实现;

 要想看这个库能否实现我们的需求,最好的办法是查它的API。功夫不负有心人,我在API中找到实现方法。

在 plotOptions.series.zoneAxis 中可以选定使根据x的value还是y得value 来分段,默认是y轴的value,然后我们在series中设置zones就可以了。

 具体网址 http://api.highcharts.com/highcharts#plotOptions.series.zones

最近在做报表中几乎翻遍了highcharts 的API,发现了它的强大,也解决了很多奇葩问题,另外也研究了另一个javascript图表插件echarts,它也是一个非常强大的图表库。大家如果在用这两个图表库中碰到什么问题,我们可以一起探讨。

 

posted @ 2015-12-14 22:49  追梦的超哥  阅读(4542)  评论(11编辑  收藏  举报