在XML中的定義:
<lecho.lib.hellocharts.view.LineChartView
android:id="@+id/linechart"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</lecho.lib.hellocharts.view.LineChartView>
控件實例化:
LineChartView lineChart;
lineChart = (LineChartView) findViewById(R.id.linechart);
chart屬性設置:
chart.setZoomEnabled(boolean isZoomEnabled)
chart.setOnValueTouchListener(LineChartOnValueSelectListener touchListener);
chart.setInteractive(boolean isInteractive);
chart.setValueSelectionEnabled(boolean idValueSelectionEnabled);
chart.setLineChartData(LineChartData data);
設置節點、X、Y軸屬性及添加數據:
List<PointValue> pointValues = new ArrayList<PointValue>();
Axis axisY = new Axis().setHasLines(true);
Axis axisX = new Axis();
axisY.setName(String yName);
axisX.setName(String xName);
ArrayList<AxisValue> axisValuesX = new ArrayList<AxisValue>();
ArrayList<AxisValue> axisValuesY = new ArrayList<AxisValue>();
axisX.setValues(axisValuesX);
axisX.setLineColor(Color.BLACK);
axisY.setLineColor(Color.BLACK);
axisX.setTextColor(Color color);
axisY.setTextColor(Color color);
axisX.setTextSize(14);
axisX.setTypeface(Typeface.DEFAULT);
axisX.setHasTiltedLabels(bolean isHasTit);
axisX.setHasLines(boolean isHasLines);
axisY.setHasLines(boolean isHasLines);
axisX.setHasSeparationLine(boolean isHasSeparationLine);
axisX.setInside(boolean isInside);
for (int j = 0; j < list.size(); j++) {
pointValues.add(new PointValue(j, float v));
axisValuesY.add(new AxisValue(j).setValue(j));
axisValuesX.add(new AxisValue(j).setValue(j).setLabel(
String label));
}
設置折線Line的屬性:
List<Line> lines = new ArrayList<Line>();
Line line = new Line(List<PointValue> pointValues);
line.setColor(Color color);
line.setStrokeWidth(float w);
line.setFilled(boolean isFilled);
line.setCubic(boolean isCubic);
line.setPointColor(Color color);
line.setPointRadius(float s);
line.setHasLabels(boolean isHasLabels);
line.setHasLines(boolean isHasLines);
line.setHasPoints(boolean isHasPoint);
line.setShape(ValueShape.CIRCLE);
line.setHasLabelsOnlyForSelected(boolean isHasLabelsOnly);
lines.add(line);
設置LineChartData屬性及爲chart設置數據:
chartData = new LineChartData(lines);
chartData.setAxisYLeft(axisY);
chartData.setAxisXBottom(axisX);
chartData.setAxisYRight(axisYRight);
chartData.setAxisXTop(axisXTop);
chartData.setBaseValue(20);
chartData.setValueLabelBackgroundAuto(false);
chartData.setValueLabelBackgroundColor(Color.BLUE);
chartData.setValueLabelBackgroundEnabled(false);
chartData.setValueLabelsTextColor(Color.BLACK);
chartData.setValueLabelTextSize(15);
chartData.setValueLabelTypeface(Typeface.MONOSPACE);
chart.setLineChartData(LineChartData data);