在XML中的定義:
<lecho.lib.hellocharts.view.ColumnChartView
android:id="@+id/columnchart"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</lecho.lib.hellocharts.view.ColumnChartView>
控件實例化:
ColumnChartView columnChart;
columnChart = (ColumnChartView) findViewById(R.id.columnchart);
chart屬性設置:
chart.setZoomEnabled(boolean isZoomEnabled)//設置是否支持縮放
chart.setOnValueTouchListener(ColumnChartOnValueSelectListener touchListener);//為圖表設置值得觸摸事件
chart.setInteractive(boolean isInteractive);//設置圖表是否可以與用戶互動
chart.setValueSelectionEnabled(boolean idValueSelectionEnabled);//設置圖表數據是否選中進行顯示
chart.setLineChartData(ColumnChartData data);//為圖表設置數據,數據類型為ColumnChartData
設置柱、X、Y軸屬性及添加數據:
List<SubcolumnValue> subValues = new ArrayList<SubcolumValue>();// 節(jié)點數據結合
Axis axisY = new Axis().setHasLines(true);// Y軸屬性
Axis axisX = new Axis();// X軸屬性
axisY.setName(String yName);//設置Y軸顯示名稱
axisX.setName(String xName);//設置X軸顯示名稱
ArrayList<AxisValue> axisValuesX = new ArrayList<AxisValue>();//定義X軸刻度值的數據集合
ArrayList<AxisValue> axisValuesY = new ArrayList<AxisValue>();//定義Y軸刻度值的數據集合
axisX.setValues(axisValuesX);//為X軸顯示的刻度值設置數據集合
axisX.setLineColor(Color.BLACK);// 設置X軸軸線顏色
axisY.setLineColor(Color.BLACK);// 設置Y軸軸線顏色
axisX.setTextColor(Color color);// 設置X軸文字顏色
axisY.setTextColor(Color color);// 設置Y軸文字顏色
axisX.setTextSize(14);// 設置X軸文字大小
axisX.setTypeface(Typeface.DEFAULT);// 設置文字樣式,此處為默認
axisX.setHasTiltedLabels(bolean isHasTit);// 設置X軸文字向左旋轉45度
axisX.setHasLines(boolean isHasLines);// 是否顯示X軸網格線
axisY.setHasLines(boolean isHasLines);// 是否顯示Y軸網格線
axisX.setHasSeparationLine(boolean isHasSeparationLine);// 設置是否有分割線
axisX.setInside(boolean isInside);// 設置X軸文字是否在X軸內部
for (int j = 0; j < list.size(); j++) {//循環(huán)為節(jié)點、X、Y軸添加數據
pointValues.add(new SubcolumnValue(float, int color);// 添加節(jié)點數據并為其設置顏色
axisValuesY.add(new AxisValue(j).setValue(j));// 添加Y軸顯示的刻度值
axisValuesX.add(new AxisValue(j).setValue(j).setLabel(
String label));// 添加X軸顯示的刻度值并設置X軸顯示的內容
}
設置柱形Column的屬性:
List<Column> cs = new ArrayList<Column>();//定義線的集合
Column c= new Line(List<SubcolumnValue> subValues);//將值設置給折線
c.setValues(List<SubcolumnValue> values);//為柱形圖這是數據
c.setHasLabels(boolean isHasLabels);// 是否顯示節(jié)點數據
c.setHasLabelsOnlyForSelected(boolean isHasLabelsOnly);// 隱藏數據,觸摸可以顯示
cs.add(c);// 將數據集合添加線
設置ColumnChartData屬性及為chart設置數據:
chartData = new ColumnChartData(List<Column> cs);//將線的集合設置為折線圖的數據
chartData.setAxisYLeft(axisY);// 將Y軸屬性設置到左邊
chartData.setAxisXBottom(axisX);// 將X軸屬性設置到底部
chartData.setAxisYRight(axisYRight);//設置右邊顯示的軸
chartData.setAxisXTop(axisXTop);//設置頂部顯示的軸
chartData.setBaseValue(20);// 設置反向覆蓋區(qū)域顏色
chartData.setValueLabelBackgroundAuto(false);// 設置數據背景是否跟隨節(jié)點顏色
chartData.setValueLabelBackgroundColor(Color.BLUE);// 設置數據背景顏色
chartData.setValueLabelBackgroundEnabled(false);// 設置是否有數據背景
chartData.setValueLabelsTextColor(Color.BLACK);// 設置數據文字顏色
chartData.setValueLabelTextSize(15);// 設置數據文字大小
chartData.setValueLabelTypeface(Typeface.MONOSPACE);// 設置數據文字樣式
chart.setColumnChartData(LineChartData data);//最后為圖表設置數據,數據類型為ColumnChartData
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。