首先你要在build.gradle中加入applicationId “com.example.hellocharts”,然后让它自动加载。
那就写一个简单的统计,但是因为特殊原因,实例图片展示不了,你们就看看吧。
<lecho.lib.hellocharts.view.ColumnChartView
android:id="@+id/chart"
android:layout_width="match_parent"
android:layout_height="350dp"
android:padding="20dp"/>
实现功能:
public class MainActivity extends AppCompatActivity {
private ColumnChartView chart;
private ColumnChartData data;
public final static String[] week = new String[]{"周一", "周二", "周三",
"周四", "周五", "周六", "周日"};
private List<Float> list = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
initData();
}
private void initView() {
chart= (ColumnChartView) findViewById(R.id.chart);
chart.setZoomEnabled(false);//禁止手势缩放
}
private void initData() {
//list.add();//把你获取到的或用到的数据填充到集合中
setFirstChart();
}
private void setFirstChart() {
// 使用的 7列,每列1个subcolumn。
int numSubcolumns = 1;
int numColumns = 7;
//定义一个圆柱对象集合
List<Column> columns = new ArrayList<Column>();
//子列数据集合
List<SubcolumnValue> values;
List<AxisValue> axisValues = new ArrayList<AxisValue>();
//遍历列数numColumns
for (int i = 0; i < numColumns; ++i) {
values = new ArrayList<SubcolumnValue>();
//遍历每一列的每一个子列
for (int j = 0; j < numSubcolumns; ++j) {
//为每一柱图添加颜色和数值
float f = list.get(i);
values.add(new SubcolumnValue(f, ChartUtils.pickColor()));
}
//创建Column对象
Column column = new Column(values);
//这一步是能让圆柱标注数据显示带小数的重要一步 让我找了好久问题
//作者回答https://github.com/lecho/hellocharts-android/issues/185
ColumnChartValueFormatter chartValueFormatter = new SimpleColumnChartValueFormatter(2);
column.setFormatter(chartValueFormatter);
//是否有数据标注
column.setHasLabels(true);
//是否是点击圆柱才显示数据标注
column.setHasLabelsOnlyForSelected(false);
columns.add(column);
//给x轴坐标设置描述
axisValues.add(new AxisValue(i).setLabel(week[i]));
}
//创建一个带有之前圆柱对象column集合的ColumnChartData
data= new ColumnChartData(columns);
//定义x轴y轴相应参数
Axis axisX = new Axis();
Axis axisY = new Axis().setHasLines(true);
axisY.setName("签到率(%)");//轴名称
axisY.hasLines();//是否显示网格线
axisY.setTextColor(R.color.colorAccent);//颜色
axisX.hasLines();
axisX.setTextColor(R.color.colorPrimary);
axisX.setValues(axisValues);
//把X轴Y轴数据设置到ColumnChartData 对象中
data.setAxisXBottom(axisX);
data.setAxisYLeft(axisY);
//给表填充数据,显示出来
chart.setColumnChartData(data);
}
初次了解这种框架,还不熟悉,请大家见谅,给大家分享一个网址
[http://www.github.com]希望对大家有帮助。