【问题标题】:To show difference between two bars in high charts?要显示高图表中两个条形之间的差异?
【发布时间】:2026-01-29 11:50:01
【问题描述】:

我想在高图表插件中的两个条形图之间的新行中显示差异值,我已经在高图表中创建了简单的条形图,但我需要在新行中显示两个条形图之间的差异。 我在下图中解释了这一点,请参考下图。

请帮我解决这个问题, 图 2, 我想以以下格式/设计显示该信息,是否可以在高图表中显示? Image 2

【问题讨论】:

  • 能贴一下js代码吗?
  • Highcharts.chart('container', { data: { table: 'datatable' }, chart: { type: 'column' }, title: { text: '从 HTML 表格中提取的数据页面' }, yAxis: { allowDecimals: false, title: { text: 'Units' } }, tooltip: { formatter: function () { return '' + this.series.name + '
    ' + this.point.y + ' ' + this.point.name.toLowerCase(); } } });
  • 实际上我需要的基本条形图,我从以下链接获取示例,请参考,jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/…
  • 请用代码更新您的问题。不作为评论。
  • 我没有创建任何代码 Kelvin,请告诉我是否可能。像那条线一样绘制并显示差异值。

标签: javascript jquery html svg highcharts


【解决方案1】:

我已经从表格中提取数据来计算差异。但是,作为示例有一些负面差异,例如-1,这将取决于您希望将此信息放在哪个图表上,因为它需要有一个负 y 轴。

以下 jQuery 代码将精确计算所有值,找出第一个和第二个之间的差异,然后将其添加到一个名为 diffChart 的数组中。

var graphs = $('#datatable tbody tr');

var diffChart = [];

for (var i = 0, len = graphs.length; i < len; i++) {
    var target = $('#datatable tbody tr').eq(i);
    var bar1 = target.find('td').eq(0).text();
  var bar2 = target.find('td').eq(1).text();

  var diff = Number(bar1) - Number(bar2);

  diffChart.push(diff);

}

您可以在此jsfiddle 中查看控制台日志输出示例

很抱歉,我帮不上什么忙。

【讨论】:

  • 我建议使用差异的绝对值,尽管我仍然不清楚所需的绘图结果是什么。
  • 我还需要一个帮助 Kelvin,
  • @SivakumarMunusamy 你走了多远?
  • 请再次查看问题并参考“图片2”
最近更新 更多