所以我在我的jQuery脚本中的函数中创建了一个highcharts条形图,它工作正常,直到我尝试为条形图的每个条形图合并不同的颜色。我的代码基本如下
function BarChart(title, gType, list, numbers){
var data = [];
var allData = [];
var series = [];
var len = numbers.length;
var colors = ['#7cb5ec', '#434348', '#90ed7d', '#f7a35c', '#8085e9', '#f15c80', '#e4d354', '#8085e8', '#8d4653', '#91e8e1'];
for(i=0; i<len; i++){
data.push({
y: numbers[i],
color:colors[i]
});
allData.push(data[i]);
}
for(i=0; i<len; i++){
series.push({
name: list[i],
data: allData[i]
});
}
然后我继续创建图表,对于系列,我只需要
series: series
但是没有栏,只有传奇,标题,yAxis标题和xAxis标题。如果你可以帮助我做得很好,希望我的问题很清楚!谢谢!
P.S。
当我刚刚提出
series:[{
data: data
}]
它可以工作,但是所有传说都是系列1而我不希望这样,我希望它实际上显示每个数据的名称及其相应的颜色,再次感谢!
答案 0 :(得分:0)
我解决了我自己的问题,但仅仅是为了引用遇到这个问题的其他人,它的评价很简单。写下这段代码,
plotOptions:{
series:{
colorByPoint: true
}}
highcharts将分别为每个条/列/线着色。
此处的参考是highcharts页面,它向我展示了这个:http://api.highcharts.com/highcharts#plotOptions.bar
答案 1 :(得分:0)
如果您仍在查看&#34;系列1&#34;传奇中的问题。我找到了一种有趣的方法,让每个点成为它自己的系列,并且仍然在x轴上正确分组。它通过滥用条形堆叠来工作:
ListView
并在每个数据点上设置增量x值:
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListView.ItemContainerStyle>
这是一个从我从highcharts docs派生的例子构建的工作小提琴: