簡體   English   中英

如何在 Android 中使用 MPAndroidChart 自定義餅圖?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM