将总列添加到Highcharts列范围

时间:2017-10-24 00:10:07

标签: javascript highcharts

我正在使用Highcharts构建一个图表,员工可以在该图表中查看给定周的日程安排。理想情况下,我希望有一个总列,显示在给定日期安排和工作的总小时数。

最初我在图表旁边建了一个表,目的是跟踪那里的总数,但是如果动态高图是如何保持行对齐的。

这是一个指向JSFiddle的链接,其中包含了我尝试过的精简版本。如果单击pto图例按钮,您可以看到Highcharts动态更改,这就是为什么图表旁边的表格不能很好地工作。

我认为使用stackLabels属性可能适用于我想要做的事情,但我无法让它工作。

yAxis: {
        min: 0,
        title: {
            text: 'Total fruit consumption'
        },
        stackLabels: {
            enabled: true,
            style: {
                fontWeight: 'bold',
                color: (Highcharts.theme && Highcharts.theme.textColor) || 'gray'
            }
        }
    },

我已经能够像this question描述的那样将总比较添加到图例中,但是将总数与数据栏放在同一行会更加清晰。

本质上我想要的是以下内容。

            8am . 10am   12pm .  2pm .   4pm       Tot. Worked . Tot Schedu.
      Jan 1     -- Worked --------                     4.5            4 
                 --- Scheduled --                             
      Jan 2 .           -- Worked --                   3.5            4
                         --- Scheduled --                             

非常感谢你的帮助!你是最好的!

2 个答案:

答案 0 :(得分:1)

如果您为xAxis设置了Min和Max,则可以使用单独的表来实现总计。这可以防止Highcharts在其中一行没有数据时调整行的大小。

JSFiddle

xAxis: {
    //... other values 
    min: Date.UTC(1,1,3,0,0,0),
    max: Date.UTC(1,1,7,0,0,0),
  }

答案 1 :(得分:0)

您还可以为图表区域内的每个点增加右边距并渲染declare -a child_pids declare -a grandchild_pids child_pids=( $( ps -h -o pid --ppid $$ ) ) for pid in ${child_pids[*]}; do grandchild_pids+=( $( ps -h -o pid --ppid $pid ) ) done 。看一下下面的例子。

API参考:
https://api.highcharts.com/highcharts/chart.marginRight
https://api.highcharts.com/class-reference/Highcharts.SVGRenderer.html#text

例:
http://jsfiddle.net/haLr101e/