如何修改MPAndroidChart BarChart中的条形宽度?

16

我正在使用MPAndroidChart库

我想要修改条形图中的条的大小。请问在mp android chart中哪里可以查看并修改条形图中的条大小?


1
我发现通过增加 set1.setBarSpacePercent(75f) 的数值,它工作了。 - Rakesh
请作为答案发布,并描述set1是什么,因为很难猜测它是哪个类实例 :) - Nitish
我从哪里可以下载mpandroidchart library-3.0-1.jar或mpandroidchart library-3.0-0.jar? - KJEjava48
5个回答

39
您可以减少条形之间的间距,这将自动增加条形的宽度。
BarDataSet set = new BarDataSet(vals, "Set A");
set.setBarSpacePercent(50f);

更新 v3.0.0:

从这个库的版本开始,您可以使用以下方法控制条形图的宽度:

BarData barData = new BarData(...);
barData.setBarWidth(1f);

您提供的数字代表x轴上的某个间隔。如果您的总轴范围为10k,且将条形图宽度设置为1000,则该条形图将覆盖总x轴范围的10%。


2
这对于更高数量的条形数据集不起作用。 - user484691
如果您想在图表中放置更多的条形,它们的大小将会减小。 - abhi
5
这个 API 已经不再在较新版本的 MPAndroidChart 中存在。 - lschuetze
@abhinav 我可以从哪里下载mpandroidchart库-3.0-1.jar或mpandroidchart库-3.0-0.jar? - KJEjava48
@Philipp Jahoda 我在哪里可以下载mpandroidchart库的library-3.0-1.jar或library-3.0-0.jar版本? - KJEjava48
@KJEjava48 在此处查看发布版本:https://github.com/PhilJay/MPAndroidChart/releases - abhi

14

至于最新版本的库BarDataSet,不再具有此功能,而是在BarData类中实现。

BarData data = new BarData(dataset);
data.setBarWidth(0.5f);

2
Kotlin:
barChartView.data = BarData(dataSetList).apply { 
    barWidth = 0.5f
}    

将数据适配到图表中(无滚动行为)

barChartView.xAxis.axisMaximum = dataList.size
barChartView.setVisibleXRange(1f,xAxisLabels.size.toFloat())

0

这适用于MPAndroidChart API。要减小柱状图的宽度,你需要增加柱状之间的间距(正如Rakesh所提到的)。对于移动显示,50F的值应该是不错的选择,但你可以根据设备屏幕的情况进行增加或减少。

如一位用户的要求,以下是示例代码:

    BarDataSet barDataSet = new BarDataSet(group1, "X");
    barDataSet.setColors(ColorTemplate.COLORFUL_COLORS);
    barDataSet.setBarSpacePercent(50f);

API 导入如下:

import com.github.mikephil.charting.data.BarDataSet;

0

data.barWidth = 0.5f

这意味着barWidth/(barWidth + blankWith) = 0.5f


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接