ここに私は今日苦労している:jpPlotのjsonをphpからjavascriptに渡すには?
私はjqPlotライブラリを使用してグラフを描こうとしています。 sqlクエリは、json_encode
を使用してPHPでjsonに変換され、隠しフォームフィールドに保存されたデータを出力します。これは正常に動作し、実際のフィールドが含まれています
var data = document.getElementById("dataarray").value;
を後でjqPlotのためのデータとして使用するために:その後、フォームからのデータを使用してJavaScriptで取得され
[["2011-12-10 12:01:00",271],["2011-12-10 12:13:05",132],["2011-12-11 12:17:55",388],["2011-12-10 22:03:40",5],["2011-12-11 12:10:54",830]]
を。 data
変数は正しくフォーマットされており、document.write(data);
でチェックすると正しいデータがjson形式で出力されますが、グラフのデータを使用する変数plot1
に配置すると、Safariにエラー[object Object]
、FirefoxにUncaught #<Object>
が表示されます。次のように
全体javascriptのコードは次のとおりです。
$(document).ready(function(){
var data = document.getElementById("dataarray").value;
var test = [["2011-12-10 12:01:00",271],["2011-12-10 12:13:05",132],["2011-12-11 12:17:55",388],["2011-12-10 22:03:40",5],["2011-12-11 12:10:54",830]];
var plot1 = $.jqplot("chart_personal_2", [data], {
title:"Data Point Highlighting",
axes:{
xaxis:{
renderer:$.jqplot.DateAxisRenderer,
numberTicks: 3,
tickOptions:{
formatString:"%d/%m/%Y %H:%M:%S"
}
},
yaxis:{
label: "Elevation(m)",
tickOptions:{
showMark: true
}
}
},
highlighter: {
show: true,
sizeAdjust: 7.5
},
cursor: {
show: false
}
});
});
私もoutput = String(data);
を試してみましたが、それはどちらか動作しませんでした。 私のdata
変数が、jqPlotグラフのソースデータとして使用できないオブジェクトであると仮定しています。使用する前に文字列に変換する必要がありますか?私が間違っているなら私を訂正してください。
誰かが事前に感謝せずにそれを動作させる方法を知っていることを願っています!
ありがとうございます。ありがとうございました、配列に変換して問題を修正しました。 JSON形式であればjqPlotも文字列を処理できますが、間違っていることがわかりました。 –