【问题标题】:独立于 ChartJS 中的图例调整图表大小以供 Canvas 下载
【发布时间】:2022-01-18 15:38:54
【问题描述】:

我的应用程序创建和下载的一些图表可能具有非常大的图例。在这种情况下,我们的想法是创建(最好通过 ChartJs - 与关联图表一样)并下载显示图表完整图例的专用画布/图像。

到目前为止,我已经能够通过设置显示比例来“隐藏”图表:false,例如

options: {
  scales: {
    x: {
      display: false
    },
    y: {
      display: false
    }

这成功地阻止了图表的显示,但画布似乎仍然为图表分配了一半的空间,例如

有什么办法可以让图表的空间更小(甚至根本不显示!)为图例留出更多空间?

这里的游乐场: https://jsfiddle.net/ShallDev2018/7bdnjsw9/16/

注意:此处不能选择 HtmlLegend,因为此画布的唯一目的是用于下载。

【问题讨论】:

    标签: javascript canvas charts chart.js legend


    【解决方案1】:

    经过一番修改,我找到了问题的解决方案。

    碰巧的是,ChartJs 为图例设置了默认的最大宽度(尽管它没有在文档中指定)。通过将图例最大宽度设置为较高的值,图例可以假定整个画布,例如

    legend: {
      position: 'left',
      align: 'start',
      fullSize: false,
      labels: {
        font: {
          size: 12
        },
        padding: 10
      },
      maxWidth: 9999
    }
    

    【讨论】:

      猜你喜欢
      • 2013-03-28
      • 1970-01-01
      • 1970-01-01
      • 2013-10-10
      • 1970-01-01
      • 2015-10-20
      • 1970-01-01
      • 2019-06-12
      • 2013-01-04
      相关资源
      最近更新 更多