我想从github制作带有MPAndroidChart库的PieChart,我按照google或youtube上的说明进行操作,但我仍然坚持使用此代码
private void addData(){
ArrayList<Entry> yVals1 = new ArrayList<Entry>();
for (int i = 0; i < yData.length; i++)
yVals1.add(new Entry(yData[i], i));
ArrayList<String> xVals = new ArrayList<String>();
for (int i = 0; i < xData.length; i++)
xVals.add(xData[i]);
PieDataSet dataSet = new PieDataSet(yVals1, "Market Share");
dataSet.setSliceSpace(3);
dataSet.setSelectionShift(5);
}
in
PieDataSet dataSet = new PieDataSet(yVals1,&#34; Market Share&#34;);
我收到警告,PieDataSet Cannot Applied to String
。我不知道什么是错的,因为在教程中与我相同
答案 0 :(得分:1)
对于MPCharts的饼图,我已使用此代码段
protected PieData generatePieData() {
int count = 10;
ArrayList<PieEntry> entries1 = new ArrayList<PieEntry>();
for(int i = 0; i < count; i++) {
entries1.add(new PieEntry( (float) salary[i], months[i]));
}
PieDataSet ds1 = new PieDataSet(entries1, "Monthly Salary 2017");
ds1.setColors(ColorTemplate.JOYFUL_COLORS);
ds1.setSliceSpace(2f);
ds1.setValueTextColor(Color.WHITE);
ds1.setValueTextSize(10f);
ds1.setSliceSpace(5f);
return new PieData(ds1);
}
薪水和月份是数组
答案 1 :(得分:0)
我认为你需要将ArrayList指定为PieEntry?
ArrayList<PieEntry> yVals1 = new ArrayList<PieEntry>();
编辑:
我认为这是你可能需要的东西?;
ArrayList<String> xVals = new ArrayList<String>();
for (int i = 0; i < xData.length; i++){
xVals.add(xData[i]);
}
ArrayList<PieEntry> yVals1 = new ArrayList<PieEntry>();
for (int i = 0; i < yData.length; i++){
yVals1.add(new Entry(yData[i], xData[i]));
}