071039c42ea8d310e99501f9136592ad.png

这个和垂直柱状图一模一样,只不过把控件名换了一下从barchart换成了HorizontalBarChart

XML文件

android:layout_width="match_parent"

android:layout_height="50dp">

android:layout_width="match_parent"

android:layout_height="match_parent"

android:gravity="center"

android:text="水平柱状图" />

android:layout_width="match_parent"

android:layout_height="150dp"

android:orientation="vertical">

android:id="@+id/horizontalBarChart"

android:layout_width="match_parent"

android:layout_height="150dp" />

MainActivity//初始化水平柱状图

HorizontalBarChart horizontalBarChart = findViewById(R.id.horizontalBarChart);

initBarChart(horizontalBarChart);

horizontalBarChart.setData(setBarData());

barChart.invalidate();

public BarChart initBarChart(BarChart barChart) {

barChart.setDrawBarShadow(false); // 设置每条柱子的阴影不显示

barChart.setDrawValueAboveBar(true); // 设置每条柱子的数值显示

barChart.setPinchZoom(false);

XAxis xAxis = barChart.getXAxis(); // 获取柱状图的x轴

YAxis yAxisLeft = barChart.getAxisLeft(); // 获取柱状图左侧的y轴

YAxis yAxisRight = barChart.getAxisRight(); // 获取柱状图右侧的y轴

setAxis(xAxis, yAxisLeft, yAxisRight); //调用方法设置柱状图的轴线

return barChart;

}

public BarData setBarData() {

List entries = new ArrayList<>(); //定义一个数据容器

//生成随机数数据

for (int i = 0; i <= 12; i++) {

entries.add(new BarEntry(i, new Random().nextInt(300)));

}

BarDataSet barDataSet = new BarDataSet(entries, "测试数据");

BarData barData = new BarData(barDataSet);

return barData; //返回可用于柱状图的数据

}

文章参考:https://blog.csdn.net/weixin_43344890/article/details/103008320

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐