绘制复合图表
在这一节中,我们将构建一个混合的图表。左手边是主要图表,右手边从上到下有三个小图。布局使用div和css样式。
左边的图,是一个彩色的柱状图,和我们前面讨论的一样。小图里面的坐标轴和数据标签都将被隐藏。
第一个小图,是两个数据序列,只显示最后一个数据点的数据标签,所以最后一个数据点需要特殊处理。数据标签的颜色和数据序列的相同。在50%的位置绘制一条标志线。下面这个代码片段是两个数据序列之中的一个:
pointStart: 2001,
marker: {
enabled: false
},
data: [ 53.6, 52.7, 52.7, 51.9, 52.4,
52.1, 51.2, 49.7, 49.5, 49.6,
{ y: 48.9,
name: 'US',
dataLabels: {
color: '#4572A7',
enabled: true,
x: -10,
y: 14,
formatter: function() {
return
this.point.name + ": " + this.y + '%';
}
}
}]
第二个小图,是一个简单的条形图,数据标签在分类外面,使用稍大一些的粗体字。
最后一个小图,是一个简单的散点图,每一个数据绘制一个点,每个系列展示在右边图例中。我们将为每个系列的 x 值设置为零,这样我们可以有不同大小的数据点,相互堆叠。下面是散点图中,其中一个数据系列的配置:
zIndex: 1,
legendIndex: 0,
color: {
linearGradient:
{ x1: 0, y1: 0, x2: 0, y2: 1 },
stops: [ [ 0, '#FF6600' ],
[ 0.6, '#FFB280' ] ]
},
name: 'America - 49%',
marker: {
symbol: 'circle',
lineColor: '#B24700',
lineWidth: 1
},
data: [
{ x: 0, y: 49, name: 'America',
marker: { radius: 74 }
} ]
下面是多个图片展示在同一个图表中的效果图: