[英]How to display labels in android using MpAndroidChart -Pie Chart
[英]How to customize pie chart using MPAndroidChart in Android?
我所做的:我正在使用MPAndroidChart ,並且能夠根據我的要求對其進行自定義,並嘗試了進一步的功能來刪除描述 Label,並增加字體和自定義圖例。 我現在擁有的是;
<com.github.mikephil.charting.charts.PieChart
android:id="@+id/chart"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_gravity="center_horizontal"
>
</com.github.mikephil.charting.charts.PieChart>
公共 class PFrag 擴展片段 {
float time[] = {55, 95, 30 , 360 - (55+95+30)};
String activity[] ={"Jan","Feb","March",""};
PieChart pieChart;
CircularProgressIndicator circularProgress;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.panorama_frag,container,false);
pieChart = view.findViewById(R.id.chart);
setupPieChart();
//circularProgress = view.findViewById(R.id.circular_progress);
// circularProgress.setMaxProgress(10000);
// circularProgress.setCurrentProgress(5000);
return view;
}
private void setupPieChart(){
//pupulating list of PieEntires
List<PieEntry> pieEntires = new ArrayList<>();
for( int i = 0 ; i<time.length;i++){
pieEntires.add(new PieEntry(time[i],activity[i]));
}
PieDataSet dataSet = new PieDataSet(pieEntires,"");
dataSet.setColors(ColorTemplate.MATERIAL_COLORS);
PieData data = new PieData(dataSet);
//Get the chart
pieChart.setData(data);
pieChart.invalidate();
pieChart.setCenterText("50% \n ");
pieChart.setDrawEntryLabels(false);
pieChart.setContentDescription("");
//pieChart.setDrawMarkers(true);
//pieChart.setMaxHighlightDistance(34);
pieChart.setEntryLabelTextSize(12);
pieChart.setHoleRadius(75);
//legend attributes
Legend legend = pieChart.getLegend();
legend.setForm(Legend.LegendForm.CIRCLE);
legend.setTextSize(12);
legend.setFormSize(20);
legend.setFormToTextSpace(2);
}
}
我在找什么:雖然我試過了,但似乎無法找到編輯以下功能的方法。
為了實現這一點,我在經過一番搜索后使用了 MPAndoridChart 庫並卡在這里。 我正在使用 Android Studio 3.6.1。 我真的很感激對此的任何建議。
謝謝!
我能夠解決以下兩個查詢:
如何去掉左上角的“描述標簽”
pieChart.getDescription().setEnabled(false);
如何增加圖表的文字大小? > 添加
data.setValueTextSize(10);
要刪除 label 內部數據,只需使用
dataSet.setDrawValues(false)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.