1

チャート データをローカル データと共に読み込みたい。

 <sjc:chart
       id="chartPlaceHolder"
       cssStyle="width: 600px; height: 400px;"
       pie="true"
       pieLabel="true"
       dataType="local"        
   />

次に、使用しました(Refresh/Reload Flot In Javascriptで述べたように)

//This data is created dynamically from a grid when grid completed 
var chartData= [
                { label: "Chrome",  data: 36.3, color: "#89A54E"},
                { label: "Other",  data: 0.8, color: "#3D96AE"}
            ];
var plot = $.plot($('#chartPlaceHolder'));
    plot.setData(chartData);
    plot.setupGrid();
    plot.draw();

aB is undefinedjquery API でjquery 例外が発生する

コメントはありますか?!

4

1 に答える 1

1

への 2 つの追加パラメータがありません$.plot()

基本的な使用方法をお読みください。

グラフを配置するプレースホルダー div を作成します。

<div id="placeholder"></div>

この div の幅と高さを設定する必要があります。そうしないと、プロット ライブラリがグラフのスケーリング方法を認識できません。次のようにインラインで実行できます。

<div id="placeholder" style="width:600px;height:300px"></div>

外部スタイルシートを使用して行うこともできます。プレースホルダーが display:none CSS プロパティを持つものに含まれていないことを確認してください。その場合、Flot はラベルの寸法を測定するのに問題があり、外観が文字化けし、プレースホルダーの寸法を測定するのに問題が発生する可能性があります。例外)。

次に、通常はドキュメントの準備ができている DOM で div の準備ができたら、プロット関数を実行します。

$.plot($("#placeholder"), data, options);

ここで、 data はデータ系列の配列で、 options はプロットをカスタマイズする場合の設定を持つオブジェクトです。何を入れるかについてのいくつかのアイデアについては、例を参照するか、API リファレンスを参照してください。(0, 0) から (1, 1) に線を引く簡単な例を次に示します。

$.plot($("#placeholder"), [ [[0, 0], [1, 1]] ], { yaxis: { max: 1 } });

編集:

以下のコードを試すことができます。チャートがデータなしで作成された後、データを使用してチャートをリロードしています。

<sjc:chart
    id="placeholder"
    cssStyle="width: 600px; height: 400px;"
    pie="true"
    pieLabel="true">
</sjc:chart>
<script>
  $(function(){
    var chartData= [
      { label: "Chrome",  data: 36.3, color: "#89A54E"},
      { label: "Other",  data: 0.8, color: "#3D96AE"}
    ];
    var series =  { pie: { show: true }};
    var o = {};
    o.data = chartData;
    o.series= series;
    $.struts2_jquery_chart.chart($("#placeholder"), o);
  });
</script>
于 2016-02-07T12:38:41.373 に答える