【问题标题】:Adding image on the top of bar in chartjs在chartjs的条形顶部添加图像
【发布时间】:2019-02-06 04:54:56
【问题描述】:

我在我的网站上使用了不同的图表,这导致了一些问题,因此我们迁移到了 chartjs。一切正常,但我有一个在 chartjs 中找不到的要求。

在我正在开发的网站中,用户进行了评估,并根据评估结果显示图表。

所以在评估中,有一个问题“你感觉恶化吗?”如果用户选择是,那么在图表中它会在该条上方显示一个图像,如下图所示。

在图片中,您可以在两个条形上方看到“E”。

我想在 chartjs 中实现同样的效果。可能吗?如果没有,那么你们能否建议一种方法来通知用户他们选择了“恶化”。

谢谢

【问题讨论】:

  • 你有什么解决办法吗?
  • @ArigatoManga 没有 Arigato,我没有找到任何解决方案。我认为这在chartjs中是不可能的。我不得不使用不同的图表。
  • 经过长时间的尝试我能够做到..但不知道这对你现在是否有用
  • 请在此回答,对他人有帮助

标签: javascript charts chart.js bar-chart


【解决方案1】:

您可以使用chartjs-plugin-labels 将图像放置在各个条形的顶部。

请看下面的可运行代码sn-p:

new Chart(document.getElementById('myChart'), {
  type: 'bar',
  data: {
    labels: ['A', 'B', 'C', 'D'],
    datasets: [{
      label: 'My Dataset',
      data: [25, 59, 80, 76],
      fill: false,
      backgroundColor: ['rgba(255, 99, 132, 0.2)', 'rgba(255, 159, 64, 0.2)', 'rgba(255, 205, 86, 0.2)', 'rgba(75, 192, 192, 0.2)'],
      borderColor: ['rgb(255, 99, 132)', 'rgb(255, 159, 64)', 'rgb(255, 205, 86)', 'rgb(75, 192, 192)', 'rgb(54, 162, 235)'],
      borderWidth: 1
    }]
  },
  options: {
    plugins: {
      labels: {
        render: 'image',
        textMargin: 10,
        images: [
          {
            src: 'https://i.stack.imgur.com/9EMtU.png',
            width: 20,
            height: 20
          },
          null, 
          {
            src: 'https://i.stack.imgur.com/9EMtU.png',
            width: 20,
            height: 20
          },
          null
        ]
      }
    },
    layout: {
      padding: {
        top: 30
      }
    },
    legend: {
      display: false
    },
    scales: {
      yAxes: [{
        ticks: {
          beginAtZero: true
        }
      }]
    }
  }
});
canvas {
  max-width: 300px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.bundle.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/emn178/chartjs-plugin-labels/src/chartjs-plugin-labels.js"></script>
<canvas id="myChart" width="10" height="6"></canvas>

【讨论】:

  • 如何为 Horizo​​ntalBar 实现这个?它只适用于垂直条
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-21
相关资源
最近更新 更多