当前位置: 源码素材网 » Android教程 » 详情页

Android 使用MPAndroidChart图表类实现麻点统计图表

  •   时间:2019-08-07
  • 概述:统计图 麻点统计图

Android 实现麻点统计图表,使用第三方MPAndroidChart图表类库来实现,用来显示月支出统计麻点统计图。除了使用三方类库,还使用了 ScatterDataSet 类中的 ScatterDataSet()方法、setColors()方法,ScatterChart 类中的 setData()方法,Legend类中的setPosition()方法,Chart类中的animateXY ()方法,以下是具体的实现代码:

ArrayList<Entry> yVals = new ArrayList<>();
//初始化横纵坐标内容
final ArrayList<String> xVals = new ArrayList<>();
for (int i = 0; i < 12; i++) {
    xVals.add((i + 1) + "月");
    //产生数据
    yVals.add(new Entry(random.nextInt(1000), i));
}
//封装数据
ScatterDataSet scatterDataSet = new ScatterDataSet(yVals, "每月支出");
//设置丰富多彩的颜色
scatterDataSet.setColors(ColorTemplate.COLORFUL_COLORS);
//生成Scatterdata对象
ScatterData scatterData = new ScatterData(xVals, scatterDataSet);
//设置对应数据
scatterChart.setData(scatterData);
scatterChart.getLegend().setPosition(Legend.LegendPosition.ABOVE_CHART_LEFT);
scatterChart.getLegend().setForm(Legend.LegendForm.CIRCLE);
//绑定点击事件
scatterChart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {
    @RequiresApi(api = Build.VERSION_CODES.M)
    @Override
    public void onValueSelected(Entry entry, int i, Highlight highlight) {
        //弹出提示
        Toast.makeText(MainActivity.this, xVals.get(entry.getXIndex())+"支出: " +
                entry.getVal()+"元", Toast.LENGTH_SHORT).show();
    }
    @Override
    public void onNothingSelected() {
    }
});
//设置X轴位置
scatterChart.getXAxis().setPosition(XAxis.XAxisPosition.TOP);
//右侧Y轴关闭
scatterChart.getAxisRight().setEnabled(false);
//设置最小Y值
scatterChart.getAxisLeft().setAxisMinValue(0.0f);
//设置纵向网格线条颜色
scatterChart.getXAxis().setGridColor(Color.GRAY);
//设置横向网格颜色大小
scatterChart.getAxisLeft().setGridColor(Color.GRAY);
//设置描述内容
scatterChart.setDescription("支出表");
//设置描述文字的字体
scatterChart.setDescriptionTextSize(20.f);
//动画效果
scatterChart.animateXY(1000, 1000);

全部完成后,可尝试在MamActiVity类中修改麻点图,将麻点颜色修改成红色。

    相关声明:

      若“Android 使用MPAndroidChart图表类实现麻点统计图表”有损您的权益,请告之我们删除内容。
      部分文章来源于网络,版权归原作者所有。