如何在页面上居中高图饼图和图例?

时间:2017-09-11 17:29:05

标签: javascript html css highcharts

我在节点/反应单页面应用程序上加载我的高图数据,我无法弄清楚如何将它放在页面中间。目前它看起来像这样:

enter image description here

它漂浮在左边,我想把所有东西都放在中间的橙色框中。我已经在整个高等教育的api文档中看了一遍,似乎无法弄明白。 jsfiddle在这里:http://jsfiddle.net/tobitobetoby/1fqvzpdn/36/(即使它以jsfiddle为中心,它在web / html页面上浮动到左侧)

chart = new Highcharts.Chart({
  chart: {
      renderTo: 'container',
      type: 'pie',
      events: {
        load: function(event) {
          var chart = this,
            points = chart.series[0].points,
            len = points.length,
            total = 0,
            i = 0;
          for (i = 0; i < len; i++) {
            total += points[i].y;
          }
          chart.setTitle({
            text: '<br>€' + total,
            verticalAlign: 'middle',
            style: {
              fontFamily: 'Arial,Roboto,Helvetica,sans-serif',
              fontWeight: 'bold',
              fontSize: 34
            },
          });
          // Adding 'transaction' label - labels below don't support images/icons
          this.renderer.label("<div class='transactions' style='fontSize:20px !important;'><img style='width:25px; height:25px; position:relative; top:7px;' src='https://github.com/tobi-ajala/shell-exercise/blob/master/icons/card.png?raw=true'/> &nbsp Transactions</div>", 120, 130, null, null, null, true).add();
          // Adding date label
          this.renderer.label("<div class='transactions'>11 Sept 2017 - 11 Oct 2017</div>", 95, 225, null, null, null, true).add();
    }
  } 
}

3 个答案:

答案 0 :(得分:2)

查看完整的git repo,index.css文件未在index.js文件中导入,因此无法引用css命令。解决方案是在index.js文件中添加:

import './index.css';

到代码的顶部。然后在index.css文件中添加:

.highcharts-container {
  margin: 0 auto;
}

这将使输入Highcharts div居中。

答案 1 :(得分:1)

将其置于div标记中。只需将align="center"添加到div即可。这是您更新的fiddle

答案 2 :(得分:0)

在js函数中添加此字段

legend: {
    backgroundColor: '#F5F5F5',
    layout: 'horizontal',
    floating: true,
    align: 'center',
    verticalAlign: 'top'
 }