MPAndroidChart添加并显示条形图标签
作者:互联网
刚开始使用MPAndroidChart版本3.0.0 beta,我创建了一个项目,可以在条形图中显示我的值.我的问题是我在哪里添加和显示标签.
每个酒吧应有自己的标签,例如.底部有“烟道”,“奶酪”等.不确定执行此功能的方法是什么,正在积极搜索和阅读Docs / Wiki,但目前没有任何乐趣.
解决方法:
根据您的首选项,可以使用Entry的data属性存储标签,然后在IAxisValueFormatter
实现中将其返回:
public class LabelValueFormatter implements IAxisValueFormatter {
private final DataSet mData;
public LabelValueFormatter(DataSet data) {
mData = data;
}
@Override
public String getFormattedValue(float value, AxisBase axis) {
// return the entry's data which represents the label
return (String) mData.getEntryForXPos(value, DataSet.Rounding.CLOSEST).getData();
}
}
这种方法允许您使用Entry构造函数(在这种情况下为BarEntry)添加标签,从而可以提高代码的可读性:
ArrayList<BarEntry> entries = new ArrayList<>();
for (int i = 0; i < length; i++) {
// retrieve x-value, y-value and label
entries.add(new BarEntry(x, y, label));
}
BarDataSet dataSet = new BarDataSet(entries, "description");
BarData data = new BarData(dataSet);
mBarChart.setData(data);
mBarChart.getXAxis().setValueFormatter(new LabelValueFormatter(data));
另请参阅this answer,以获取更多信息以及在BarChart和新的3.0.0版本库中使用标签的替代方法.
标签:mpandroidchart,android 来源: https://codeday.me/bug/20191026/1938862.html