2016-04-25 11 views
1

私は変化のあるデータを持っています。あるものは線形スケールで読みやすく、他のものは対数スケールが必要です。amcharts対数スケールトグル

私は私が達成しようとしている何を次のコード

AmCharts.makeChart("amchart-metrics-history-"+tag_id, { 
         "type": "serial", 
         "theme": "dark", 
         "titles": [{ 
           "text": "Tag Metrics", 
           "size": 15 
         }], 
         "pathToImages": "/static/img/amcharts/", 
         "legend": { 
          "equalWidths": true, 
          "periodValueText": "", 
          "position": "bottom", 
          "valueAlign": "left", 
          "valueWidth": 100 
         }, 
         "dataProvider": data.data, 
         "dataDateFormat": "YYYY-MM-DD HH:NN:SS", 
         "graphs": [{ 
          "fillAlphas": 0.6, 
          "lineAlpha": 0.4, 
          "title": "Malware", 
          "valueField": "malware_count", 
          "color": "#fff" 
         }, { 
          "fillAlphas": 0.6, 
          "lineAlpha": 0.4, 
          "title": "Benign", 
          "valueField": "benign_count" 
         }, { 
          "fillAlphas": 0.6, 
          "lineAlpha": 0.4, 
          "title": "Grayware", 
          "valueField": "grayware_count" 
         }], 
         "valueAxes": [{ 
          "stackType": "regular", 
          "title": "Sample Count" 
         }], 
         "plotAreaBorderAlpha": 0, 
         "marginTop": 10, 
         "marginLeft": 0, 
         "marginRight":30, 
         "marginBottom": 0, 
         "chartScrollbar": {}, 
         "chartCursor": { 
          "cursorAlpha": 0 
         }, 

         // X-Axis values 
         "categoryField": "time", 
         "categoryAxis": { 
          "parseDates": true, 
          //"startOnAxis": true, 
          //"axisColor": "#DADADA", 
          //"gridAlpha": 0.07, 
          "title": "Date", 
          "minPeriod": "mm", 
         }, 
         "export": { 
          "enabled": false 
         }, 

         "zoomControl": { 
          "zoomControlEnabled": true, 
         }, 

         // Y-Axis specific 
         "valueAxes": [{ 
          "logarithmic": true, 
         }] 
        }); 

を経由して、積み上げ面グラフを描画しようとしているが、私はYスケールを切り替える一度再描画です。私は、これは残念ながら動作しません、次の

$("#scale_change_"+tag_id).change(function() { 
         if ($(this).is(":checked")) { 
          am_chart.valueAxes[0].logarithmic = true; 
         } else { 
          am_chart.valueAxes[0].logarithmic = false; 
         } 
         am_chart.validateData(); 
        }); 

を使用しようとしてきました。誰かがスケールを切り替える代わりに何をすべきかに光を当てて、再描画を強制できますか?理想的には、積み重ねはスケール変更の間も継続しなければなりません。

+0

あなたはJsfiddleを提供できますか? –

+0

https://jsfiddle.net/ake2uqqj/2/デフォルトを対数として設定した場合、奇妙なことも起こります。 – geudrik

+0

https://jsfiddle.net/ake2uqqj/3/今すぐ試す –

答えて

0

全く同じ問題がありました。対数スケールは、私のすべてのデータセットでは機能しません。それは他人のためではなく、ある人のために働く。

が 軸の

-Theデータが負を持っていないZERO値

軸の

-Theデータを持っていない:私はあなたの軸が対数スケールを持つようにしたい場合は、あなたがいることを確認するために持っていることを考え出しました値

おそらく、このライブラリの対数機能がコード化されているためです。