2つの値を持つドーナツグラフを作成したいと思います。グラフをクリックすると中央に値が印刷されます。私はstackoverflowの解決策を私の要求と同じように見つけました。 githubの最新のChart.jsライブラリを使用したいと考えています。この機能は最新のChart.jsで利用できますか?Chart.jsを使用してドーナツチャートの中心にテキストを追加するには?
3
A
答えて
3
私がそれを行うには素敵な方法は、プラグインを使用していると思うChart.jsのv2.xの
にこのような何かをすることは確かに可能です。 https://jsfiddle.net/cmyker/ooxdL2vj/
および対応するプラグインの定義:
Chart.pluginService.register({
beforeDraw: function(chart) {
var width = chart.chart.width,
height = chart.chart.height,
ctx = chart.chart.ctx;
ctx.restore();
var fontSize = (height/114).toFixed(2);
ctx.font = fontSize + "em sans-serif";
ctx.textBaseline = "middle";
var text = "75%",
textX = Math.round((width - ctx.measureText(text).width)/2),
textY = height/2;
ctx.fillText(text, textX, textY);
ctx.save();
}
});
実際には、質問への
Cmyker awnserは、あなたも彼のフィドルを参照してくださいCharts.jsのバージョン2.xに、これはどのように動作するか
を表示するために彼の記事を更新するためにリンク
1
デビッドの答えはまあまあです。ありがとう。 凡例の高さを考慮していないため、テキストが実際に集中化されていないと付け加えたいと思います。
var legendHeight = chart.legend.height;
textY = height/2 + legendHeight/2;
これらを追加すると、それが修正されます。
2
ます。また、コンフィギュレーションにパラメータを追加し、テキストとしてこれを使用することができます注意してください(
"options": {
title: {
display: true,
position: "bottom",
text: 'Upcoming Meetings'
},
legend: {
display: false
},
centertext: "123"
}
そして、このようになりますジャバスクリプト:ドーナツが中心にテキストを配置し、タイトルが、ノー伝説を持っています何とか実験していた):
<script>
Chart.pluginService.register({
beforeDraw: function (chart) {
if (chart.options.centertext) {
var width = chart.chart.width,
height = chart.chart.height,
ctx = chart.chart.ctx;
ctx.restore();
var fontSize = (height/80).toFixed(2); // was: 114
ctx.font = fontSize + "em sans-serif";
ctx.textBaseline = "middle";
var text = chart.options.centertext, // "75%",
textX = Math.round((width - ctx.measureText(text).width)/2),
textY = height/2 - (chart.titleBlock.height - 15);
ctx.fillText(text, textX, textY);
ctx.save();
}
}
});
</script>
関連する問題
- 1. チャーティスト - ドーナツチャートの中心にテキストを追加
- 2. chart.jsを使ってドーナツチャートの中に画像を追加するには?
- 3. Chart.Jsのドーナツチャートの中心色を変更してください
- 4. Chart.jsとAngular2、Ionic2を使用したドーナツチャート内のテキスト
- 5. chart.jsのドーナツチャートで2つのデータセットを使用するには?
- 6. React + Chart.js 2.0:ドーナツチャートの中にラベルを入れるには?
- 7. ノード(graphicsmagick/imagemagick)の中心テキストをgmで追加するには?
- 8. angular-chart.jsドーナツチャート:グラフの中央にデータを表示する方法
- 9. Chart.js AngularJS 2.0を使用してドーナツチャート内にテキストを追加するにはどうすればよいですか?
- 10. onclickは、ドーナツチャートの情報を中心に表示します
- 11. Chart.jsドーナツチャートのツールチップサイズ?
- 12. 円グラフの中心にテキストを追加するハイチャート
- 13. chart.jsのツールチップにテキストまたはシンボルを追加する方法
- 14. barChartにchart.jsを使って配列を追加するには?
- 15. codeigniterのchart.jsを使用してグラフを追加する
- 16. Fabricjs長方形の中心にテキストを追加
- 17. D3ツールチップ内にドーナツチャートを追加する
- 18. JSONとchart.jsを使用したドーナツチャートの作成
- 19. interopを使用してPowerPointで文章の途中にテキストを追加する
- 20. Chart.jsのドーナツチャートにラベルを追加すると、各チャートのすべての値が表示されます
- 21. JointJS:リンクの中心にSVGを追加
- 22. iPhoneのマップビューの中心に注釈を追加するには?
- 23. chart.jsのドーナツチャートのカスタムデータ位置
- 24. ggbiplotに楕円中心を追加するには?
- 25. ReCharts:中心に2つのラベルがあるドーナツチャート
- 26. VBAを使用してExcelのセルにテキストを追加する
- 27. Qt中心点を中心にテキストを回転する
- 28. chart.jsにダイナミックデータセットを追加
- 29. タイムチャートをラインチャート(Chart.js)に追加
- 30. Excelを使用してテキストをテキストに追加-VBA
ありがとうございます。それは働いています – jjose
私はグラフを更新するときに 'filltext'を変更する方法はありますか? – raul
フォントファミリを変更する方法はありますか? –