グラフが入力されていないときにメッセージ「No chart data available」を変更する方法はありますか?
編集:答えが見つかりました
chart.setNoDataText("Description that you want");
回答を更新
chart.setNoDataText("Description that you want");
ルックアンドフィールもカスタマイズする場合は、Paint
オブジェクトを使用して行うことができます。
mChart.setNoDataText("Description that you want");
Paint p = mChart.getPaint(Chart.Paint_INFO);
p.setTextSize(...);
p.setColor(...);
p.setTypeface(...);
...
正解はこちら:
pie_chart.setNoDataText("No Data Available");
val Paint:Paint = pie_chart.getPaint(Chart.Paint_INFO)
Paint.textSize = 40f
pie_chart.invalidate()
テキストの色、テキストの書体などの他のプロパティも設定します
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_firestore__eintraege__heute);
mChart = findViewById(R.id.chartZuckerHeute);
mChart.setNoDataText("PUT IT HERE ON TOP; WORKED FOR ME");
pieChart.invalidate()
の後にsetNoDataText()
を置く必要があります:
@Override
public void setDataMessagePieChart() {
pieChart.setNoDataText("... your message ...");
pieChart.invalidate();
}
少し古いスレッドですが、同じ問題があったため、チャートの初期化直後にnodatatextを設定することが私の解決策でした。
PieChart pieChart = findViewById(R.id.chart) //in case of fragment view.findViewById(R.id.chart)
pieChart.setNoDataText("Loading");