【问题标题】:How to achieve this kind of heatmap / bar chart with Chart.js如何用 Chart.js 实现这种热图/条形图
【发布时间】:2018-08-28 07:46:25
【问题描述】:

我必须用 chartjs 构建一个水平条。我已经建立了一些,但它有点不同。该图表有 2 个 yAxis 标签(“Storm Risk”、“Ice Risk”)和 xAxes 的小时数。正如您在随附的屏幕截图中看到的那样,我必须每小时打印出具有不同颜色(“低”、“中”、“高”)的这些不同选项之一。

这种条形图通常用条形的长度来表示值,它有点不同。

有什么建议吗?

谢谢

【问题讨论】:

    标签: charts bar-chart chartjs-2.6.0


    【解决方案1】:

    您要实现的图表是一种“热图”。截至目前(2018 年 9 月),Chart.js 不支持开箱即用的热图图表。但是,您可以从堆叠条形图(在这种情况下,可能是堆叠的水平条形图?)中制作一个:使每个堆叠大小彼此相等,并且每个项目 backgroundColor 取决于所表示的实际值。完成此操作后,您可以根据 callbacks 使用 with 覆盖 tickstooltips。图例可以通过一个带有示例值和颜色的条形图来实现。

    更多细节可以在相关的 GitHub 问题中找到:https://github.com/chartjs/Chart.js/issues/4627

    另一种选择是使用 BubbleChart。该策略将是相似的 - 您需要使所有气泡大小相同,但覆盖它们的颜色。但是,如果看问题,堆叠水平条形图会更合适。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-02
      • 2020-11-18
      • 1970-01-01
      • 1970-01-01
      • 2017-09-02
      • 2018-09-23
      • 1970-01-01
      • 2014-03-10
      相关资源
      最近更新 更多