我正在尝试使用Chartkick创建具有多个数据系列的图表。事实是,这两个集合在一年中的不同点表示相同的数据点,因此图例具有重复的标签。有没有办法按系列隐藏其中一个?
这是我的current chart的样子。 (左侧的条形代表年初,右侧的条形代表年底)。
这是我现在的图表代码:(出于测试目的,两个集合使用相同的数据哈希)
total_effort_data = [
{ name: "Academic", data: academic_hash, stack: "9/1" },
{ name: "Administrative", data: administrative_hash, stack: "9/1" },
{ name: "Clinical", data: clinical_hash, stack: "9/1" },
{ name: "Research", data: research_hash, stack: "9/1"} ,
{ name: "Academic", data: academic_hash, stack: "8/31" },
{ name: "Administrative", data: administrative_hash, stack: "8/31" },
{ name: "Clinical", data: clinical_hash, stack: "8/31" },
{ name: "Research", data: research_hash, stack: "8/31" }, ]
...
<%= column_chart total_effort_chart_path,
stacked: true, legend: "top", suffix: "%", max: 100,
colors: ["#FFDB80", "#F7A791", "#C8EA80", "#CAE9F4"] %>
此外,是否可以在每列下方的轴下方(年份范围之上)添加“ 9/1”和“ 8/31”标签?
答案 0 :(得分:0)
使用showInLegend
和linkedTo
属性:
series: [..., {
data: [3, 2, 1],
showInLegend: false,
linkedTo: 'series1'
}]
它可能看起来像下面的代码:
total_effort_data = [
{ name: "Academic", data: academic_hash, stack: "9/1", id: "academic" },
...,
{ name: "Academic", data: academic_hash, stack: "8/31", showInLegend: false, linkedTo: "academic" },
...
]
实时演示: http://jsfiddle.net/BlackLabel/ocxyfv42/
API参考:
https://api.highcharts.com/highcharts/series.column.showInLegend
https://api.highcharts.com/highcharts/series.column.linkedTo