Show/Hide Toolbars

RiverSoftAVG Products Help

The TRSGraphChart component is a RSCharts.TRSShapeChart descendant that provides a visual representation of a graph or network with nodes and links between them, similar to a flow chart or org chart. The Graph Chart connects chart values ( RSGraphCharts.TRSGraphChartValue ) by drawing an arrow representing the link ( RSGraphCharts.TRSGraphChartLink ) between the shapes.

A lot of graph charts, such as org charts and flow charts, are not just scattered about the chart surface. There is a definite organization, e.g., things flow from a top to a bottom (or a left to a right) and many nodes are considered equivalent so they are placed at the same level as other nodes. Each TRSGraphChartValue has a Level property, which is an integer property from 0 to whatever specifying the level of a node. This Level property is used by the Arrange method to divide the chart canvas into a big grid, where each cell in the grid can contain one chart value. One axis of this virtual grid will be the Levels in the chart. The other axis will be all the nodes/values at that level.

GraphChartExample

Namespace: RSGraphCharts

 (Inherited from RSChartPanel.TRSCustomChart.)

public method

Draw(TCanvas,TCanvasRect,TRSChartAxis,TRSChartAxis,Boolean,Boolean)

Overloaded.  Paints the chart to the specified Canvas in the specified location. The Draw Method uses the supplied TRSChartAxis (instead of the     HorizontalAxis and     VerticalAxis properties) to convert the chart values into pixel coordinates.

Unlike the regular Draw method, this method draws the axes as well (useful for when the chart is not connected to a panel).

Use the Draw method to paint the chart to any canvas and anywhere and with any size on the canvas.

protected method

DrawArea(TCanvas,TRS2DChartValue,TCanvasRect,TCanvasPixel,TCanvasPixel,Boolean)

Draws the area under the line for that line segment (Inherited from RSCharts.TRSCustomLineChart.)

public method

DrawAxes(TCanvas,TCanvasRect,TRSChartAxis,TRSChartAxis)

Draws the specified axes to the Canvas (Inherited from RSChartPanel.TRSCustomChart.)

public method

DrawGlyph(TCanvas,TCanvasRect)

Overloaded. Represents method DrawGlyph(TCanvas,TCanvasRect). (Inherited from RSChartPanel.TRSCustomChart.)

public method

DrawGlyph(TCanvas,TRSChartValue,TCanvasRect)

Represents method DrawGlyph(TCanvas,TRSChartValue,TCanvasRect). (Overrides RSCharts.TRSCustomPointChart.DrawGlyph(TCanvas,TRSChartValue,TCanvasRect).)

protected method

Drawing(TCanvas,TCanvasRect)

Calls the OnDrawing event and returns True if the draw process should continue.

This method is called before the InternalDraw method.

public method

DrawLabel(TCanvas,String,TCanvasPixel,TCanvasPixel,Single)

Overloaded. Draws the text caption centered above the X, Y point without clipping.

noteNote

The Opacity is ignored in VCL

public method

DrawLabel(TCanvas,String,TCanvasRect,Single)

Overloaded. Draws the text caption centered within the rectangle. The text is clipped

noteNote

The Opacity is ignored in VCL

public method

DrawLabel(TCanvas,TRSChartValue,TCanvasPixel,TCanvasPixel)

Overloaded. Draws the text caption centered above the X, Y point without clipping.

noteNote

The Opacity is specified by the RSChartPanel.TRSChartValue.Opacity property

public method

DrawLabel(TCanvas,TRSChartValue,TCanvasRect)

Draws a label for the TRSChartValue on the canvas. The text of the label is controlled by the ValueLabelStyle property.

The label is drawn within the specified rectangle.

noteNote

The Opacity is specified by the RSChartPanel.TRSChartValue.Opacity property

protected method

DrawLine(TCanvas,TCanvasRect,Boolean)

Overloaded. Draws the entire line for the chart. The method calls other methods depending on the LineStyle. (Inherited from RSCharts.TRSCustomLineChart.)

protected method

DrawLine(TCanvas,TRS2DChartValue,TCanvasRect,TCanvasPixel,TCanvasPixel,Boolean)

Overloaded. Draws the line for the line segment (from last point value to this point value) (Inherited from RSCharts.TRSCustomLineChart.)

protected method

DrawLink(TCanvas,TCanvasRect,TRSGraphChartValue,TRSGraphChartLink)

Draw one link

protected method

DrawLinks(TCanvas,TCanvasRect,TRSGraphChartValue)

Draw all the links from the input TRSGraphChartValue to other nodes

protected method

Drawn(TCanvas,TCanvasRect)

Calls the OnDraw event.

This method is called after the InternalDraw method.

protected method

DrawPoint(TCanvas,TCanvasRect,TRSPointChartValue)

Draws one point at the specified rectangle (Inherited from RSCharts.TRSCustomPointChart.)

protected method

DrawShape(TCanvas,TCanvasRect,TRSShapeChartValue)

Draws one shape at the specified rectangle (Overrides RSCharts.TRSCustomShapeChart.DrawShape(TCanvas,TCanvasRect,TRSShapeChartValue).)

protected method

DrawSmoothline(TCanvas,TCanvasRect,Boolean)

Draws the smooth line for the entire values collection (i.e., the LineStyle is lsCurveInterpolation or lsCurveApproximation). If the LineStyle is lsCurveInterpolation, it uses the DrawSmoothSegment method for each segment of the line. (Inherited from RSCharts.TRSCustomLineChart.)

protected method

DrawSmoothSegment(TCanvas,TRS2DChartValue,TCanvasPoint,TCanvasPoints,Boolean)

Draws a smooth line segment using the SegmentPoints. The Line is assumed to touch all the segment points (i.e., the LineStyle is lsCurveInterpolation) (Inherited from RSCharts.TRSCustomLineChart.)

public method

EndUpdate

Re-enables screen repainting and change events. Use EndUpdate to re-enable screen repainting and change events that were turned off with the BeginUpdate method. (Inherited from RSChartPanel.TRSCustomChart.)

public method

FormatValue(TRSChartValue,TRSLabelTextStyle)

Generates a label for the Value based on the TextStyle (Inherited from RSChartPanel.TRSCustomChart.)

public method

GetAdjOffsetVertical

Returns the vertical offset (     OffsetVertical).

If coUseVerticalOffset is not in     Options, this method always returns 0. If coUseVerticalOffset is in Options, the function returns the OffsetVertical value.

public method

GetAxisCaption(TRSChartAxis,Integer,TRSChartValueType)

Returns a label for an axis ( RSChartPanel.TRSChartAxis ) based on the input Value. The Index specifies where to start looking in the chart Values (for optimization purposes) and decrements from there until the closest chart value is found. (Inherited from RSChartPanel.TRSCustomChart.)

public methodClass member

GetChartType

Returns the chart type enumerated value for this class. Each chart class overrides this class function to return the RSChartConsts|TRSChartType enumerated value (Overrides RSCharts.TRSCustomShapeChart.GetChartType.)

protected method

GetColor

Represents method GetColor. (Overrides RSChartPanel.TRSCustomChart.GetColor.)

public method

GetColor(TRSChartValue)

Overloaded. Returns the color of the chart value. The color of the TRSChartValue can change depending on the   Options property as well as any other chart states (e.g., the TRSCandleStickChart class overrides this method to turn the color red or green depending on if the Open value is greater than the Closing Value) (Inherited from RSChartPanel.TRSCustomChart.)

public method

GetCumulativeTotal(Integer,Integer,TRSCustomChartClass)

Determine the cumulative value at this index for all charts in the Group. The ValIndex specifies the     TRSChartValue.Values dimension to compare.

Used for stacking charts.

public method

GetCumulativeValue(Integer,Integer,TRSCustomChartClass)

Determine the cumulative value at this index for all charts below (spatially) this chart in the same     Group. The ValIndex specifies the     TRSChartValue.Values dimension to compare.

Used for stacking charts.

protected method

GetGroupDimension

Represents method GetGroupDimension. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

GetPoints(TCanvasPoint,TCanvasPoint,TCanvasRect)

Returns an array of points from StartPoint to EndPoint based on the   LineStyle and   LineChartElements (Inherited from RSCharts.TRSCustomLineChart.)

protected method

GetShapeRect(TCanvasRect,TRSShapeChartValue)

Represents method GetShapeRect(TCanvasRect,TRSShapeChartValue). (Inherited from RSCharts.TRSCustomShapeChart.)

public method

GetValueColor

Returns a new chart color based on the   ChartColorScheme and   ChartColorList. Every time a chart is created, it is assigned a new color from the current ChartColorList. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

InitializeChangeEvents

Initialize the OnChange events of structures. Use this method to assign event handlers for structures (e.g., Pen.OnChange := MyChangeMethod).

alert_noteNotes to Inheritors

The constructor calls this method after it calls the InitializeChart method, which is where the structures should be actually created and initialized.

protected method

InitializeChart

Creates and initialize structures and values of chart. This method is the safe place to initialize chart values without change events occurring.

alert_noteNotes to Inheritors

The constructor calls this method. Use this method to actually create and initialize properties. Do not assign event properties in this method (use the InitializeChangeEvents method instead)

protected method

InternalDraw(TCanvas,TCanvasRect)

Overloaded.  Paints the chart graphic to the specified canvas at the specified rectangle. The InternalDraw method is called by the     Draw method.

Descendant classes of TRSCustomChart override the InternalDraw method to actually paint themselves.

alert_noteNotes to Inheritors

The default InternalDraw method implementation assigns the     Brush, Pen , and Font to the Canvas.

protected method

InternalSelect(TCanvasRect,TRSChartSelectionAction)

Selects or deselects chart Values ( RSChartPanel.TRSChartValue ) based on whether they intersect with the selection rectangle (which is in pixel coordinates).

The base method converts the SelectionRect to chart coordinates (based on     HorizontalAxis and     VerticalAxis) and then selects values based on the TRSChartValue.Selectable method

public method

IsSelectable(TCanvasRect)

Returns True if any value in the chart intersects with the SelectionRect (Inherited from RSChartPanel.TRSCustomChart.)

protected method

IsValuesStored

Represents method IsValuesStored. (Inherited from RSChartPanel.TRSCustomChart.)

public method

IsVisible

Indicates whether the chart is visible. A chart is visible if its Visible property is True and both axes have been assigned. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

LevelChanged(TRSGraphChartValue)

Represents method LevelChanged(TRSGraphChartValue).

protected method

LinksNotify(TRSGraphChartLink,TCollectionNotification)

Represents method LinksNotify(TRSGraphChartLink,TCollectionNotification).

protected method

LinksUpdate(TRSGraphChartLink)

Represents method LinksUpdate(TRSGraphChartLink).

protected method

Loaded

Represents method Loaded. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

MouseHover(TCanvasRect)

Represents method MouseHover(TCanvasRect). (Inherited from RSChartPanel.TRSCustomChart.)

protected method

Notification(TComponent,TOperation)

Represents method Notification(TComponent,TOperation). (Overrides RSChartPanel.TRSCustomChart.Notification(TComponent,TOperation).)

protected method

OrientationChanged

Represents method OrientationChanged.

protected method

Paint

Represents method Paint. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

PanelChanged

Represents method PanelChanged. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

RSVisibleChanged

Represents method RSVisibleChanged. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

SaveCanvasResources(TCanvas,TBrush,TRSPen,TFont)

Represents method SaveCanvasResources(TCanvas,TBrush,TRSPen,TFont). (Inherited from RSChartPanel.TRSCustomChart.)

public method

Select(TCanvasRect,TRSChartSelectionAction)

Selects or deselects chart Values ( RSChartPanel.TRSChartValue ) based on whether they intersect with the selection rectangle (which is in pixel coordinates).

The base method converts the SelectionRect to chart coordinates (based on     HorizontalAxis and     VerticalAxis) and then selects values based on the TRSChartValue.Selectable method

alert_noteNotes to Inheritors

Descendant classes override the InternalSelect method

protected method

SelectionColorChanged

Represents method SelectionColorChanged. (Inherited from RSChartPanel.TRSCustomChart.)

protected method

SenderChanged(TObject)

Overloaded. Represents method SenderChanged(TObject). (Inherited from RSChartPanel.TRSCustomChart.)

protected method

SetCanvasResources(TCanvas,TBrush,TRSPen,TFont,Boolean,Boolean)

Overloaded. Represents method SetCanvasResources(TCanvas,TBrush,TRSPen,TFont,Boolean,Boolean). (Inherited from RSChartPanel.TRSCustomChart.)

protected method

SetCanvasResources(TCanvas,TRSChartValue,Boolean,Boolean)

Represents method SetCanvasResources(TCanvas,TRSChartValue,Boolean,Boolean). (Overrides RSCharts.TRSCustomPointChart.SetCanvasResources(TCanvas,TRSChartValue,Boolean,Boolean).)

protected method

SetColor(TCanvasColor)

Represents method SetColor(TCanvasColor). (Overrides RSChartPanel.TRSCustomChart.SetColor(TCanvasColor).)

protected method

SetOptions(TChartOptions)

Represents method SetOptions(TChartOptions). (Overrides RSChartPanel.TRSCustomChart.SetOptions(TChartOptions).)

protected method

UpdateAxisInfo(TRSChartAxis)

Represents method UpdateAxisInfo(TRSChartAxis). (Overrides RSChartPanel.TRSCustomChart.UpdateAxisInfo(TRSChartAxis).)

protected method

UpdateColorScheme

Updates the values to the current color scheme. If PanelColorScheme is True then uses the Panel's color scheme (Inherited from RSChartPanel.TRSCustomChart.)

protected method

ValueNotify(TRSChartValue,TCollectionNotification)

Represents method ValueNotify(TRSChartValue,TCollectionNotification). (Inherited from RSCharts.TRSCustomShapeChart.)

protected method

ValueSelectionChanged(TRSChartValue)

Represents method ValueSelectionChanged(TRSChartValue). (Inherited from RSChartPanel.TRSCustomChart.)

protected method

ValueVisibleChanged(TRSChartValue)

Represents method ValueVisibleChanged(TRSChartValue). (Inherited from RSChartPanel.TRSCustomChart.)

protected method

WantsCaptions(TRSChartAxis)

Returns true if the chart prefers Captions over Values for its labels on the input Axis. This method provides a hint to the TRSChartAxis when LabelStyle is alsAutomatic. (Inherited from RSChartPanel.TRSCustomChart.)

Top

To add a node to the chart (at Design-Time):

Select the TRSGraphChart component
 

Click the ellipsis button (...) for the Values property of the chart. This action displays Delphi's Collection Editor for the TRSGraphChartValues collection.

Use the Add button to add nodes (TRSGraphChartValue collection item) to the chart.
 

Edit the properties for the node

After you have added nodes, you can add links between the nodes
 

To add a node to the chart (at Run-Time):

Delphi

var
    StartUp, Research, Manufacturing, Purchases,
    Marketing, Development: TRSGraphChartValue;
 begin
      RSGraphChart1.Values.BeginUpdate;
      try
         Startup := RSGraphChart1.Values.Add(0, 'Startup');
         Startup.Level := 0;
         Research := Startup.AddChild('Research');
         Development := Startup.AddChild('Development');
         Development.Level := 2;
         Research.Links.Add.Value := Development;
         Manufacturing := Development.AddChild('Manufacturing');
         Marketing := Development.AddChild('Marketing');
         Development.AddChild('Testing');
         Purchases := Manufacturing.AddChild('Purchases');
         Marketing.Links.Add.Value := Purchases;
         RSGraphChart1.Arrange;
      finally
         RSGraphChart1.Values.EndUpdate;
      end;
 end;

RiverSoftAVG Products Help © 1996-2016 Thomas G. Grubb