The Wayback Machine - https://web.archive.org/web/20201019035730/https://github.com/chenyy0708/ChartHelper
Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
app
 
 
 
 
img
 
 
 
 
 
 
 
 
 
 
 
 

README.md

ChartHelper

MPAndroidChart辅助类,减少初始化属性和设置数据等操作。

导入地址

项目build.gradle配置

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

app build.gradle配置

implementation 'com.github.chenyy0708:ChartHelper:v1.0.3'

效果图

示例图1

示例图1

1. 饼状图

饼图

属性

new PieChartHelper.Builder()
                // 上下文
                .setContext(this)
                // 饼图
                .setPieChart(pieChart)
                // 绑定数据
                .setPieData(entries)
                // Label颜色
                .setLableTextColor(Color.WHITE)
                .setLableTextSize(14)
                // 饼图内标签文字
                .setDrawEntryLabels(true)
                // 动画时间
                .setDurationMillis(2000)
                // 动画类型
                .setEasing(Easing.EasingOption.EaseInOutQuad)
                // 旋转角度
                .setRawRotationAngle(90)
                // 中心图表孔旁边的透明圆的半径
                .setTransparentCircleRadiusPercent(10f)
                // 饼图Item被选中时变化的距离
                .setSelectionShift(10f)
                // 饼图区块之间的距离
                .setSliceSpace(5f)
                // 中心空白圆心大小
                .setHoleRadiusPercent(40f)
                // 是否开启标签
                .setLegendEnable(false)
                .build();

数据bean只需要实现IPieData接口


public class TestPieData implements IPieData {
    private String name;
    private double valueData;

    public TestPieData(double valueData, String name) {
        this.name = name;
        this.valueData = valueData;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    /**
     * 值
     */
    @Override
    public float getValue() {
        return (float) valueData;
    }

    /**
     * 对应名字
     */
    @Override
    public String getLabelName() {
        return name;
    }

    public void setValue(double value) {
        this.valueData = value;
    }
}

2.柱状图

柱状图

属性

new BarChartHelper.Builder()
                .setContext(this)
                // 柱状图
                .setBarChart(bar_chart)
                // 多柱状图
                .setBarSetData(data)
                // 单柱状图
                .setBarData(data.get(0))
                // 多柱状图 标签名集合
                .setLabels(names)
                // 一页X轴显示个数
                .setDisplayCount(3)
                // 标签显示隐藏
                .setLegendEnable(false)
                // 标签文字大小
                .setLegendTextSize(20)
                // 是否显示右边Y轴
                .setyAxisRightEnable(false)
                // X,Y轴是否绘制网格线
                .setDrawGridLines(false)
                // 缩放
                .setScaleEnabled(true)
                // 是否可以通过双击屏幕放大图表
                .setDoubleTapToZoomEnabled(true)
                // 柱状图描述 图表右下角
                .setDescriptionEnable(false)
                // 按比例放缩柱状图
                .setPinchZoom(true)
                // 多柱状图 每组柱之间的宽度,只在多柱状图生效
                .setGroupSpace(0.4f)
                // 单柱状图 每个柱的宽度,只在单柱状图生效
                .setBarWidth(0.3f)
                // x,y轴动画时间和类型
                .setDurationMillis(2000)
                .setEasing(Easing.EasingOption.Linear)
                // 单柱状图颜色
                .setBarColor(Color.parseColor("#0000FF"))
                // 多柱状图颜色
                .setBarColors(chartColors)
                // X轴是否显示自定义数据,在IBarData接口中定义
                .setXValueEnable(true)
                .build();

数据bean只需要实现IBarData接口

public interface IBarData {
    /**
     * 图表Y轴值
     */
    float getValue();

    /**
     * X轴对应Name
     */
    String getLabelName();
}

About

MPAndroidChart帮助类,封装了一些图表操作

Topics

Resources

Packages

No packages published

Languages

You can’t perform that action at this time.