2017-11-07 21 views
1

google chartを使って私はこのような折れ線グラフをプロットしました。google chart:Uncaught(約束事)を修正してください。エラー:

グラフでは、jfiddleのようにカスタムツールチップを作成しました。 上記のグラフでは、ツールヒントを使用してグラフを表示する際に問題はありません。

dbからチャートデータを取得しています。いくつかのチャートデータに基づいて、一部のjsエラーのためにチャートをレンダリングできません。

は、以下の例ではiがチャートデータとグラフが原因チャートデータが変化するたびに内部の方法以下、よりスクリプトの問題に直面jfidleコードの行57でのJS erros

IMにdiplayingされていない変更しました。

function toolTipVal(dt, row, index1, index2) {   
       label1 = dt.getColumnLabel(index1).split("\n"); 
       label2 = dt.getColumnLabel(index2).split("\n"); 
       yValue1 =0; yValue2 =0;   
        if (dt.getValue(row, index1) === null) { 
        yValue1 = dt.getFormattedValue(row -1, index1);    
        } 
        else { 
        yValue1 = dt.getFormattedValue(row, index1);     
        }    
        if (dt.getValue(row, index2) === null) { 
        if (row > 0) { 
         yValue2 = dt.getFormattedValue(row - 1, index2); 
        } 
        } else { 
        yValue2 = dt.getFormattedValue(row, index2); 
        }    
        return [yValue1, yValue2, label1, label2]; 
      }; 

jfiddleに設定された第2のデータを使用していた場合

はUIでレンダリングされていないため、このグラフにjsのfollwoingエラー

jsapi_compiled_default_module.js:74 Uncaught (in promise) Error: Invalid row index -1. Should be in the range [0-799] in above methodline 

yValue1 = dt.getFormattedValue(row -1, index1);取得しています。

どのように私は、これらのチャートデータの

+1

これは、負のロー値を使用できないことを示しています。 'row-1'は' row'が '0'のときに' -1'を生成している可能性があります。 – JLRishe

+1

- > 'if(row> 0){' - 'yValue1'を設定する前に - ' yValue2'の直下と同じです – WhiteHat

答えて

1

rowに基づいて上記の方法を変更することができますが、ゼロインデックス付きの値です。 rowが初めてではない場合は、テストを行わず

yValue1 = dt.getFormattedValue(row -1, index1);

を呼んでいます。

私はロジックを完全には理解していませんが、最初のノードのツールチップにロジックを追加する必要があると思います。

あなたは、その例外に

dt.getValue(row, index1) === null

row == 0のために真であることを起こるたびに取得します。

関連する問題