0

MySQLテーブルからJSONを介して供給されるJQPlotを使用して円グラフを作成し、質問に答えられる可能性のある教祖がいるかどうかを確認しようとしています。円グラフは、配列を取り、それを合計金額のパーセンテージで割って、グラフを表示するという点で、想定どおりに機能しています。ここから、別の値を入力してパイの合計値にし、そこから配列の合計値を減算して、パイ全体に対する配列アイテムのパーセンテージを表示することはできますか?

たとえば、JQPlotにこの配列[[a、2]、[b、4]、[c、2]]を指定すると、a = 25%、b = 50%、c=25を示すグラフが出力されます。パイ全体の%。円全体を表すために別の値10を指定して、その配列にa = 20%、b = 40%、c = 20%を出力させ、さらに20%を残します。

私が始めているコードは、JQPlotサイトの基本的な円グラフの例であり、希望する合計円値はgetGrossTotal.phpから入力されるように設定されています。それができないなら、それはできません。私はそれをどのように扱うかについてのアイデアをチェックしたいだけです。

$(document).ready(function(){
$.getJSON('getGrossTop.php', function(grossTop){

var plot1 = jQuery.jqplot ('pieChart', [grossTop],{ 
    seriesDefaults: {
        renderer: jQuery.jqplot.PieRenderer, 
        rendererOptions: {
            showDataLabels: true
        }
    }, 
    legend: {
        show:true,
        location: 'e'
    },
});

});
});

ありがとう!

4

2 に答える 2

0

どうでも。JavaScript で余分な数値を処理しようとする代わりに、PHP 側に戻り、各マイナー配列の値を合計し、データベース内のすべての合計からその結果を減算し、その結果をメジャー配列にプッシュしてエンコードしました。基本的に、何もないラベルと必要な数値の値を持つ追加のマイナー配列アイテムを作成しました。そのすべてを JQPlot に渡すと、探していたものが得られました。ご覧いただきありがとうございます。

于 2012-11-13T14:42:24.583 に答える
0

jqPlot レベルで設定する場合 (ただし、PHP を使用する場合はこの作業がよりクリーンになると思います)、PHP レベルで作業する方が良いと思いますが、入力データ配列で作業する必要がある場合は、 2 つの方法でそれを行うことができます。

1) $.jqplot() 呼び出しの前

すべての値の合計の 10% を含む配列にさらに要素を追加します。そう

$.getJSON('getGrossTop.php', function(grossTop){

grossTop.push(['d',8.8]); //here you can insert what and many elements you want

var plot1 = jQuery.jqplot ('pieChart', [grossTop],{ 

2) $.jqplot() 呼び出しの後

jqPlot オブジェクトに 4 番目の要素を直接追加する必要があります

plot1.data[0].push(['d',8.8]);

ただし、チャートを再プロットする必要があることを忘れないでください。

于 2013-12-27T10:49:13.670 に答える