【发布时间】:2017-08-31 17:09:09
【问题描述】:
我需要创建一个图表,该图表沿 x 轴有时间,沿 y 轴有一个区域。该程序将记录某个活动在特定时间差内的数据,并在图表中显示数据,有点像这样 -> https://i.stack.imgur.com/s4MiC.png,但每隔一个条形就会交替颜色以对应一个单独的活动。我还没有找到使用 MPAndroidChart 的方法,每个条目似乎都有固定的宽度。如果有人知道如何使用 MPAndroidChart 或其他开源库帮助来实现这一点,我们将不胜感激,谢谢!
编辑:
这是我一直在尝试使用的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_data_report);
BarChart barChart = (BarChart) findViewById(R.id.barChart);
List<BarEntry> entries = generateBarEntries();
BarDataSet set = new BarDataSet(entries, "BarDataSet");
BarData data = new BarData(set);
barChart.setData(data);
}
private List<BarEntry> generateBarEntries() {
List<BarEntry> entries = new ArrayList<>();
for (int i = 0; i < timeValues.size(); i++) {
float x = timeValues.get(i);
float y = areaValues.get(i);
entries.add(new BarEntry(x, y));
}
return entries;
}
timeValues 是一个 ArrayList,其值以秒为单位,例如 [3, 9, 21, 26, 33],areaValues 也是一个与 timeValues 大小相同的 ArrayList,现在每个值都为 30(即 [30, 30, 30, 30, 30])。
【问题讨论】:
-
请贴出您目前尝试过的代码。
-
@petryuno1 查看编辑后的帖子
标签: android bar-chart mpandroidchart