Class PMIChart
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.jfree.chart.ChartPanel
com.inductiveautomation.factorypmi.application.components.chart.PMIChartPanel
com.inductiveautomation.factorypmi.application.components.chart.PMILineChartPanel
com.inductiveautomation.factorypmi.application.components.PMIChart
- All Implemented Interfaces:
DynamicPropertyProvider
,LoadingMonitor
,LocaleListener
,MutableDynamicPropertyProvider
,ComponentLifecycle
,DesignerInitializable
,ExtensibleComponent
,QualityMonitor
,VisionComponent
,ActionListener
,MouseListener
,MouseMotionListener
,ImageObserver
,MenuContainer
,Printable
,Serializable
,EventListener
,Accessible
,org.jfree.chart.event.ChartChangeListener
,org.jfree.chart.event.ChartProgressListener
public class PMIChart
extends PMILineChartPanel
implements MutableDynamicPropertyProvider, DesignerInitializable, ExtensibleComponent, LocaleListener
This component is commonly referred to as the "Classic Chart". It works very directly - you feed it datasets full of
data, it charts them.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final String
static final String
protected TreeMap<String,
DynamicPropertyDescriptor> static final int
static final int
protected List<PlotProperties>
protected String
protected org.jfree.chart.entity.ChartEntity
protected boolean
protected Color
protected float
static final int
static final int
protected HashMap<String,
AxisConfig> protected HashMap<String,
AxisConfig> Fields inherited from class com.inductiveautomation.factorypmi.application.components.chart.PMILineChartPanel
antialias, gridlineColor, gridlineDashPattern, gridlineStroke, gridlineWidth, legend, mode, MODE_MARK, MODE_PAN, MODE_XTRACE, MODE_ZOOM, panLine, panLineStroke, panStartPoint, plotBackground, propertiesLoading, selectedXValue, selectedXValueListener, title, titleFont, tooltips
Fields inherited from class com.inductiveautomation.factorypmi.application.components.chart.PMIChartPanel
context, cursorCode, extensionFunctions, print, properties, save, showPopup, zoom
Fields inherited from class org.jfree.chart.ChartPanel
DEFAULT_BUFFER_USED, DEFAULT_HEIGHT, DEFAULT_MAXIMUM_DRAW_HEIGHT, DEFAULT_MAXIMUM_DRAW_WIDTH, DEFAULT_MINIMUM_DRAW_HEIGHT, DEFAULT_MINIMUM_DRAW_WIDTH, DEFAULT_WIDTH, DEFAULT_ZOOM_TRIGGER_DISTANCE, localizationResources, PRINT_COMMAND, PROPERTIES_COMMAND, SAVE_COMMAND, ZOOM_IN_BOTH_COMMAND, ZOOM_IN_DOMAIN_COMMAND, ZOOM_IN_RANGE_COMMAND, ZOOM_OUT_BOTH_COMMAND, ZOOM_OUT_DOMAIN_COMMAND, ZOOM_OUT_RANGE_COMMAND, ZOOM_RESET_BOTH_COMMAND, ZOOM_RESET_DOMAIN_COMMAND, ZOOM_RESET_RANGE_COMMAND
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.ComponentLifecycle
COMPONENT_RUNNING
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Fields inherited from interface com.inductiveautomation.ignition.client.model.LocaleListener
LOCAL_CHANGE_EVENT
Fields inherited from interface com.inductiveautomation.vision.api.client.binding.MutableDynamicPropertyProvider
RESERVED_SET_KEY
Fields inherited from interface java.awt.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.VisionComponent
COMPONENT_LOCKED, COMPONENT_PERMISSIONS, COMPONENT_SECURITY, COMPONENT_TRANSLATIONS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
protected org.jfree.chart.JFreeChart
entityToString
(org.jfree.chart.entity.ChartEntity entity) int
int
int
protected AutoAnnotateXYPlot[]
getPlots()
getPropertyValue
(String name) protected org.jfree.chart.entity.ChartEntity
float
int
getXAxes()
getYAxes()
void
boolean
isPropertyDefined
(String name) boolean
void
localeChanged
(Locale newLocale) protected void
Subclasses should override this to provide startup logic.void
paintComponent
(Graphics graphics) void
refreshChart
(int subplotIndex, int index) Refreshes the dataset (calls XYNumericDataSet.fireChange()) for the specified subplot and dataset.void
refreshChart
(String dataSetName) Refreshes the dataset named.void
setChartType
(int i) void
setDatasetEnabled
(String dataSetName, boolean vis) Sets a dataset to be enabled or not (drawn vs.void
setDatasetPlotNumber
(String dataSetName, int plotNumber) Sets a dataset's plot numbervoid
setDatasetXAxis
(String dataSetName, String axisName) Sets a dataset's X axis namevoid
setDatasetYAxis
(String dataSetName, String axisName) Sets a dataset's Y axis namevoid
void
void
setExtractOrder
(int extractOrder) void
void
setOrientation
(int i) void
setPlotProperties
(List<PlotProperties> list) void
setPropertyValue
(String name, Object value) Sets a named dataset's valuevoid
setSelectedData
(String selectedData) protected void
setSelectedEntity
(org.jfree.chart.entity.ChartEntity selectedEntity) void
setSelectionEnabled
(boolean selectionEnabled) void
setSelectionHighlightColor
(Color selectionHighlightColor) void
setSelectionHighlightWidth
(float selectionHighlightWidth) void
setSeriesEnabled
(String dataSetName, String seriesName, boolean vis) void
setSubplotMode
(int i) void
setXAxes
(HashMap<String, AxisConfig> map) void
setYAxes
(HashMap<String, AxisConfig> map) Methods inherited from class com.inductiveautomation.factorypmi.application.components.chart.PMILineChartPanel
_setSelectedXValue, actionPerformed, createChart, createEmptyChart, createPopupMenu, createTitle, doSaveAs, getGridlineColor, getGridlineDashPattern, getGridlineStroke, getGridlineWidth, getPlotBackground, getPNGBytes, getPointInRectangle, getPropertiesLoading, getSelectedXValue, getTitle, getTitleFont, getXTraceTrackMouse, isLegend, isOpaque, isTooltips, mouseDragged, mouseMoved, mousePressed, mouseReleased, print, redrawAtEventPoint, resetAxes, respectDomainRangeOnPan, restoreAutoBounds, saveAsImage, saveAsImage, setAutoAnnotationMode, setBackground, setBounds, setFont, setForeground, setGridlineColor, setGridlineDashPattern, setGridlineWidth, setLegend, setMode, setPlotBackground, setPropertiesLoading, setSelectedXValue, setTitle, setTitleFont, setTooltips, setXTraceTrackMouse
Methods inherited from class com.inductiveautomation.factorypmi.application.components.chart.PMIChartPanel
createChartPrintJob, displayPopupMenu, getAppContext, getCursorCode, getDataQuality, getExtensionFunctions, getQuality, getScientificNumberFormat, getToolTipText, getToolTipText, isAntialias, isShowPopup, onShutdown, paintChildren, print, setAntialias, setCursorCode, setDataQuality, setQuality, setShowPopup, setVisible, shutdownComponent, startupComponent, translate, translateTerm, updateQuality
Methods inherited from class org.jfree.chart.ChartPanel
addChartMouseListener, chartChanged, chartProgress, doEditChartProperties, getAnchor, getChart, getChartRenderingInfo, getDefaultDirectoryForSaveAs, getDismissDelay, getEntityForPoint, getFillZoomRectangle, getHorizontalAxisTrace, getHorizontalTraceLine, getInitialDelay, getListeners, getMaximumDrawHeight, getMaximumDrawWidth, getMinimumDrawHeight, getMinimumDrawWidth, getPopupMenu, getRefreshBuffer, getReshowDelay, getScaleX, getScaleY, getScreenDataArea, getScreenDataArea, getVerticalAxisTrace, getVerticalTraceLine, getZoomAroundAnchor, getZoomInFactor, getZoomOutFactor, getZoomTriggerDistance, isDomainZoomable, isEnforceFileExtensions, isRangeZoomable, mouseClicked, mouseEntered, mouseExited, removeChartMouseListener, restoreAutoDomainBounds, restoreAutoRangeBounds, scale, setAnchor, setChart, setDefaultDirectoryForSaveAs, setDismissDelay, setDisplayToolTips, setDomainZoomable, setEnforceFileExtensions, setFillZoomRectangle, setHorizontalAxisTrace, setHorizontalTraceLine, setInitialDelay, setMaximumDrawHeight, setMaximumDrawWidth, setMinimumDrawHeight, setMinimumDrawWidth, setMouseZoomable, setMouseZoomable, setPopupMenu, setRangeZoomable, setRefreshBuffer, setReshowDelay, setVerticalAxisTrace, setVerticalTraceLine, setZoomAroundAnchor, setZoomInFactor, setZoomOutFactor, setZoomTriggerDistance, translateJava2DToScreen, translateScreenToJava2D, updateUI, zoom, zoomInBoth, zoomInDomain, zoomInRange, zoomOutBoth, zoomOutDomain, zoomOutRange
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.inductiveautomation.vision.api.client.components.model.ComponentLifecycle
getAppContext, shutdownComponent, startupComponent
Methods inherited from interface com.inductiveautomation.vision.api.client.components.model.ExtensibleComponent
getExtensionFunctions
-
Field Details
-
DEFAULT_X_AXIS_NAME
- See Also:
-
DEFAULT_Y_AXIS_NAME
- See Also:
-
CHART_CATEGORY
public static final int CHART_CATEGORY- See Also:
-
CHART_XY
public static final int CHART_XY- See Also:
-
ORIENTATION_HORIZONTAL
public static final int ORIENTATION_HORIZONTAL- See Also:
-
ORIENTATION_VERTICAL
public static final int ORIENTATION_VERTICAL- See Also:
-
SHARED_DOMAIN
public static final int SHARED_DOMAIN- See Also:
-
SHARED_RANGE
public static final int SHARED_RANGE- See Also:
-
dynamicProps
-
xAxes
-
yAxes
-
plotProperties
-
selectionHighlightColor
-
selectionHighlightWidth
protected float selectionHighlightWidth -
selectedEntity
protected org.jfree.chart.entity.ChartEntity selectedEntity -
selectionEnabled
protected boolean selectionEnabled -
selectedData
-
-
Constructor Details
-
PMIChart
public PMIChart()
-
-
Method Details
-
getSelectionHighlightColor
-
setSelectionHighlightColor
-
getSelectionHighlightWidth
public float getSelectionHighlightWidth() -
setSelectionHighlightWidth
public void setSelectionHighlightWidth(float selectionHighlightWidth) -
getSelectedEntity
protected org.jfree.chart.entity.ChartEntity getSelectedEntity() -
setSelectedEntity
protected void setSelectedEntity(org.jfree.chart.entity.ChartEntity selectedEntity) -
clearSelection
public void clearSelection() -
isSelectionEnabled
public boolean isSelectionEnabled() -
setSelectionEnabled
public void setSelectionEnabled(boolean selectionEnabled) -
getSelectedData
-
setSelectedData
-
localeChanged
- Specified by:
localeChanged
in interfaceLocaleListener
- Overrides:
localeChanged
in classPMIChartPanel
-
entityToString
-
paintComponent
- Overrides:
paintComponent
in classPMILineChartPanel
-
setName
- Overrides:
setName
in classPMIChartPanel
-
initialize
public void initialize()- Specified by:
initialize
in interfaceDesignerInitializable
-
setExtensionFunctions
- Specified by:
setExtensionFunctions
in interfaceExtensibleComponent
- Overrides:
setExtensionFunctions
in classPMIChartPanel
-
createChartImpl
protected org.jfree.chart.JFreeChart createChartImpl()- Specified by:
createChartImpl
in classPMILineChartPanel
-
onStartup
protected void onStartup()Description copied from class:PMIChartPanel
Subclasses should override this to provide startup logic.- Overrides:
onStartup
in classPMIChartPanel
-
getPlots
- Specified by:
getPlots
in classPMILineChartPanel
-
refreshChart
Refreshes the dataset named. Takes care of the subplot numbering, etc.- Parameters:
dataSetName
- The name of the dataset whose data needs refreshing (redrawing)
-
refreshChart
public void refreshChart(int subplotIndex, int index) Refreshes the dataset (calls XYNumericDataSet.fireChange()) for the specified subplot and dataset.- Parameters:
subplotIndex
- The index of the subplot, if applicable. ONE INDEXED.index
- The index of the dataset. Mandatory. ZERO INDEXED.
-
setSeriesEnabled
-
setDatasetEnabled
Sets a dataset to be enabled or not (drawn vs. not drawn) Affects all series of the dataset. -
setDatasetPlotNumber
Sets a dataset's plot number- Throws:
Exception
-
setDatasetYAxis
Sets a dataset's Y axis name- Throws:
Exception
-
setDatasetXAxis
Sets a dataset's X axis name- Throws:
Exception
-
getChartType
public int getChartType() -
setChartType
public void setChartType(int i) -
setPropertyValue
Sets a named dataset's value- Specified by:
setPropertyValue
in interfaceDynamicPropertyProvider
- Throws:
ClassCastException
-
isPropertyDefined
- Specified by:
isPropertyDefined
in interfaceDynamicPropertyProvider
-
getProperties
- Specified by:
getProperties
in interfaceDynamicPropertyProvider
-
getPropertyValue
- Specified by:
getPropertyValue
in interfaceDynamicPropertyProvider
-
getDynamicProps
- Specified by:
getDynamicProps
in interfaceMutableDynamicPropertyProvider
-
getOrientation
public int getOrientation() -
getXAxes
-
getYAxes
-
setDynamicProps
- Specified by:
setDynamicProps
in interfaceMutableDynamicPropertyProvider
-
setOrientation
public void setOrientation(int i) -
setXAxes
-
setYAxes
-
getSubplotMode
public int getSubplotMode() -
setSubplotMode
public void setSubplotMode(int i) -
getPlotProperties
-
setPlotProperties
-
getExtractOrder
public int getExtractOrder() -
setExtractOrder
public void setExtractOrder(int extractOrder)
-