Google チャート API を使用してチャート作成ツールを作成しています。グラフを構成するデータのタイムスパンを変更するには、次のような文字列行を返す jsp サーブレットに jquery ポストを送信しています。
Swedish#68#Pasta#4#Vegetarian#2#Seafood#2#Salad#1
これは文字列データに格納され、2 次元配列に分割されます。これは、グラフの行を作成するために使用するものです。
data.trim();
var dataArray = data.split("#");
var catChartArray = new Array((dataArray.length/2));
for (var i = 0; i < dataArray.length/2;i++)
{catChartArray[i]=new Array(1);}
var j =0;
for (var i = 0; i<dataArray.length/2; i++){
catChartArray[i][0]= dataArray[j];
catChartArray[i][1]= dataArray[parseInt(j+1)];
j+=2;
}
次に、addRows(catChartArray) メソッドを使用して google.visualization.DataTable() のインスタンスに渡します。この時点でグラフが描画されず、その理由がわかりません。構築時にまさにそのようなものを使用しており、その後は正常に動作します。私は Javascript を使用した経験がまったくないので、非常に明白なことを見落としている可能性があります。配列の印刷には、目を見張るものは何もありません。
Swedish,68,Pasta,4,Vegetarian,2,Seafood,2,Salad,1