使用双值创建带有MPAndroidChart的条形图

时间:2017-03-16 20:18:17

标签: java android arraylist bar-chart mpandroidchart

您好我正在尝试使用Android Studio中的MPAndroidChart库为我的Java应用程序创建条形图。我已设法使用单个整数值绘制条形图,但我想绘制双值。

这是我绘制单个整数值的代码

public class walk extends AppCompatActivity {

HorizontalBarChart barChart;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_walk);

    barChart = (HorizontalBarChart) findViewById(R.id.bargraph);

    ArrayList<BarEntry> barEntries = new ArrayList<>();
    barEntries.add(new BarEntry(10f,0));
    barEntries.add(new BarEntry(5f,1));
    BarDataSet barDataSet = new BarDataSet(barEntries,"ACTIVITIES");

    ArrayList <String> pa = new ArrayList<>();
    pa.add("WALKING");
    pa.add("RUNNING");

    BarData theData = new BarData(pa,barDataSet);
    barChart.setData(theData);
    barDataSet.setBarSpacePercent(70f);

}

我想绘制以下值20.333333333333332和2.0071271275749623。

如果有什么不清楚的话,我会很感激我能得到任何帮助。我是这个网站的新手。

1 个答案:

答案 0 :(得分:0)

在绘图前将double转换为float:

    double point1 = 20.333333333333332;
    double point2 = 2.0071271275749623;
    float fp1 = (float)point1;
    float fp2 = (float)point2;
    ArrayList<BarEntry> barEntries = new ArrayList<>();
       barEntries.add(new BarEntry(fp1,0));
       barEntries.add(new BarEntry(fp2,1));
    BarDataSet barDataSet = new BarDataSet(barEntries,"ACTIVITIES");