Module xaos.ui.plot
Package eu.ess.xaos.ui.plot
Class HistogramChartFX<X extends Number,Y extends Number>
- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Parent
-
- javafx.scene.layout.Region
-
- javafx.scene.chart.Chart
-
- javafx.scene.chart.XYChart<X,Y>
-
- javafx.scene.chart.LineChart<X,Y>
-
- eu.ess.xaos.ui.plot.HistogramChartFX<X,Y>
-
- Type Parameters:
X
- Type of X values.Y
- Type of Y values.
- All Implemented Interfaces:
Pluggable
,Styleable
,EventTarget
public class HistogramChartFX<X extends Number,Y extends Number> extends LineChart<X,Y> implements Pluggable
A specializedLineChart
used to draw histograms.- Author:
- claudio.rosati@esss.se
-
-
Property Summary
Properties Type Property Description DoubleProperty
barGap
-
Properties inherited from class javafx.scene.chart.LineChart
axisSortingPolicy, createSymbols
-
Properties inherited from class javafx.scene.chart.XYChart
alternativeColumnFillVisible, alternativeRowFillVisible, data, horizontalGridLinesVisible, horizontalZeroLineVisible, verticalGridLinesVisible, verticalZeroLineVisible
-
Properties inherited from class javafx.scene.chart.Chart
animated, legend, legendSide, legendVisible, title, titleSide
-
Properties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
-
Properties inherited from class javafx.scene.Parent
needsLayout
-
Properties inherited from class javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javafx.scene.chart.LineChart
LineChart.SortingPolicy
-
-
Field Summary
-
Fields inherited from class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
-
Fields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
-
Constructor Summary
Constructors Constructor Description HistogramChartFX(ValueAxis<X> xAxis, ValueAxis<Y> yAxis)
Construct a new histogram chart with the given axis.HistogramChartFX(ValueAxis<X> xAxis, ValueAxis<Y> yAxis, ObservableList<XYChart.Series<X,Y>> data)
Construct a new histogram chart with the given data.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addChartPlugins(ObservableList<Plugin> plugins)
More robust method for adding plugins to chart.DoubleProperty
barGapProperty()
double
getBarGap()
Chart
getChart()
ObservableList<Legend.LegendItem>
getLegendItems()
ObservableList<Node>
getPlotChildren()
ObservableList<Plugin>
getPlugins()
boolean
isNotShownInLegend(String name)
Returns whether the series with the given name is displayed in chartLegend
or not.boolean
isSeriesDrawn(String name)
protected void
layoutPlotChildren()
static HistogramChartFX<Number,Number>
of(List<Double> data, double minVal, double maxVal, int bars, String seriesName)
Quick way of creating a histogram chart showing the givendata
.static HistogramChartFX<Number,Number>
of(List<Double> data, int bars, String seriesName)
Quick way of creating a histogram chart showing the givendata
.static XYChart.Series<Number,Number>
seriesOf(List<Double> data, double minVal, double maxVal, int bars, String seriesName)
Quick way of creating a histogram chart series from the givendata
.static XYChart.Series<Number,Number>
seriesOf(List<Double> data, int bars, String seriesName)
Quick way of creating a histogram chart series from the givendata
.void
setBarGap(double barGap)
void
setHVLSeries(int horizontal, int vertical, int longitudinal)
Sets which series has to be considered "horizontal", "vertical" and "longitudinal".void
setNotShownInLegend(String name)
Specifies a series to not be shown in chartLegend
.protected void
updateLegend()
-
Methods inherited from class javafx.scene.chart.LineChart
axisSortingPolicyProperty, createSymbolsProperty, dataItemAdded, dataItemChanged, dataItemRemoved, getAxisSortingPolicy, getClassCssMetaData, getCreateSymbols, getCssMetaData, seriesAdded, seriesChanged, seriesRemoved, setAxisSortingPolicy, setCreateSymbols, updateAxisRange
-
Methods inherited from class javafx.scene.chart.XYChart
alternativeColumnFillVisibleProperty, alternativeRowFillVisibleProperty, currentDisplayedExtraValueProperty, currentDisplayedXValueProperty, currentDisplayedYValueProperty, dataProperty, getCurrentDisplayedExtraValue, getCurrentDisplayedXValue, getCurrentDisplayedYValue, getData, getDisplayedDataIterator, getDisplayedSeriesIterator, getVerticalGridLinesVisible, getXAxis, getYAxis, horizontalGridLinesVisibleProperty, horizontalZeroLineVisibleProperty, isAlternativeColumnFillVisible, isAlternativeRowFillVisible, isHorizontalGridLinesVisible, isHorizontalZeroLineVisible, isVerticalZeroLineVisible, layoutChartChildren, removeDataItemFromDisplay, removeSeriesFromDisplay, setAlternativeColumnFillVisible, setAlternativeRowFillVisible, setCurrentDisplayedExtraValue, setCurrentDisplayedXValue, setCurrentDisplayedYValue, setData, setHorizontalGridLinesVisible, setHorizontalZeroLineVisible, setVerticalGridLinesVisible, setVerticalZeroLineVisible, verticalGridLinesVisibleProperty, verticalZeroLineVisibleProperty
-
Methods inherited from class javafx.scene.chart.Chart
animate, animatedProperty, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getAnimated, getChartChildren, getLegend, getLegendSide, getTitle, getTitleSide, isLegendVisible, layoutChildren, legendProperty, legendSideProperty, legendVisibleProperty, requestChartLayout, setAnimated, setLegend, setLegendSide, setLegendVisible, setTitle, setTitleSide, shouldAnimate, titleProperty, titleSideProperty
-
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isResizable, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
-
Methods inherited from class javafx.scene.Parent
getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
-
Methods inherited from class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface javafx.css.Styleable
getStyleableNode
-
-
-
-
Property Detail
-
barGap
public final DoubleProperty barGapProperty
- See Also:
getBarGap()
,setBarGap(double)
-
-
Constructor Detail
-
HistogramChartFX
public HistogramChartFX(ValueAxis<X> xAxis, ValueAxis<Y> yAxis)
Construct a new histogram chart with the given axis.- Parameters:
xAxis
- The x axis to use.yAxis
- The y axis to use.- See Also:
LineChart(Axis, Axis)
-
HistogramChartFX
public HistogramChartFX(ValueAxis<X> xAxis, ValueAxis<Y> yAxis, ObservableList<XYChart.Series<X,Y>> data)
Construct a new histogram chart with the given data.- Parameters:
xAxis
- The X axis.yAxis
- The Y axis.data
- Data to included in the chart
-
-
Method Detail
-
of
public static HistogramChartFX<Number,Number> of(List<Double> data, int bars, String seriesName)
Quick way of creating a histogram chart showing the givendata
.- Parameters:
data
- The data list to be charted.bars
- The desired number of histogram bars.seriesName
- The name of theXYChart.Series
created from the givendata
.- Returns:
- A
AreaChartFX
chart.
-
of
public static HistogramChartFX<Number,Number> of(List<Double> data, double minVal, double maxVal, int bars, String seriesName)
Quick way of creating a histogram chart showing the givendata
.- Parameters:
data
- The data list to be charted.minVal
- Minimum data value.maxVal
- Maximum data value.bars
- The desired number of histogram bars.seriesName
- The name of theXYChart.Series
created from the givendata
.- Returns:
- A
AreaChartFX
chart.
-
seriesOf
public static XYChart.Series<Number,Number> seriesOf(List<Double> data, int bars, String seriesName)
Quick way of creating a histogram chart series from the givendata
.- Parameters:
data
- The data list to be charted.bars
- The desired number of histogram bars.seriesName
- The name of theXYChart.Series
created from the givendata
.- Returns:
- A
AreaChartFX
chart.
-
seriesOf
public static XYChart.Series<Number,Number> seriesOf(List<Double> data, double minVal, double maxVal, int bars, String seriesName)
Quick way of creating a histogram chart series from the givendata
.- Parameters:
data
- The data list to be charted.minVal
- Minimum data value.maxVal
- Maximum data value.bars
- The desired number of histogram bars.seriesName
- The name of theXYChart.Series
created from the givendata
.- Returns:
- A
AreaChartFX
chart.
-
barGapProperty
public final DoubleProperty barGapProperty()
- See Also:
getBarGap()
,setBarGap(double)
-
getBarGap
public double getBarGap()
- Returns:
- The number of pixels between histogram bars.
- See Also:
barGapProperty()
-
setBarGap
public void setBarGap(double barGap)
- Parameters:
barGap
- The number of pixels between histogram bars.- See Also:
barGapProperty()
-
addChartPlugins
public void addChartPlugins(ObservableList<Plugin> plugins)
More robust method for adding plugins to chart.Note: Only necessary if more than one plugin is being added at once.
- Parameters:
plugins
- List ofPlugin
s to be added.
-
getChart
public Chart getChart()
-
getLegendItems
public ObservableList<Legend.LegendItem> getLegendItems()
- Specified by:
getLegendItems
in interfacePluggable
- Returns:
- The an
ObservableList
ofLegend.LegendItem
displayed in theLegend
of the pluggable chart.
-
getPlotChildren
public final ObservableList<Node> getPlotChildren()
- Specified by:
getPlotChildren
in interfacePluggable
- Overrides:
getPlotChildren
in classXYChart<X extends Number,Y extends Number>
- Returns:
- The pluggable chart's plot children list.
-
getPlugins
public final ObservableList<Plugin> getPlugins()
- Specified by:
getPlugins
in interfacePluggable
- Returns:
- A non-
null
list of plugins added to the chart.
-
isNotShownInLegend
public boolean isNotShownInLegend(String name)
Description copied from interface:Pluggable
Returns whether the series with the given name is displayed in chartLegend
or not.- Specified by:
isNotShownInLegend
in interfacePluggable
- Parameters:
name
- The name of the series to be checked.- Returns:
true
if the series with the given name is not shown in chartLegend
.
-
isSeriesDrawn
public boolean isSeriesDrawn(String name)
-
setHVLSeries
public final void setHVLSeries(int horizontal, int vertical, int longitudinal)
Sets which series has to be considered "horizontal", "vertical" and "longitudinal". Special colors will be used to represent horizontal (red), vertical (blue) and longitudinal (green) series.- Parameters:
horizontal
- Index of the horizontal series. Use -1 if no horizontal series exists.vertical
- Index of the vertical series. Use -1 if no vertical series exists.longitudinal
- Index of the longitudinal series. Use -1 if no longitudinal series exists.
-
setNotShownInLegend
public final void setNotShownInLegend(String name)
Description copied from interface:Pluggable
Specifies a series to not be shown in chartLegend
.- Specified by:
setNotShownInLegend
in interfacePluggable
- Parameters:
name
- The name of the series to not be shown in chartLegend
.
-
layoutPlotChildren
protected void layoutPlotChildren()
-
-