Я узнал, как добиться того, чтобы начать с нуля, даже если каждое значение равно 0. См. код ниже, я все прокомментировал:
public class MainActivity extends AppCompatActivity {
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BarChart barChart = findViewById(R.id.bar_chart);
ArrayList<BarEntry> inventory = new ArrayList<>();
inventory.add(new BarEntry(1f,0));
inventory.add(new BarEntry(2f,10));
inventory.add(new BarEntry(3f,20));
inventory.add(new BarEntry(4f,30));
inventory.add(new BarEntry(5f,40));
//Colors & Textsize
BarDataSet barDataSet = new BarDataSet(inventory,"Inventory");
barDataSet.setColors(ColorTemplate.COLORFUL_COLORS);
barDataSet.setValueTextColor(Color.BLACK);
barDataSet.setValueTextSize(16f);
//Start at zero even all values are 0 for left YAxis.
YAxis yAxis = barChart.getAxis(YAxis.AxisDependency.LEFT);
yAxis.setStartAtZero(true);
//Start at zero even all values are 0 for right YAxis.
YAxis yAxis1 = barChart.getAxis(YAxis.AxisDependency.RIGHT);
yAxis1.setStartAtZero(true);
//Define every space between the scales you want to.
XAxis xAxis = barChart.getXAxis();
xAxis.setGranularity(1.0f);
xAxis.setGranularityEnabled(true);
/*
//Disables the right YAxis (Optional)
YAxis rightYAxis = barChart.getAxisRight();
rightYAxis.setEnabled(false);*/
//Other Settings
BarData barData = new BarData(barDataSet);
barChart.setData(barData);
barChart.getDescription().setEnabled(false);
barChart.getLegend().setEnabled(false);
barChart.animateX(500);
}
}
Если вы хотите выполнить дальнейшую настройку, я предлагаю взглянуть на документацию.
РЕЗУЛЬТАТ

Я все еще хочу показать на графике, потому что для моего приложения важно, чтобы они были равны 0. Поэтому я не хочу их фильтровать.
Итак, если все равно нулю, вы хотите отобразить нули, но избавиться от -1? отрицательная шкала? Мне нужно немного больше информации, чтобы помочь.
Вам все еще нужна помощь с этим?
да, это именно то, что я пытаюсь сделать. Я хочу избавиться от -1 и хочу, чтобы график начинался с 0 по вертикальной оси, как на первом изображении.
Я обновил свой ответ, отметьте его как правильный, если вы этого хотели :)
Это действительно читается по отрицательной шкале. Однако я хочу сохранить правую ось Y (по крайней мере, строку в конце диаграммы), но проблема в том, что значения правой оси Y не соответствуют значениям, записанным на левой оси Y.
Я исправил это в коде выше. Вам нужно определить правильную диаграмму setStartAtZero(true); также. Теперь оба начинают с 0. Ура :)
Я также обновил изображение для полноты.
Благодарю вас! Работает отлично!