【问题标题】:Highcharts - Column chart customizationHighcharts - 柱形图定制
【发布时间】:2016-05-02 05:04:58
【问题描述】:

我正在使用 Highcharts 库创建柱形图。我正在尝试根据我的要求自定义柱形图,但有两件事我无法做到。 首先,柱形图的底部边框,第二个是所有系列的列背景。看看下面的图片,我需要实现什么。

到目前为止我所做的是在这里:jsfiddle

jQuery(document).ready(function(jQuery) {

          jQuery('#portlet-content').highcharts({
        credits: {
            enabled: false
        },
        exporting: {
          enabled: false
        },
        chart: {
            type: 'column'
        },
        title: {
            text: 'Number of Applications'
        },
        subtitle: {
            text: 'BY COUNTRY'
        },
        xAxis: {
          visible: false
        },
        yAxis: {
            visible: false
        },
        legend: {
            enabled: true,
            align: 'right',
            verticalAlign: 'middle',
            layout: 'vertical',
            padding: 3,
            itemMarginTop: 5,
            itemMarginBottom: 5,
            itemStyle: {
                lineHeight: '14px'
            },
            symbolHeight: 12,
            symbolWidth: 12,
            symbolRadius: 6
        },
        tooltip: {
            formatter: function() {
                                return '<b style="color:'+this.point.color+'">'+ this.y +'</b>';
                            },
            useHTML: true,
            borderWidth: 0,
            style: {
                padding: 0,
                fontSize: '16px'
            },
            shadow: false
        },
        series: [
            {
              name: "United Kingdom",
              color: '#32323A',
              data: [
                  [294]
              ]
            }, {
              name: "USA",
              color: '#EB4825',
              data: [
                  [65]
              ]
            }
            , {
              name: "United Arab Emirates",
              color: '#F7CC1E',
              data: [
                  [35]
              ]
            }
            , {
              name: "India",
              color: '#24C746',
              data: [
                  [23]
              ]
            }
            , {
              name: "Canada",
              color: '#2587EC',
              data: [
                  [18]
              ]
            }
        ]
      });

    });

【问题讨论】:

  • 这就是你要找的,stackoverflow.com/questions/7414287/… 用于自定义所有系列的列背景
  • 嘿嘿。您能否将代码插入问题内联中,以便人们可以一目了然地看到它? :~)
  • @Jayaraj.K 不,我正在寻找所有列的某个最大点的列光背景,并为所有列显示不同的颜色到传递的数据点,如图所示。跨度>

标签: javascript charts highcharts


【解决方案1】:

注意:我已修改我的答案以更好地解决原始发帖人问题中的具体要求。

以下是我的建议:

创建一个堆积柱形图,其中一个系列是用户无法与之交互的“虚拟”系列。这将作为您的背景。

这是我根据 Highcharts 堆叠列演示制作的快速小提琴:http://jsfiddle.net/brightmatrix/v97p3eam/

plotOptions: {
    column: { stacking: 'percent' }
},
series: [
    /* this is the "dummy" series
       set the "showInLegend" and "enableMouseTracking" attributes 
       to "false" to prevent user interaction */
    { name: 'dummy data', data: [5, 3, 4, 7, 2], color:'gray', 
              showInLegend: false, enableMouseTracking: false }, 
    /* here's the real data; set a unique color for each
       set nulls for the columns where that color/data is not needed */
    { name: 'Series 1', color: 'red', data: [2,null,null,null,null] }, 
    { name: 'Series 2', color: 'orange', data: [null,2,null,null,null] },
    { name: 'Series 3', color: 'yellow', data: [null,null,2,null,null] },
    { name: 'Series 4', color: 'green', data: [null,null,null,2,null] },
    { name: 'Series 5', color: 'blue', data: [null,null,null,null,1] }
]

如果这对您有帮助,请告诉我!

【讨论】:

  • 我尝试了很多,但无法完全满足我的要求。按照您的示例,我可以按预期显示列,但这样我无法在图例中显示标签。
  • 我发现我错过了你问题的一些关键部分,所以我更新了我的答案和上面的相关小提琴。请让我知道这是否更适合您。
  • 谢谢,它真的帮了我很多。我现在可以按预期显示列,右侧有系列标签。我做了一些更改以根据我的要求显示。在这里查看 (jsfiddle.net/t1rLr1or/3)。现在唯一的问题是工具提示,因为我想在堆栈顶部显示它,但它显示在顶部。
  • 实际上我尝试使用 css 从顶部 (jsfiddle.net/t1rLr1or/4) 的固定位置显示工具提示,但问题是我正在生成动态图,所以有时它会按列重叠。另一个问题是当悬停在背景系列上时,我无法在顶部弹出工具提示。
  • 我运行了您的演示,但没有为灰色列(背景)显示工具提示。只有我观察到的是“白色形状”打印在颜色列上方。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-07
  • 1970-01-01
相关资源
最近更新 更多