android动态地图加载数据,Android图表控件MPAndroidChart——曲线图LineChart(多条曲线)动态添加数据...

本文介绍了如何在新版MPAndroidChart中动态添加数据到曲线图(LineChart),包括一条曲线和多条曲线的情况。通过创建Entry并更新LineData,实现了X轴显示当前时间,并详细展示了相关代码实现。同时,文章提到了动态添加数据时曲线图的滚动和X轴值的格式化方法。
摘要由CSDN通过智能技术生成

发现最新的MPAndroidChart和以前版本的使用有一些差距,就写下了现在新版的使用方法

相关文章:

Android图表控件MPAndroidChart的简单介绍(MPAndroidChart3.0)

Android图表控件MPAndroidChart——曲线图LineChart的使用(多条曲线)

Android图表控件MPAndroidChart——曲线图LineChart(多条曲线)动态添加数据

Android图表控件MPAndroidChart——柱状图BarChart的使用(多条柱状图)

Android图表控件MPAndroidChart——曲线图+柱状图 CombinedChart的使用

Android图表控件MPAndroidChart——源码修改实现曲线图X轴直尺刻度样式

本文相关代码

MPAndroidChart在github地址:https://github.com/PhilJay/MPAndroidChart

一.效果图

一条曲线动态添加数据(X轴为当前时间)

36896a2cfbbd86441a67bed09b99ef11.gif

多条曲线线动态添加数据(X轴为当前时间)

b9ab2f1767c6062fcfceb0f6f4fd241f.gif

二.实现效果

1.X轴为当前时间,只需要Y轴数据即可

2.X轴的值为字符串,而Entry的构造方法参数全为float    public Entry(float x, float y)  所以需要另外定义X轴的值

简要代码

动态添加值Entry

Entry entry = newEntry(lineDataSet.getEntryCount(),number);lineData.addEntry(entry,0);//通知数据已经改变lineData.notifyDataChanged();lineChart.notifyDataSetChanged();//设置在曲线图中显示的最大数量lineChart.setVisibleXRangeMaximum(10);//移到某个位置lineChart.moveViewToX(lineData.getEntryCount() - 5);

X轴值的设定

我并没有找到直接设置X轴为当前时间的方法,

而是新建一个字符串集合,选择在每次添加Entry的时候将当前时间添加进集合,然后设置X轴的值

privateSimpleDateFormat df= newSimpleDateFormat("HH:mm:ss");//设置日期格式privateList timeList= newArrayList<>();//存储x轴的时间

xAxis.setValueFormatter(newIAxisValueFormatter() {

@OverridepublicString getFormattedValue(floatvalue,AxisBase axis) {

returntimeList.get((int) value % timeList.size());}

});

三.详细代码(一个管理类)

public classDynamicLineChartManager {

privateLineChart lineChart;privateYAxis leftAxis;privateYAxis rightAxis;privateXAxis

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值