这次的内容是根据我的项目需求更新mpandroidcharts3.0 新内容
//现在
Description description = new Description();
lineChart.setDescription(description);// 数据描述
//以前
lineChart.setDescription("");// 数据描述,参数只是一个String
bug
如何使得x轴的和左边的y轴0值重合。
axisLeft.setAxisMinimum(0);
禁用图例
Legend legend = lineChart.getLegend();
legend.setEnabled(false);
设置网格的间距
ArrayList<Entry> values = new ArrayList<Entry>();
for (int i = 0; i < electricInfors.size(); i++) {
float v =0;
// float val = (float) (Math.random() * range) + 3;
values.add(new Entry(i*2,v));
//i 为x刻度的距离,根据你设置的
//xAxis.setLabelCount(5);,这里的距离就是5,个人见解
}
LineDataSet set1; //折线图的一条线
if (mLineChart.getData() != null &&
mLineChart.getData().getDataSetCount() > 0) {
set1 = (LineDataSet) mLineChart.getData().getDataSetByIndex(0);
set1.setValues(values);
mLineChart.getData().notifyDataChanged();
mLineChart.notifyDataSetChanged();
}
自定义网格的间距
xAxis.setAxisMaximum(60f);
xAxis.setAxisMinimum(0f);
xAxis.setLabelCount(6);
//默认是刻度为(60-0)/6,所以是
//0,10,20,30,40,50
//但是当你这是自定义label
IAxisValueFormatter xAxisFormatter = new MyXValueFormatter();
@Override
public String getFormattedValue(float value, AxisBase axis) {}
//这个value就会调用7次,0,10,20,30,40,50,60
去掉高亮十字线但是保留点击事件弹出自定义的mark
set1.setHighlightEnabled(true); //必须允许高亮显示才能出现十字线和mark
set1.setHighlightLineWidth(0f); //设置高亮线宽为0,就去掉十字线
MyMarkerView mv = new MyMarkerView(getActivity(), R.layout.custom_marker_view);
mv.setChartView(lineChart); // For bounds control
lineChart.setMarker(mv); // 显示mark
以上是个人见解,没有深究,有错误请指出。