JavaFX BarChart如何使条居中对齐?

时间:2019-03-22 14:14:23

标签: javafx alignment

我有一个barChart: that looks like this

条形图与类别的左侧对齐,例如,“食品/饮料”橙色条位于X轴上“食品/饮料”类别文本的左侧。 我希望它超越它。

我尝试使用BarChart对象的.setCategoryBar()和.setBarGap()方法,但是那些没有达到所需结果的方法不会影响我传递给它们的值(甚至是负值),它们似乎只会改变条的厚度。

BarChart的FXML代码:

<center>
  <BarChart BorderPane.alignment="CENTER" fx:id="barChart">
    <xAxis>
      <CategoryAxis label="Category" side="BOTTOM" />
    </xAxis>
    <yAxis>
      <NumberAxis label="Money Spent (PLN)" side="LEFT"/>
    </yAxis>
  </BarChart>

使用BarChart绑定数据的代码:

    public void initialize() {
    barChart.setData(DataStorage.getInstance().getChartData());
    barChart.setTitle("Expenses: " + DataStorage.getInstance().getTotalExpenses() + " PLN");
}

1 个答案:

答案 0 :(得分:1)

好,所以对于任何有此问题的人:改用StackedBarChart。过渡到大约需要30秒。

如果您提到了问题,请阅读这篇文章:

Align bars with bar labels in Jfreechart