繁体   English   中英

MPAndroidChart添加并显示条形图标签

[英]MPAndroidChart adding and display bar chart label

刚开始使用MPAndroidChart版本3.0.0测试版,我创建了一个可以在条形图中显示我的值的项目。 我的问题是我在哪里添加和显示标签。 每个酒吧都应该有自己的标签,例如。 底部有“烟道”,“奶酪”等。 不确定这是什么功能,我正在积极地搜索和阅读Docs / Wiki,但目前没有任何乐趣。

根据您的首选项,您可以使用Entrydata属性来存储标签,然后在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));

另请查看此答案以获取更多信息以及使用BarChart和新3.0.0版本库的标签的替代方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM