【问题标题】:Hide a specific series legend in a column chart with multiple series在具有多个系列的柱形图中隐藏特定系列图例
【发布时间】:2020-08-04 19:41:36
【问题描述】:

我正在尝试使用 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”标签添加到每列下方的轴下方(高于年份范围)?

【问题讨论】:

  • 你能说出你在小提琴中尝试了什么吗?
  • @KrishnaKanth 我不熟悉使用小提琴。我该怎么做呢?
  • 这是fiddle的例子jsfiddle.net/afabbro/vrVAP
  • jsfiddle.net/2gdv5893/2 我想出了如何在此处隐藏系列(使用系列选项showInLegend: false),但不确定如何在我的 Rails 代码中应用。另外,我希望图例切换图表的两个条形,而不是只切换一组。

标签: ruby-on-rails highcharts chartkick


【解决方案1】:

使用showInLegendlinkedTo 属性:

    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

【讨论】:

  • 尝试将这三个字段添加到我的代码中,但没有运气。我之前曾尝试添加 showInLegend 字段,但不确定为什么它不起作用。虽然在 jsfiddle 中像魅力一样工作
  • 嗨@dgonz234,所以它在Chartkick 中的工作方式可能不同。您可以直接联系 Chartkick 作者:github.com/ankane/chartkick/issues
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多