2014-10-05 20 views
5

Tôi đang sử dụng thư viện tuyệt vời MPAndroidChart. Nó hoạt động như một nét duyên dáng, ngoại trừ khi tôi đang cố gắng thay đổi màu nền của BarData. Màu mặc định là màu trắng và tôi muốn đổi thành Màu trong suốt.Làm cách nào để thay đổi nền biểu đồ bằng thư viện MPAndroidChart?

Tôi đã thử điều này:

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

và điều này:

<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"/> 

... nhưng có vẻ như tác phẩm doesnt.

Bất kỳ ý tưởng nào?

Cảm ơn =)

Trả lời

6

Kể từ release v1.6.5, nền của Chartminh bạch theo mặc định. Có nghĩa là, mọi thứ trong nền (nền biểu đồ, khác Views, v.v.) không bị che phủ bởi dữ liệu được vẽ vào Chart, sẽ hiển thị.

Nếu bạn muốn thay đổi nền (màu sắc, hoặc có thể drawable), bạn có thể làm điều đó bằng cách thay đổi biểu đồ-nền

  • trong .xml (android:background="...")
  • bằng cách gọi setBackgroundColor(...) hoặc setBackgroundResource(...)

Một cách khác có thể là thay đổi nền của bố cục gốc chứa Chart.

+0

Cảm ơn bạn! Tôi sẽ kiểm tra bản phát hành mới của bạn =) – Phil

+0

Tôi chỉ đang thử nghiệm bản phát hành mới của bạn và nền trong suốt hoạt động như một sự quyến rũ! Cảm ơn một lần nữa – Phil

+0

@Philipp Chúng tôi có thể đặt nền chỉ cho phạm vi. Như -30 và dưới màu đỏ -10 dưới màu vàng và 10 trên màu vàng và 30 trên màu đỏ – Prasad

2

Mã để thay đổi màu nền:

chart.setBackgroundColor(Color.TRANSPARENT); //set whatever color you prefer 
chart.setDrawGridBackground(false);// this is a must 
1

nếu bạn muốn thay đổi toàn bộ màn hình nền màu

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 

hạnh phúc để giúp Cảm ơn

Các vấn đề liên quan