flot.pie を取得して、ラベルに表示されるデータを「生データ」の割合から実際のデータに変更する方法がわかりません。私の例では、既読/未読メッセージの数を含む円グラフを作成しました。
既読メッセージ数: 50. 未読メッセージ数: 150.
作成された円は、既読メッセージの割合が 25% であることを示しています。この場所で、実際の 50 件のメッセージを表示したいと思います。下の画像を参照してください。
パイの作成に使用したコード:
var data = [
{ label: "Read", data: 50, color: '#614E43' },
{ label: "Unread", data: 150, color: '#F5912D' }
];
と:
$(function () {
$.plot($("#placeholder"), data,
{
series: {
pie: {
show: true,
radius: 1,
label: {
show: true,
radius: 2 / 3,
formatter: function (label, series) {
return '<div style="font-size:8pt;text-align:center;padding:2px;color:white;">' + label + '<br/>' + Math.round(series.percent) + '%</div>';
},
threshold: 0.1
}
}
},
legend: {
show: false
}
});
});
これは可能ですか?
@Ryleyの答えで、私は汚い解決策にたどり着きました。series.data を出力すると、値「1,150」と「1,50」が返されました。返された値の最初の 2 文字を減算し、減算された値を表示するというアイデアを思いつきました。
String(str).substring(2, str.lenght)
これは、このソリューションで作成した円グラフです。
これは最善の解決策ではありませんが、私にとってはうまくいきます。誰かがより良い解決策を知っていれば....