【发布时间】:2014-01-29 13:08:56
【问题描述】:
我有一个chart in jsfiddle。
另外,代码如下:
$(function () {
retailerNameArray = ['a', 'b', 'c', 'a', 'b', 'a', 'b', 'a' ],
clicksArray = [43, 48, 17, 63, 43, 47, 27, 31],
series = [];
series = generateData(retailerNameArray, clicksArray);
function generateData(names, points) {
var ret = {},
ps = [],
series = [],
len = points.length;
//concat to get points
for (var i = 0; i < len; i++) {
ps[i] = {
y: points[i],
n: names[i]
};
}
names = [];
//generate series and split points
for (i = 0; i < len; i++) {
var p = ps[i],
sIndex = $.inArray(p.n, names);
if (sIndex < 0) {
sIndex = names.push(p.n) - 1;
series.push({
name: p.n,
data: []
});
}
series[sIndex].data.push(p);
}
return series;
}
window.chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
polar: true,
type: 'column'
},
title: {
text: 'Highcharts Polar Chart'
},
pane: {
startAngle: 0,
endAngle: 360,
size: '85%'
},
legend: {
reversed: true,
enabled: false,
align: 'right',
verticalAlign: 'top',
y: 100,
layout: 'vertical'
},
xAxis: {
type: "",
categories: ['N', 'S', 'E', 'W'],
labels: {
formatter: function () {
return this.value + '°';
}
}
},
yAxis: {
min: 0
},
plotOptions: {
series: {
//pointStart: 0,
//pointInterval: 45
// pointPlacement: 'between'
},
column: {
pointPadding: 0,
groupPadding: 0
}
},
series: series
});
});
如何显示:N 范围内的 2 个数据,S 范围内的 3 个数据,E 范围内的 1 个数据,W 范围内的 2 个数据。
提前致谢!
【问题讨论】:
-
jsfiddle.net/JaTjk/57(图表见此链接)
标签: javascript arrays highcharts