Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to change chart background with MPAndroidChart library?

I'm using the amazing library MPAndroidChart. It works like a charm, except when I'm trying to change the background color of the BarData. Default color is white, and I want to change it to Transparent.

I've tried this :

Paint p1 = mChart.getPaint(Chart.PAINT_GRID_BACKGROUND);
p1.setColor(Color.RED);

and this:

<com.github.mikephil.charting.charts.BarChart
        android:id="@+id/chart1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/transparent"/>

... but it seems that doesnt works.

Any ideas ?

Thanks =)

like image 443
Phil Avatar asked Oct 05 '14 12:10

Phil


3 Answers

Since release v1.6.5, the background of the Chart is transparent by default. Meaning, that everything in the background (chart background, other Views, etc.) that is not overlayed by data drawn into the Chart, will be visible.

If you want to change the background (color, or maybe drawable), you can either do that by changing the chart-background

  • in .xml (android:background="...")
  • by calling setBackgroundColor(...) or setBackgroundResource(...)

Another way could be to change the background of the parent layout that contains the Chart.

like image 148
Philipp Jahoda Avatar answered Oct 23 '22 08:10

Philipp Jahoda


Code to change Background color:

chart.setBackgroundColor(Color.TRANSPARENT); //set whatever color you prefer
chart.setDrawGridBackground(false);// this is a must 
like image 40
TSG anti SO dark forces Avatar answered Oct 23 '22 08:10

TSG anti SO dark forces


if you want to Change Whole Screen Background Color

 Barchart chart;
 chart.setBackgroundColor(Color.rgb(0, 0, 0));//Set as a black
 chart.setDrawGridBackground(false);//set this to true to draw the grid background, false if not

Happy to help Thanks

like image 1
Anand Dwivedi Avatar answered Oct 23 '22 08:10

Anand Dwivedi