Class StackedBarChart<X,Y>

Type Parameters:
X - the X axis value type
Y - the Y axis value type
All Implemented Interfaces:
Styleable, EventTarget

public class StackedBarChart<X,Y> extends XYChart<X,Y>
StackedBarChart is a variation of BarChart that plots bars indicating data values for a category. The bars can be vertical or horizontal depending on which axis is a category axis. The bar for each series is stacked on top of the previous series.
Since:
JavaFX 2.1
  • Property Details

  • Constructor Details

    • StackedBarChart

      public StackedBarChart(Axis<X> xAxis, Axis<Y> yAxis)
      Construct a new StackedBarChart with the given axis. The two axis should be a ValueAxis/NumberAxis and a CategoryAxis, they can be in either order depending on if you want a horizontal or vertical bar chart.
      Parameters:
      xAxis - The x axis to use
      yAxis - The y axis to use
    • StackedBarChart

      public StackedBarChart(Axis<X> xAxis, Axis<Y> yAxis, ObservableList<XYChart.Series<X,Y>> data)
      Construct a new StackedBarChart with the given axis and data. The two axis should be a ValueAxis/NumberAxis and a CategoryAxis, they can be in either order depending on if you want a horizontal or vertical bar chart.
      Parameters:
      xAxis - The x axis to use
      yAxis - The y axis to use
      data - The data to use, this is the actual list used so any changes to it will be reflected in the chart
    • StackedBarChart

      public StackedBarChart(Axis<X> xAxis, Axis<Y> yAxis, ObservableList<XYChart.Series<X,Y>> data, double categoryGap)
      Construct a new StackedBarChart with the given axis and data. The two axis should be a ValueAxis/NumberAxis and a CategoryAxis, they can be in either order depending on if you want a horizontal or vertical bar chart.
      Parameters:
      xAxis - The x axis to use
      yAxis - The y axis to use
      data - The data to use, this is the actual list used so any changes to it will be reflected in the chart
      categoryGap - The gap to leave between bars in separate categories
  • Method Details

    • getCategoryGap

      public double getCategoryGap()
      Gets the value of the categoryGap property.
      Property description:
      The gap to leave between bars in separate categories
      Returns:
      the value of the categoryGap property
      See Also:
    • setCategoryGap

      public void setCategoryGap(double value)
      Sets the value of the categoryGap property.
      Property description:
      The gap to leave between bars in separate categories
      Parameters:
      value - the value for the categoryGap property
      See Also:
    • categoryGapProperty

      public DoubleProperty categoryGapProperty()
      The gap to leave between bars in separate categories
      Returns:
      the categoryGap property
      See Also:
    • dataItemAdded

      protected void dataItemAdded(XYChart.Series<X,Y> series, int itemIndex, XYChart.Data<X,Y> item)
      Description copied from class: XYChart
      Called when a data item has been added to a series. This is where implementations of XYChart can create/add new nodes to getPlotChildren to represent this data item. They also may animate that data add with a fade in or similar if animated = true.
      Specified by:
      dataItemAdded in class XYChart<X,Y>
      Parameters:
      series - The series the data item was added to
      itemIndex - The index of the new item within the series
      item - The new data item that was added
    • dataItemRemoved

      protected void dataItemRemoved(XYChart.Data<X,Y> item, XYChart.Series<X,Y> series)
      Description copied from class: XYChart
      Called when a data item has been removed from data model but it is still visible on the chart. Its still visible so that you can handle animation for removing it in this method. After you are done animating the data item you must call removeDataItemFromDisplay() to remove the items node from being displayed on the chart.
      Specified by:
      dataItemRemoved in class XYChart<X,Y>
      Parameters:
      item - The item that has been removed from the series
      series - The series the item was removed from
    • dataItemChanged

      protected void dataItemChanged(XYChart.Data<X,Y> item)
      Called when a data item has changed, ie its xValue, yValue or extraValue has changed.
      Specified by:
      dataItemChanged in class XYChart<X,Y>
      Parameters:
      item - The data item who was changed
    • seriesAdded

      protected void seriesAdded(XYChart.Series<X,Y> series, int seriesIndex)
      A series has been added to the charts data model. This is where implementations of XYChart can create/add new nodes to getPlotChildren to represent this series. Also you have to handle adding any data items that are already in the series. You may simply call dataItemAdded() for each one or provide some different animation for a whole series being added.
      Specified by:
      seriesAdded in class XYChart<X,Y>
      Parameters:
      series - The series that has been added
      seriesIndex - The index of the new series
    • seriesRemoved

      protected void seriesRemoved(XYChart.Series<X,Y> series)
      Description copied from class: XYChart
      A series has been removed from the data model but it is still visible on the chart. Its still visible so that you can handle animation for removing it in this method. After you are done animating the data item you must call removeSeriesFromDisplay() to remove the series from the display list.
      Specified by:
      seriesRemoved in class XYChart<X,Y>
      Parameters:
      series - The series that has been removed
    • layoutPlotChildren

      protected void layoutPlotChildren()
      Called to update and layout the plot children. This should include all work to updates nodes representing the plot on top of the axis and grid lines etc. The origin is the top left of the plot area, the plot area with can be got by getting the width of the x axis and its height from the height of the y axis.
      Specified by:
      layoutPlotChildren in class XYChart<X,Y>
    • getClassCssMetaData

      public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
      Gets the CssMetaData associated with this class, which may include the CssMetaData of its superclasses.
      Returns:
      the CssMetaData
      Since:
      JavaFX 8.0
    • getCssMetaData

      public List<CssMetaData<? extends Styleable,?>> getCssMetaData()
      This method should delegate to Node.getClassCssMetaData() so that a Node's CssMetaData can be accessed without the need for reflection.
      Specified by:
      getCssMetaData in interface Styleable
      Overrides:
      getCssMetaData in class XYChart<X,Y>
      Returns:
      The CssMetaData associated with this node, which may include the CssMetaData of its superclasses.
      Since:
      JavaFX 8.0