1

Flot 棒グラフを Ajax リクエストから JSON データを返す PHP スクリプトに更​​新する際に問題が発生しています。

PHPスクリプトは次のとおりです。

$vars = array(
    'result' => "success",
    'msg' => AJAX_SUCCESS,
    'series' => "Group One,80,Group Two,10" 
    );
echo json_encode($vars);

これは変数「シリーズ」に返されます

var data = [series.series];

これにより、コンソールに次のように出力されます。

Group One,80,Group Two,10

コメントアウトされた変数もあります。これは次のとおりです。

//var datatwo = [ ["Group One", 80], ["Group Two", 10] ];

これはコンソールにも出力されます

Group One,80,Group Two,10

グラフを作成するための実際の JavaScript は次のとおりです。

$.plot("#group-month-graph", [data], options);

オプションは、スクリプトの別の場所で割り当てられます。

返されたデータを警告したり、コンソールに出力したりすると、値は同じですが、返されたデータはグラフを描画しませんが、コメントアウトされた値を使用するとグラフは描画されます。

それが理にかなっていることを願っています。問題が他の場所にあるとは思わないので、スクリプト全体を省略しました。

4

1 に答える 1

1

プラグインが配列を期待しているときに文字列を返しています。あなたは戻るべきです[["Group One",80],["Group Two",10]]

PHP シリーズの構造を次のように変更します。

$vars = array(
    'result' => "success",
    'msg' => AJAX_SUCCESS,
    'series' => array(array("Group One",80),array("Group Two",10))
);

seriesまた、配列を使用しdataて取得する必要があります。[data]

$.plot("#group-month-graph", data, options);
于 2013-03-04T03:30:08.350 に答える