2017-05-23 16 views
0

私は、複数のグラフと複数の値の軸を持つAmchartグラフを持っています。値はまったく異なる場合があります。たとえば、1つのグラフの値は-3000から3000、もう1つは0-40です。amCharts値の軸を一列に整列する

私が望むのは、すべての図がすべて表示されるようにすることです。ですから、私は 'synchronizeGrid'オプションを使用します。

ここに私の現在のコードです:

"synchronizeGrid": true, 
    "valueAxes": [{ 
    "id": "v1", 
    "axisColor": "#FF6600", 
    "axisThickness": 2, 
    "axisAlpha": 1, 
    "position": "left" 
    }, { 
    "id": "v2", 
    "axisColor": "#FCD202", 
    "axisThickness": 2, 
    "axisAlpha": 1, 
    "offset": 50, 
    "position": "left" 
    }, { 
    "id": "v3", 
    "axisColor": "#B0DE09", 
    "axisThickness": 2, 
    "gridAlpha": 0, 
    "offset": 100, 
    "axisAlpha": 1, 
    "position": "left" 
    }], 

https://jsfiddle.net/fungxbsh/

は、しかし、あなたはそれぞれのチャートが異なるグリッドラインでヌル・レベルを持っている、すなわち、ヌルレベルは同じではないことに気づくことがあります。すべてのチャートに同じヌルレベルを使用させる方法はありますか?

答えて

0

I三の軸が同じ「ヌル」値を使用することが見出さ唯一の方法は、単にそれらのそれぞれの最大絶対値を見つけてmaximumとして設定することであり、minimumパラメータのマニュアルに従ってValueAxisを規定しながらAmCharts。

最後に、絶対値maxVisits,maxHitsmaxViewsを格納する3つの変数があります。

は、その後、あなたは、このようなmaximumminimumパラメータ設定:

"valueAxes": [{ 
    "id": "v1", 
    "axisColor": "#FF6600", 
    "axisThickness": 2, 
    "axisAlpha": 1, 
    "position": "left", 
    "maximum": maxVisits, 
    "minimum": -maxVisits 
    }, { 
    "id": "v2", 
    "axisColor": "#FCD202", 
    "axisThickness": 2, 
    "axisAlpha": 1, 
    "position": "right", 
    "maximum": maxHits, 
    "minimum": -maxHits 
    }, { 
    "id": "v3", 
    "axisColor": "#B0DE09", 
    "axisThickness": 2, 
    "gridAlpha": 0, 
    "offset": 50, 
    "axisAlpha": 1, 
    "position": "left", 
    "maximum": maxViews, 
    "minimum": -maxViews 
    }] 

をそして最後に、あなたは再びfalsesynchronizeGridパラメータを設定する必要があります。ここで

See the full example here.

0

私が作ってみた最適なソリューションです。 'synchronizeWith' 例えば

  "synchronizeWith": "v1", 
      "synchronizationMultiplier": sync 

、あなたのv2の軸上、使用してセット:利用ください

あなたが同期したい軸への値。乗数の場合は、両方の軸で最大値を探し、小さい方の値を大きい方の値で割って比率を求めます。この比率はあなたの乗数です。

関連する問題