2017-12-05 17 views
0

ハイチャートを使用して負の軸棒グラフを作成しましたが、表示したくない形式が表示されません。私は表示されている形式にそれを操作することはできません。ハイチャートの負の軸棒グラフを修正するには?

下記のコードの出力が添付されています。 http://jsfiddle.net/00bh7yp7/2/

// Age categories 
var categories = [ 
     '0-4', '5-9', '10-14', '15-19', 
     '20-24', '25-29', '30-34', '35-39', '40-44', 
     '45-49', '50-54', '55-59', '60-64', '65-69', 
     '70-74', '75-79', '80-84', '85-89', '90-94', 
     '95-99', '100 + ' ]; 

    Highcharts.chart('container', { 
     chart: { 
      type: 'bar' 
     }, 
     title: { 
      text: 'Population pyramid for Germany, 2015' 
     }, 
     subtitle: { 
      text: 'Source: <a href="http://populationpyramid.net/germany/2015/">Population Pyramids of the World from 1950 to 2100</a>' 
     }, 
     xAxis: { 
      categories: categories, 
      reversed: false, 
      offset: 0, 
      labels: { 
       step: 1 
      }, 

     }, 
     yAxis: { 

      title: { 
       text: null 
      }, 
      labels: { 
       formatter: function() { 
        return Math.abs(this.value) + '%'; 
       } 
      } 
     }, 

     plotOptions: { 
      series: { 
       stacking: 'normal' 
      } 
     }, 

     tooltip: { 
      formatter: function() { 
       return '<b>' + this.series.name + ', age ' + this.point.category + '</b><br/>' + 
        'Population: ' + Highcharts.numberFormat(Math.abs(this.point.y), 0); 
      } 
     }, 

     series: [{ 
      name: 'Male', 
      data: [-2.2, -2.2, -2.3, -2.5, -2.7, -3.1, -3.2, 
       -3.0, -3.2, -4.3, -4.4, -3.6, -3.1, -2.4, 
       -2.5, -2.3, -1.2, -0.6, -0.2, -0.0, -0.0] 
     }, { 
      name: 'Female', 
      data: [2.1, 2.0, 2.2, 2.4, 2.6, 3.0, 3.1, 2.9, 
       3.1, 4.1, 4.3, 3.6, 3.4, 2.6, 2.9, 2.9, 
       1.8, 1.2, 0.6, 0.1, 0.0] 
     }] }); 

CURRENT OUTPUT enter image description here

必要な出力のカテゴリスケールは二つのグラフの間で来て、我々が管理できるように、私はちょうどフォーマットを探しています enter image description here

それ以上。助けてください。

答えて

1

(彼らはAPIで文書化していないが、彼らは仕事)yは軸2を使用している間隔を達成し、leftwidthプロパティでそれらを配置する一つの方法:

yAxis: [{ 
    left: '55%', 
    width: '45%' 
    (...) 
    }, { 
    reversed: true, 
    width: '45%', 
    offset: 0 
    (...) 
    }], 
    series: [{ 
    data: [1, 3] 
    }, { 
    data: [2, 5], 
    yAxis: 1 
    }] 

X軸があります同様に処置:

xAxis: { 
    left: '50%', 
    (...) 
    } 

ライブデモ:http://jsfiddle.net/kkulig/dx2vj8k1/

+0

それを気に入ってください。本当にちょっとした解決策:) –

+0

問題は再び発生しました。このグラフは反応しません。私がそれをウィジェットにすると、パーセント値がwindow.innerHeightとして好きではないでしょう –

+0

問題のライブデモをいくつか提供できますか?私が準備したグラフは応答性がありますが、単純なバージョンです - パーセンテージを使用しています。より良いアプローチは、ピクセルを(chart.events.redner'の中で)計算し、それらを代わりに使用することです。これにより、いくつかの要素(たとえば、グラフの幅が非常に小さい場合はデータラベル)の重なりを防ぐ値を作成することができます。 –

関連する問題