public final class CategoryAxis extends Axis<java.lang.String>
Modifier and Type | Class and Description |
---|---|
private static class |
CategoryAxis.StyleableProperties |
Axis.TickMark<T>
Modifier and Type | Field and Description |
---|---|
private java.util.List<java.lang.String> |
allDataCategories |
private ChartLayoutAnimator |
animator |
private ObjectProperty<ObservableList<java.lang.String>> |
categories |
private ReadOnlyDoubleWrapper |
categorySpacing
This is the gap between one category and the next along this axis
|
private boolean |
changeIsLocal |
private java.lang.Object |
currentAnimationID |
private DoubleProperty |
endMargin
The margin between the last tick mark and the axis end
|
private DoubleProperty |
firstCategoryPos
This is the gap between one category and the next along this axis
|
private BooleanProperty |
gapStartAndEnd
If this is true then half the space between ticks is left at the start
and end
|
private ListChangeListener<java.lang.String> |
itemsListener |
private DoubleProperty |
startMargin
The margin between the axis start and the first tick-mark
|
measure, measureInvalid, rangeValid, tickLabelsVisibleInvalid
USE_COMPUTED_SIZE, USE_PREF_SIZE
BASELINE_OFFSET_SAME_AS_HEIGHT
Constructor and Description |
---|
CategoryAxis()
Create a auto-ranging category axis with an empty list of categories.
|
CategoryAxis(ObservableList<java.lang.String> categories)
Create a category axis with the given categories.
|
Modifier and Type | Method and Description |
---|---|
protected java.lang.Object |
autoRange(double length)
This calculates the categories based on the data provided to invalidateRange() method.
|
private double |
calculateNewFirstPos(double length,
double catSpacing) |
private double |
calculateNewSpacing(double length,
java.util.List<java.lang.String> categories) |
private double |
calculateRequiredSize(boolean axisVertical,
double tickLabelRotation) |
protected java.util.List<java.lang.String> |
calculateTickValues(double length,
java.lang.Object range)
Calculate a list of all the data values for each tick mark in range
|
ReadOnlyDoubleProperty |
categorySpacingProperty() |
private void |
checkAndRemoveDuplicates(java.lang.String category) |
DoubleProperty |
endMarginProperty() |
BooleanProperty |
gapStartAndEndProperty() |
(package private) java.util.List<java.lang.String> |
getAllDataCategories() |
ObservableList<java.lang.String> |
getCategories()
Returns a
ObservableList of categories plotted on this axis. |
double |
getCategorySpacing() |
static java.util.List<CssMetaData<? extends Styleable,?>> |
getClassCssMetaData() |
java.util.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. |
double |
getDisplayPosition(java.lang.String value)
Get the display position along this axis for a given value.
|
private java.lang.String |
getDuplicate() |
double |
getEndMargin() |
protected java.lang.Object |
getRange()
Called to get the current axis range.
|
double |
getStartMargin() |
protected java.lang.String |
getTickMarkLabel(java.lang.String value)
Get the string label name for a tick mark with the given value
|
java.lang.String |
getValueForDisplay(double displayPosition)
Get the data value for the given display position on this axis.
|
double |
getZeroPosition()
Get the display position of the zero line along this axis.
|
void |
invalidateRange(java.util.List<java.lang.String> data)
Called when data has changed and the range may not be valid any more.
|
boolean |
isGapStartAndEnd() |
boolean |
isValueOnAxis(java.lang.String value)
Checks if the given value is plottable on this axis
|
protected Dimension2D |
measureTickMarkSize(java.lang.String value,
java.lang.Object range)
Measure the size of the label for given tick mark value.
|
void |
setCategories(ObservableList<java.lang.String> value)
The ordered list of categories plotted on this axis.
|
void |
setEndMargin(double value) |
void |
setGapStartAndEnd(boolean value) |
protected void |
setRange(java.lang.Object range,
boolean animate)
Called to set the current axis range to the given range.
|
void |
setStartMargin(double value) |
DoubleProperty |
startMarginProperty() |
double |
toNumericValue(java.lang.String value)
All axis values must be representable by some numeric value.
|
java.lang.String |
toRealValue(double value)
All axis values must be representable by some numeric value.
|
animatedProperty, autoRangingProperty, computePrefHeight, computePrefWidth, getAnimated, getEffectiveSide, getEffectiveTickLabelRotation, getLabel, getSide, getTickLabelFill, getTickLabelFont, getTickLabelGap, getTickLabelRotation, getTickLength, getTickMarks, invalidateRange, isAutoRanging, isRangeValid, isTickLabelsVisible, isTickMarkVisible, labelProperty, layoutChildren, measureTickMarkLabelSize, measureTickMarkSize, requestAxisLayout, requestLayout, setAnimated, setAutoRanging, setEffectiveOrientation, setEffectiveTickLabelRotation, setLabel, setSide, setTickLabelFill, setTickLabelFont, setTickLabelGap, setTickLabelRotation, setTickLabelsVisible, setTickLength, setTickMarkVisible, shouldAnimate, sideProperty, tickLabelFillProperty, tickLabelFontProperty, tickLabelGapProperty, tickLabelRotationProperty, tickLabelsVisibleProperty, tickLengthProperty, tickMarksUpdated, tickMarkVisibleProperty
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, impl_computeContains, impl_computeGeomBounds, impl_computeLayoutBounds, impl_createPeer, impl_notifyLayoutBoundsChanged, impl_pickNodeLocal, impl_updatePeer, 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, snapSize, snapSpace, snapToPixelProperty, widthProperty
getBaselineOffset, getChildren, getChildrenUnmodifiable, getImpl_traversalEngine, getManagedChildren, getStylesheets, impl_getAllParentStylesheets, impl_processCSS, impl_processMXNode, impl_traversalEngineProperty, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestParentLayout, setImpl_traversalEngine, setNeedsLayout, updateBounds
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, containsBounds, 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, 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, hasProperties, hoverProperty, idProperty, impl_clearDirty, impl_computeIntersects, impl_cssGetCursorInitialValue, impl_cssGetFocusTraversableInitialValue, impl_findStyles, impl_geomChanged, impl_getLeafTransform, impl_getMatchingStyles, impl_getPeer, impl_getPivotX, impl_getPivotY, impl_getPivotZ, impl_getStyleMap, impl_hasTransforms, impl_intersects, impl_intersectsBounds, impl_isDirty, impl_isDirtyEmpty, impl_isShowMnemonics, impl_isTreeVisible, impl_layoutBoundsChanged, impl_markDirty, impl_pickNode, impl_processCSS, impl_reapplyCSS, impl_setShowMnemonics, impl_setStyleMap, impl_showMnemonicsProperty, impl_syncPeer, impl_transformsChanged, impl_traverse, impl_treeVisibleProperty, 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, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, visibleProperty
private java.util.List<java.lang.String> allDataCategories
private boolean changeIsLocal
private final DoubleProperty firstCategoryPos
private java.lang.Object currentAnimationID
private final ChartLayoutAnimator animator
private ListChangeListener<java.lang.String> itemsListener
private DoubleProperty startMargin
private DoubleProperty endMargin
private BooleanProperty gapStartAndEnd
private ObjectProperty<ObservableList<java.lang.String>> categories
private final ReadOnlyDoubleWrapper categorySpacing
public CategoryAxis()
public CategoryAxis(ObservableList<java.lang.String> categories)
categories
- List of the categories for this axispublic final double getStartMargin()
public final void setStartMargin(double value)
public final DoubleProperty startMarginProperty()
public final double getEndMargin()
public final void setEndMargin(double value)
public final DoubleProperty endMarginProperty()
public final boolean isGapStartAndEnd()
public final void setGapStartAndEnd(boolean value)
public final BooleanProperty gapStartAndEndProperty()
public final void setCategories(ObservableList<java.lang.String> value)
IllegalArgumentException
is thrown.private void checkAndRemoveDuplicates(java.lang.String category)
private java.lang.String getDuplicate()
public final ObservableList<java.lang.String> getCategories()
ObservableList
of categories plotted on this axis.categories
public final double getCategorySpacing()
public final ReadOnlyDoubleProperty categorySpacingProperty()
private double calculateNewSpacing(double length, java.util.List<java.lang.String> categories)
private double calculateNewFirstPos(double length, double catSpacing)
protected java.lang.Object getRange()
protected void setRange(java.lang.Object range, boolean animate)
protected java.lang.Object autoRange(double length)
private double calculateRequiredSize(boolean axisVertical, double tickLabelRotation)
protected java.util.List<java.lang.String> calculateTickValues(double length, java.lang.Object range)
calculateTickValues
in class Axis<java.lang.String>
length
- The length of the axis in display unitsrange
- A range object returned from autoRange()protected java.lang.String getTickMarkLabel(java.lang.String value)
getTickMarkLabel
in class Axis<java.lang.String>
value
- The value to format into a tick label stringprotected Dimension2D measureTickMarkSize(java.lang.String value, java.lang.Object range)
measureTickMarkSize
in class Axis<java.lang.String>
value
- tick mark valuerange
- range to use during calculationspublic void invalidateRange(java.util.List<java.lang.String> data)
invalidateRange
in class Axis<java.lang.String>
data
- The current set of all data that needs to be plotted on this axisfinal java.util.List<java.lang.String> getAllDataCategories()
public double getDisplayPosition(java.lang.String value)
getDisplayPosition
in class Axis<java.lang.String>
value
- The data value to work out display position forpublic java.lang.String getValueForDisplay(double displayPosition)
getValueForDisplay
in class Axis<java.lang.String>
displayPosition
- A pixel position on this axispublic boolean isValueOnAxis(java.lang.String value)
isValueOnAxis
in class Axis<java.lang.String>
value
- The value to check if its on axispublic double toNumericValue(java.lang.String value)
toNumericValue
in class Axis<java.lang.String>
value
- The data value to convertpublic java.lang.String toRealValue(double value)
toRealValue
in class Axis<java.lang.String>
value
- The numeric value to convertpublic double getZeroPosition()
getZeroPosition
in class Axis<java.lang.String>
public static java.util.List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
public java.util.List<CssMetaData<? extends Styleable,?>> getCssMetaData()
Node.getClassCssMetaData()
so that
a Node's CssMetaData can be accessed without the need for reflection.getCssMetaData
in interface Styleable
getCssMetaData
in class Axis<java.lang.String>