Class Charts.PieChartBuilder

java.lang.Object
qupath.lib.gui.charts.Charts.PieChartBuilder
Enclosing class:
Charts

public static class Charts.PieChartBuilder extends Object
Builder for creating pie charts.
  • Field Details

    • viewer

      protected QuPathViewer viewer
    • imageData

      protected ImageData<?> imageData
    • title

      protected String title
    • legendVisible

      protected boolean legendVisible
    • legendSide

      protected Side legendSide
    • markerOpacity

      protected double markerOpacity
    • width

      protected double width
    • height

      protected double height
  • Method Details

    • getThis

      protected Charts.PieChartBuilder getThis()
    • createNewChart

      protected PieChart createNewChart()
    • getDefaultWindowTitle

      protected String getDefaultWindowTitle()
      Get a window title to use for charts of this kind, assuming the user has not specified one.
      Returns:
      a suitable title to use
    • data

      public Charts.PieChartBuilder data(Map<?,? extends Number> data)
      Specify data for the pie chart as a map. Keys refer to categories, and values are numeric determining the size of the corresponding slice.
      Parameters:
      data - the data map to show
      Returns:
      this builder
    • convertToPercentages

      public Charts.PieChartBuilder convertToPercentages(boolean doConvert)
      Request that pie chart values are converted to percentages for tooltips.
      Parameters:
      doConvert -
      Returns:
    • tooltips

      public Charts.PieChartBuilder tooltips(boolean showTooltips)
      Request tooltips to be shown when the cursor hovers over the pie chart.
      Parameters:
      showTooltips -
      Returns:
    • addSlice

      public Charts.PieChartBuilder addSlice(Object name, Number value)
      Add a slice to the pie.
      Parameters:
      name - object the slice represents
      value - number that determines the proportion of the pie for the given slice
      Returns:
      this builder
    • updateChart

      protected void updateChart(PieChart chart)
      Method that applies properties of this builder to the chart. Each subclass should call the method in the parent class to ensure its properties have been applied.
      Parameters:
      chart -
    • title

      public Charts.PieChartBuilder title(String title)
      Specify the chart title.
      Parameters:
      title - the title to display
      Returns:
      this builder
    • legend

      public Charts.PieChartBuilder legend(boolean show)
      Specify whether the legend should be shown or not.
      Parameters:
      show - if true, show the legend; otherwise hide the legend
      Returns:
      this builder
    • legend

      public Charts.PieChartBuilder legend(String side)
      Specify the side of the chart where the legend should be shown. Valid values are "top", "bottom", "left", "right".

      Any other value (including null) will result in the legend being hidden.

      Parameters:
      side - the side where the legend should be shown
      Returns:
      this builder
    • legend

      public Charts.PieChartBuilder legend(Side side)
      Specify the side of the chart where the legend should be shown. If null, the legend will be hidden.
      Parameters:
      side - the side where the legend should be shown
      Returns:
      this builder
    • markerOpacity

      public Charts.PieChartBuilder markerOpacity(double opacity)
      Specify the marker opacity.
      Parameters:
      opacity - value between 0 (transparent) and 1 (opaque).
      Returns:
      this builder
    • imageData

      public Charts.PieChartBuilder imageData(ImageData<?> imageData)
      Specify an ImageData object. This can be used to make some charts 'live', e.g. if they relate to objects within the hierarchy of this data.
      Parameters:
      imageData - the imageData to associated with this chart
      Returns:
      this builder
    • viewer

      public Charts.PieChartBuilder viewer(QuPathViewer viewer)
      Specify a viewer. This can be used to make some charts 'live', e.g. if they relate to objects within the viewer.
      Parameters:
      viewer - the viewer to associated with this chart
      Returns:
      this builder
    • width

      public Charts.PieChartBuilder width(double width)
      Set the preferred width of the chart.
      Parameters:
      width - preferred width
      Returns:
      this builder
    • height

      public Charts.PieChartBuilder height(double height)
      Set the preferred height of the chart.
      Parameters:
      height - preferred height
      Returns:
      this builder
    • size

      public Charts.PieChartBuilder size(double width, double height)
      Set the preferred size of the chart.
      Parameters:
      width - preferred width
      height - preferred height
      Returns:
      this builder
    • parent

      public Charts.PieChartBuilder parent(Window parent)
      Set the parent window. If not set, QuPath will try to choose a sensible default. This is useful to avoid the chart falling 'behind' other windows when not in focus.

      This is relevant only if show() or toStage() will be called.

      Parameters:
      parent - the requested parent window
      Returns:
      this builder
    • windowTitle

      public Charts.PieChartBuilder windowTitle(String title)
      Title to use for the window, if the chart is shown.

      This is relevant only if show() or toStage() will be called.

      Parameters:
      title - window title
      Returns:
      this builder
    • build

      public PieChart build()
      Build a chart according to the specified parameters.
      Returns:
      the chart
    • toStage

      public Stage toStage()
      Add the chart to a stage, but do not show it.
      Returns:
      the stage containing this Chart.
      See Also:
    • show

      public Stage show()
      Add the chart to a stage, and show it in the Application thread.
      Returns:
      the stage containing this Chart.
      See Also: