Difference between revisions of "Comparing TAChart with Delphi's TeeChart Standard"

From Lazarus wiki
Jump to navigationJump to search
m (→‎Properties: Add xref to TChartSeriesMarks and TChartSeriesPointer)
(→‎Properties: AllowPanning)
(47 intermediate revisions by 4 users not shown)
Line 3: Line 3:
 
and TeeChart Standard package which comes with Delphi XE2.
 
and TeeChart Standard package which comes with Delphi XE2.
  
It can be used as a guide when porting applications from Delphi, as well as a source of inspiration for future TAChart development.  
+
It can be used as a guide when porting applications from Delphi, as well as a source of inspiration for future TAChart development.
  
== TeeChart's TChart ==
+
See also [[TAChart_documentation#TeeChart_compatibility]].
 +
 
 +
A note on the structure of this document: Because it is intended to help porting applications from TeeChart to TAChart the basis of this comparison will be TeeChart. We will list the TeeChart methods and properties, give a short description based on the help file or own experiments and experience, and discuss the differences to TAChart and how they can be resolved. If a feature is not available in TAChart we will often use short statements like "not available" without giving reference to TAChart.
  
=== Public methods ===
+
== Shared TeeChart classes ==
 +
In this section, we compare classes used by TeeChart at several places in various other classes.
  
to be written ...
+
==== TChartPen ====
 +
[[file:TeeChart_TChartPen_properties.png‎|right]]
 +
In addition to <code>TChartPen</code>, TeeChart uses also descendants with slightly different default settings, like
 +
* <code>TAxisGridPen</code> with <code>Color = clGray</code> and a new properties <code>DrawEvery</code> and <code>ZPosition</code>
 +
* <code>TChartAxisPen</code> with <code>Width = 2</code>
 +
* <code>TChartHiddenPen</code> with <code>Visible = false</code>
 +
* <code>TWhitePen</code> with <code>Color = clWhite</code>
  
=== Properties ===
+
Here are the properties of <code>TChartPen</code>:
 +
* <code>Color</code>: Like TAChart
 +
* <code>EndStyle</code>: Like TAChart's <code>EndCap</code>
 +
* <code>Mode</code>: Like TAChart
 +
* <code>SmallDots</code>: Overrides <code>Style</code> for drawing a dotted line with narrow dots at a distance given by <code>SmallSpace</code>.
 +
* <code>Style</code>: Like TAChart
 +
* <code>Visible</code>: Not availabe in TAChart, <code>Visible=false</code> can be replaced by <code>Style = clClear</code>.
 +
* <code>Width</code>: Like TAChart
  
[[file:TeeChart_object_explorer_1.png|right]]
+
==== TTeeFont ====
* <code>Align</code>: Standard VCL/LCL property.
+
[[file:TeeChart_TTeeFont_properties.png|right]]
  
* <code>AlignWithMargins</code>: VCL property, missing in LCL
+
* <code>Charset</code>: Standard TFont property
 +
* <code>Color</code>: Standard TFont property
 +
* <code>Depth</code>: ???, not available in TAChart.
 +
* <code>Emboss</code>: Upward-directed shadow, see [[#TTeeEmboss|<code>TTeeEmboss</code>]]. Not available.
 +
* <code>Gradient</code>: Draws characters with gradient, see [[#TTeeGradient|<code>TTeeGradient</code>]]. No gradient support in TAChart.
 +
* <code>Height</code>: Standard TFont property.
 +
* <code>InterCharSize: Integer</code>: Defines the width of the character-to-character spacing. Not available.
 +
* <code>Name</code>: Standard TFont property.
 +
* <code>Orientation</code>: Standard TFont property.
 +
* <code>Outline</code>: [[#TChartPen|Pen]] used to draw a border around font. To be used with big font sizes (for example 30). Not supported.
 +
* <code>Picture</code>: Defines a picture to be filled into the font region. Not supported.
 +
* <code>Pitch</code>: Standard TFont property.
 +
* <code>Quality</code>: Standard TFont property.
 +
* <code>Shadow</code>: Shadow drawn underneath the characters. See [[#TTeeShadow|<code>TTeeShadow</code>]]. Not supported.
 +
* <code>Size</code>: Standard TFont property.
 +
* <code>Style</code>: Standard TFont property.
  
* <code>AllowPanning</code>: turns on/off built-in panning support. Not available in TAChart, but effect can be achieved by linking a TChartToolset to the chart.
+
==== TTeeGradient ====
 +
[[file:TeeChart_TTeeGradient_properties.png|right]]
 +
TAChart does not support gradients at the time of this writing. Here is a reference of the properties that are published for TeeChart:
 +
* <code>Angle</code>: Rotation angle of gradient, in degrees.
 +
* <code>Balance</code>: Determines the preference of use between gradient start and end colors.
 +
* <code>Direction = (gdTopBottom, gdBottomTop, gdLeftRight, gdRightLeft, gdFromCenter, gdFromTopLeft, gdFromBottomLeft, gdRadial, gdDiagonalUp, gdDiagonalDown)</code>: Gradient direction and type.
 +
* <code>EndColor, MidColor, StartColor</code>: The gradient fill depends three colors: <code>StartColor</code>, <code>MidColor</code> and <code>EndColor</code>. For a 2-color gradient, set <code>MidColor=clNone</code>. <code>MidColor</code> seems to be ignored for non-rectangular gradients.
 +
* <code>RadialX, RadialY</code>: Offset in pixels to displace the gradient radial center.
 +
* <code>SubGradient</code>: Applies a secondary (superimposed) gradient to the gradient area. Has the same properties as <code>TTeeGradient</code> except for another <code>SubGradient</code>.
 +
* <code>Visible</code>: Turns gradient on/off.
  
* <code>Anchors</code>: standard VCL/LCL property.
+
==== TTeeShadow and TTeeEmboss ====
 +
[[file:TeeChart_TTeeShadow_properties.png|right]]
 +
TTeeShadow and TTeeEmboss have the same properties. The shadow of TTeeShadow points down-right, that of TTeeEmboss up-left.
  
* <code>Animations</code>: don't know, a click on the ellipsis button opens the series editor, maybe a feature of TeeChart Professional. Property missing in TAChart.
+
TAChart does not support shadows. Here is a reference of the published properties of TeeChart:
 +
* <code>Clip</code>: Don't know what the clipping boundary is...
 +
* <code>Color</code>: Shadow color
 +
* <code>HorizSize, VertSize</code>: Shadow size in horizontal and vertical directions.
 +
* <code>Smooth, SmoothBlur</code>: Activates/deactivates a soft shadow
 +
* <code>Transparency</code>: Percentage of how transparent the shadow is.
 +
* <code>Visible</code>: Turns shadow on and off.
  
* <code>AutoSize</code>: VCL/LCL property of some classes, don't know its effect on the chart, no entry in help file. Not used in TAChart.
+
== TeeChart's TChart ==
  
* <code>AxisBehind: Boolean</code>, default <code>true</code>: in 3D view, draws axis in the back wall, behind the series. If false, axes are drawn at the front wall, before the series. Property missing in TAChart, but effect can be achieved by TChartAxis.ZPosition.
+
=== Public methods ===
  
* <code>AxisVisible: Boolean</code>, default <code>true</code>: turns on/off axis title, marks, ticks, and grid of all axes. The same as with TAChart.
+
to be written ...
  
 +
=== Properties ===
 +
[[file:TeeChart_object_explorer_1.png|right]]
 +
* <code>Align</code>: Standard VCL/LCL property.
 +
* <code>AlignWithMargins</code>: VCL property, missing in LCL
 +
* <code>AllowPanning</code>: Controls built-in panning support (panning directions, turn panning off). TAChart has an equally-named property which only turns built-in panning on/off; further panning control is possible by linking a TChartToolset to the chart.
 +
* <code>Anchors</code>: Standard VCL/LCL property.
 +
* <code>Animations</code>: Don't know, a click on the ellipsis button opens the series editor, maybe a feature of TeeChart Professional. Property missing in TAChart.
 +
* <code>AutoSize</code>: VCL/LCL property of some classes, don't know its effect on the chart, no entry in help file. Not used in TAChart.
 +
* <code>AxisBehind: Boolean</code>, default <code>true</code>: In 3D view, draws axis in the back wall, behind the series. If false, axes are drawn at the front wall, before the series. Property missing in TAChart, but effect can be achieved by TChartAxis.ZPosition.
 +
* <code>AxisVisible: Boolean</code>, default <code>true</code>: Turns on/off axis title, marks, ticks, and grid of all axes. The same as with TAChart.
 
* <code>BackImage</code>: Allows to add a background image (see also other "BackImage*" properties). No image support in TAChart.
 
* <code>BackImage</code>: Allows to add a background image (see also other "BackImage*" properties). No image support in TAChart.
 
+
* <code>BackImageInside: Boolean</code>, default <code>false</code>: If <code>true</code> the <code>BackImage</code> is drawn in the rectangle defined by the axes or frame, otherwise it is a background image of the entire chart. No image support in TAChart.
* <code>BackImageInside: Boolean</code>, default <code>false</code>: if <code>true</code> the <code>BackImage</code> is drawn in the rectangle defined by the axes or frame, otherwise it is a background image of the entire chart. No image support in TAChart.
+
* <code>BackImageMode</code>: Defines the way the image is drawn/repeated on the background, options (pbmStretch, pbmTile, pbmCenter, pbmCustom). No image support in TAChart.
 
 
* <code>BackImageMode</code>: defines the way the image is drawn/repeated on the background, options (pbmStretch, pbmTile, pbmCenter, pbmCustom). No image support in TAChart.
 
 
 
 
* <code>BackImageTransp: Boolean</code>, default <code>false</code>: If true the transparency is that of a TBitmap, i.e., the transparent color is taken from the left-bottom pixel of the image. If <code>BackImage</code> is an icon, <code>BackImageTransp</code> is <code>true</code> and cannot be changed. No image support in TAChart.
 
* <code>BackImageTransp: Boolean</code>, default <code>false</code>: If true the transparency is that of a TBitmap, i.e., the transparent color is taken from the left-bottom pixel of the image. If <code>BackImage</code> is an icon, <code>BackImageTransp</code> is <code>true</code> and cannot be changed. No image support in TAChart.
 
+
* <code>BackWall</code>: See separate chapter on <code>TChartBackWall</code>. Missing in TAChart.
* <code>BackWall</code>: see separate chapter on <code>TChartBackWall</code>. Missing in TAChart.
 
 
 
 
* <code>BevelInner</code>, <code>BevelOuter</code>, <code>BevelWidth</code>: Bevel parameters like those of a <code>TPanel</code> -- TeeChart's TChart inherits from TCustomPanel. Missing in TAChart.
 
* <code>BevelInner</code>, <code>BevelOuter</code>, <code>BevelWidth</code>: Bevel parameters like those of a <code>TPanel</code> -- TeeChart's TChart inherits from TCustomPanel. Missing in TAChart.
 
+
* <code>Border</code>: A frame around the entire chart. See [[#TChartPen|<code>TChartPen</code>]], <code>Visible = false</code> by default. Not available.
* <code>Border</code>: see separate chapter on <code>TChartHiddenPen</code>, a frame around the entire chart. Missing in TAChart.
+
* <code>BorderRound</code>: If greater than 0 the <code>Border</code> is drawn as a <code>RoundRect</code> with this radius. Not available.
 
 
* <code>BorderRound</code>: if grater than 0 the <code>Border</code> is drawn as a RoundRect with that radius. Missing in TAChart.
 
 
 
 
* <code>BorderWidth</code>: Seems to have the same effect as the LCL's <code>BorderSpacing.Around</code>
 
* <code>BorderWidth</code>: Seems to have the same effect as the LCL's <code>BorderSpacing.Around</code>
 
 
* <code>BottomAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]].
 
* <code>BottomAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]].
 
 
* <code>BottomWall</code>: See separate chapter on <code>TChartBottomWall</code>. Missing in TAChart.
 
* <code>BottomWall</code>: See separate chapter on <code>TChartBottomWall</code>. Missing in TAChart.
 
 
* <code>Chart3DPercent</code>: Ratio between chart dimensions and chart depth <code>Chart.View3D</code> is true. Similar to TAChart's property <code>Depth</code> of chart and some series.
 
* <code>Chart3DPercent</code>: Ratio between chart dimensions and chart depth <code>Chart.View3D</code> is true. Similar to TAChart's property <code>Depth</code> of chart and some series.
 
+
* <code>ClipPoints: boolean</code>, default <code>true</code>:  Toggles the drawing of series points within chart boundaries, preventing other chart regions from being overwritten. Not available in TAChart, works as always <code>true</code>.
* <code>ClipPoints: boolean</code>, default <code>true</code>:  toggles the drawing of series points within chart boundaries, preventing other chart regions from being overwritten. Not available in TAChart, works as always <code>true</code>.
 
 
 
 
* <code>Color</code>: Background color of entire chart, the same as with TAChart.
 
* <code>Color</code>: Background color of entire chart, the same as with TAChart.
 
 
* <code>Constraints</code>: Standard VCL / LCL property.
 
* <code>Constraints</code>: Standard VCL / LCL property.
 
+
* <code>Cursor</code>: Standard VCL / LCL property.
* <code>Cursor</code>: standard VCL / LCL property.
+
* <code>CustomAxes</code>: List of axes. Similar to TAChart's <code>AxisList</code> which, however, contains also the default axes.
 
 
* <code>CustomAxes</code>: List of axes, like with TAChart, but seems to be without the default axes.
 
 
 
 
* <code>CustomHint</code>: ???, not available in TAChart
 
* <code>CustomHint</code>: ???, not available in TAChart
 
 
* <code>DepthAxis</code>: Characteristic of the bottom-right axis in 3D chart, see separate chapter on TChartDepthAxis. TAChart does not have a depth axis in 3D charts.
 
* <code>DepthAxis</code>: Characteristic of the bottom-right axis in 3D chart, see separate chapter on TChartDepthAxis. TAChart does not have a depth axis in 3D charts.
 
 
* <code>DepthTopAxis</code>: Characteristics of the left-top axis in 3D chart, see separate chapter on TChartDepthAxis. Missing in TAChart.
 
* <code>DepthTopAxis</code>: Characteristics of the left-top axis in 3D chart, see separate chapter on TChartDepthAxis. Missing in TAChart.
 
+
* <code>DockSite</code>: Enables Docking, not supported by LCL and TAChart.
* <code>DockSite</code>: enables Docking, not supported by LCL and TAChart.
 
 
 
 
* <code>DragCursor, DragMode</code>: Drag and Drop support, standard VCL/LCL property.
 
* <code>DragCursor, DragMode</code>: Drag and Drop support, standard VCL/LCL property.
 
+
* <code>Emboss</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeEmboss</code>]]. Some kind of upward shadow of entire chart background, not available.
* <code>Emboss</code>: some kind of upward shadow of entire chart background, not available.
 
 
 
 
* <code>Enabled</code>: Not in help file, at least, turns off zooming and panning.
 
* <code>Enabled</code>: Not in help file, at least, turns off zooming and panning.
 
 
* <code>Foot</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. Like in TAChart.
 
* <code>Foot</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. Like in TAChart.
 
+
* <code>Frame</code>: See [[#TChartPen|TChartPen]]. Like in TAChart.
* <code>Frame</code>: See separate chapter on TChartPen. Like in TAChart.
+
* <code>Gradient</code>: See [[#TTeeGradient|<code>TTeeGradient</code>]]. Draws a gradient behind the entire chart. No gradient support in TAChart.
 
 
* <code>Gradient</code>: See separate chapter in TTeeGradient. Draws a gradient behind the entire chart. No gradient support in TAChart.
 
 
 
 
* <code>Height</code>: Standard VCL/LCL property.
 
* <code>Height</code>: Standard VCL/LCL property.
 
 
* <code>HelpContext, HelpKeyword, HelpType</code>: Standard VCL property.
 
* <code>HelpContext, HelpKeyword, HelpType</code>: Standard VCL property.
 
[[file:TeeChart_object_explorer_2.png|right]]
 
 
 
* <code>Hint</code>: Standard VCL/LCL property.
 
* <code>Hint</code>: Standard VCL/LCL property.
 
 
* <code>Left</code>: Standard VCL/LCL property.
 
* <code>Left</code>: Standard VCL/LCL property.
 
 
* <code>LeftAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]].
 
* <code>LeftAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]].
 
 
* <code>LeftWall</code>: See separate chapter on <code>TChartLeftWall</code>, describes left wall of 3D charts. Missing in TAChart.
 
* <code>LeftWall</code>: See separate chapter on <code>TChartLeftWall</code>, describes left wall of 3D charts. Missing in TAChart.
 
 
* <code>Legend</code>: See [[#TeeChart's TChartLegend|<code>TChartLegend</code>]], describes legend parameters, like in TAChart.
 
* <code>Legend</code>: See [[#TeeChart's TChartLegend|<code>TChartLegend</code>]], describes legend parameters, like in TAChart.
 
+
* <code>LiveBindings</code>: New VCL properties introduced in Delphi XE2. Not supported by LCL and TAChart.
* <code>LiveBindings</code>: new VCL properties introduced in Delphi XE2. Not supported by LCL and TAChart.
 
 
 
 
* <code>Locked</code>: ???, missing in TAChart
 
* <code>Locked</code>: ???, missing in TAChart
 
 
* <code>MarginBottom, MarginLeft, MarginRight, MarginTop</code>: Margin between "Border" and Axis, corresponds to TAChart's <code>MarginExternal</code>.
 
* <code>MarginBottom, MarginLeft, MarginRight, MarginTop</code>: Margin between "Border" and Axis, corresponds to TAChart's <code>MarginExternal</code>.
 
+
* <code>MarginUnits = (muPercent, muPixels)</code>: According to the help file: "When MarginUnits is muPercent, chart margins are calculated as percentage of total chart width and height. Percent margins are useful to obtain the same margin proportions, no matter the chart size." TAChart supports margin only in pixels.
* <code>MarginUnits</code>: options <code>(muPercent, muPixels)</code>. According to the help file: "When MarginUnits is muPercent, chart margins are calculated as percentage of total chart width and height. Percent margins are useful to obtain the same margin proportions, no matter the chart size." TAChart supports margin only in pixels.
+
* <code>Margins</code>: Standard VCL property, in combination with <code>AlignWithMargins</code>. Like LCL's <code>BorderSpacing</code>.
 
+
* <code>Monochrome</code>: If <code>true</code>, turns off colors and renders chart in grayscale. Not supported.
* <code>Margins</code>: standard VLC property, in combination with <code>AlignWithMargins</code>. Like LCL's <code>BorderSpacing</code>.
+
* <code>Name</code>: Standard VCL/LCL property
 
+
* <code>Pages</code>: Accesses pages for a multi-page chart. Not supported.
* <code>Monochrome</code>: if <code>true</code>, turns off colors and renders chart in grayscale. Not supported.
+
* <code>Panning</code>: Properties for built-in panning support. Not available in TAChart, default panning by right mouse button, parameters, can be changed by means of chart tools.
 
+
* <code>ParentColor</code>: Standard VCL/LCL property.
* <code>Name</code>: standard VCL/LCL property
 
 
 
* <code>Pages</code>: accesses pages for a multi-page chart. Not supported.
 
 
 
* <code>Panning</code>: properties for built-in panning support. Not available in TAChart, default panning by right mouse button, parameters, can be changed by means of chart tools.
 
 
 
* <code>ParentColor</code>: standard VCL/LCL property.
 
 
 
 
* <code>ParentCustomHint</code>: ???, missing in TAChart.
 
* <code>ParentCustomHint</code>: ???, missing in TAChart.
 
+
* <code>ParentShowHint</code>: Standard VCL/LCL property.
* <code>ParentShowHint</code>: standard VCL/LCL property.
+
* <code>PopupMenu</code>: Standard VCL/LCL property.
 
+
* <code>PrintProportional</code>: No direct correspondence, in TAChart printing can be done as described [[TAChart_documentation#Printer_drawer|here]].
* <code>PopupMenu</code>: standard VCL/LCL property.
 
 
 
* <code>PrintProportional</code>: no direct correspondence, in TAChart printing can be done as described [[TAChart_documentation#Printer_drawer|here]].
 
 
 
 
* <code>RightAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]].
 
* <code>RightAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]].
 
 
* <code>RightWall</code>: See separate chapter on <code>TChartLeftWall</code>, describes left wall of 3D charts. Not available.
 
* <code>RightWall</code>: See separate chapter on <code>TChartLeftWall</code>, describes left wall of 3D charts. Not available.
 
+
* <code>ScrollMouseButton</code>: Sets the button that will trigger scrolling when pressed. TAChart does not have built-in scrolling support, effect can be achieved by chart tools.
* <code>ScrollMouseButton</code>: sets the button that will trigger scrolling when pressed. TAChart does not have built-in scrolling support, effect can be achieved by chart tools.
 
 
 
 
* <code>SeriesGroups</code>: According to the help file: "Chart Series can be grouped. Series groups can optionally be displayed at the chart editor. The main purpose of groups is to have an easy way to show or hide multiple series, that is, show or hide individual groups of series." Not available in TAChart.
 
* <code>SeriesGroups</code>: According to the help file: "Chart Series can be grouped. Series groups can optionally be displayed at the chart editor. The main purpose of groups is to have an easy way to show or hide multiple series, that is, show or hide individual groups of series." Not available in TAChart.
 
+
* <code>SeriesList</code>: Grayed out. In TAChart accessible as property <code>Series</code>.
* <code>SeriesList</code>: grayed out. In TAChart accessible as property <code>Series</code>.
+
* <code>Shadow</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeShadow</code>]]. No shadow support in TAChart.
 
 
* <code>Shadow</code>: See separate chapter on TTeeShadow. No shadow support in TAChart.
 
 
 
 
* <code>ShowHint</code>: Standard VCL/LCL property.
 
* <code>ShowHint</code>: Standard VCL/LCL property.
 
 
* <code>SubFoot</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. TeeChart allows for a second footer, TAChart does not.
 
* <code>SubFoot</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. TeeChart allows for a second footer, TAChart does not.
 
 
* <code>SubTitle</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. TeeChart allows for a second title, TAChart does not.
 
* <code>SubTitle</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. TeeChart allows for a second title, TAChart does not.
 
+
* <code>TabOrder, TabStop, Tag</code>: Standard VCL/LCL properties.
* <code>TabOrder, TabStop, Tag</code>: standard VCL/LCL properties.
 
 
 
[[file:TeeChart_object_explorer_3.png|right]]
 
 
 
 
* <code>Title</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. Similar to TAChart.
 
* <code>Title</code>: See [[#TeeChart's TChartTitle|<code>TChartTitle</code>]]. Similar to TAChart.
 
+
* <code>Tools</code>: Property is disabled in TeeChart Standard. Chart tools are an essential part of TAChart.
* <code>Tools</code>: property is disabled in TeeChart Standard. Chart tools are an essential part of TAChart.
+
* <code>Top</code>: Standard VCL/LCL property.
 
 
* <code>Top</code>: standard VCL/LCL property.
 
 
 
 
* <code>TopAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]]. Parameters for second x axis above the chart. Property not available in TAChart, but can be accessed by <code>AxisList</code> in object tree.
 
* <code>TopAxis</code>: See [[#TeeChart's TChartAxis|<code>TChartAxis</code>]]. Parameters for second x axis above the chart. Property not available in TAChart, but can be accessed by <code>AxisList</code> in object tree.
 
+
* <code>Touch</code>: Touch [[gestures]] are not supported by Lazarus.
* <code>Touch</code>: Touch gestures are not supported by Lazarus.
 
 
 
 
* <code>UseDockmanger</code>: Docking is not supported by Lazarus.
 
* <code>UseDockmanger</code>: Docking is not supported by Lazarus.
 
+
* <code>View3D, View3DOptions, View3DWalls</code>: Details on 3D charting. In TAChart, 3D effect can only be achieved by <code>Depth</code> properties of chart and some series.
* <code>View3D, View3DOptions, View3DWalls</code>: details on 3D charting. In TAChart, 3D effect can only be achieved by <code>Depth</code> properties of chart and some series.
 
 
 
 
* <code>View3DOptions</code>: Not supported.
 
* <code>View3DOptions</code>: Not supported.
 
+
* <code>View3DWalls</code>: Draw left and bottom "walls" to simulate 3D effect. Not available.
* <code>View3DWalls</code>: draw left and bottom "walls" to simulate 3D effect. Not available.
+
* <code>Visible</code>: Standard VCL/LCL property.
 
+
* <code>Width</code>: Standard VCL/LCL property.
* <code>Visible</code>: standard VCL/LCL property.
+
* <code>Zoom</code>: Parameters to define the built-in zooming. Property not available in TAChart, but effect can be achieved by chart tools.
 
 
* <code>Width</code>: standard VCL/LCL property.
 
 
 
* <code>Zoom</code>: parameters to define the built-in zooming. Property not available in TAChart, but effect can be achieved by chart tools.
 
  
 
=== Events ===
 
=== Events ===
Line 186: Line 171:
 
=== Properties ===
 
=== Properties ===
 
[[file:TeeChartTitle_object_explorer.png|right]]
 
[[file:TeeChartTitle_object_explorer.png|right]]
* <code>AdjustFrame</code>: controls if chart title and foot frames will be resized to full chart dimensions or to the title text width. Not available.
+
* <code>AdjustFrame</code>: Controls if chart title and foot frames will be resized to full chart dimensions or to the title text width. Not available.
 
+
* <code>Alignment</code>: The same as with TAChart.
* <code>Alignment</code>: the same as with TAChart.
 
 
 
 
* <code>Bevel, BevelWidth</code>: Defines a bevel around the Title. Not available.
 
* <code>Bevel, BevelWidth</code>: Defines a bevel around the Title. Not available.
 
 
* <code>Brush</code>: Corresponds to the Brush object that is used to fill the shape interior. Usage is a bit confusing, because there is also a separate <code>Color</code> property, and within the Brush there are <code>BackColor</code> and <code>Color</code> properties again. <code>Brush.Style=bsDiagCross</code> uses <code>Title.Brush.Color</code> as background, <code>Title.Color</code> as foreground color. What is <code>Brush.BackColor</code> for?
 
* <code>Brush</code>: Corresponds to the Brush object that is used to fill the shape interior. Usage is a bit confusing, because there is also a separate <code>Color</code> property, and within the Brush there are <code>BackColor</code> and <code>Color</code> properties again. <code>Brush.Style=bsDiagCross</code> uses <code>Title.Brush.Color</code> as background, <code>Title.Color</code> as foreground color. What is <code>Brush.BackColor</code> for?
 
 
* <code>Color</code>: Background color of the title. In TAChart, use <code>Brush.Color</code>.
 
* <code>Color</code>: Background color of the title. In TAChart, use <code>Brush.Color</code>.
 
+
* <code>CustomPosition: boolean</code>: If <code>true</code>, title can be positioned by <code>Left</code> and <code>Top</code> properties. Not supported.
* <code>CustomPosition: boolean</code>: if <code>true</code>, title can be positioned by <code>Left</code> and <code>Top</code> properties. Not supported.
+
* <code>Emboss</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeEmboss</code>]]. Some kind of upward-directed shadow. Not supported.
 
+
* <code>Font</code>: See [[#TTeeFont|<code>TTeeFont</code>]]. Similar to TAChart
* <code>Emboss</code>: some kind of upward directed shadow. Not supported.
+
* <code>Frame: TChartPen</code>: A frame around the title, see [[#TChartPen|<code>TChartPen</code>]]. Very similar to TAChart.
 
+
* <code>Gradient</code>: Allows to fill the title background with a gradient, see [[#TTeeGradient|<code>TTeeGradient</code>]]. No gradient support in TAChart.
* <code>Font</code>: similar to TAChart
 
 
 
* <code>Frame: TChartPen</code>: a frame around the title with sub-properties <code>Color</code>, <code>EndStyle</code>, <code>Mode</code>, <code>SmallDots</code>, <code>SmallSpace</code>, <code>Style</code>, <code>Visible</code>, <code>Width</code>. Very similar to TAChart.
 
 
 
* <code>Gradient</code>: allows to fill the title background with a gradient. No gradient support in TAChart.
 
 
 
 
* <code>Left, Top</code>: Distance of title from chart edge, used if <code>CustomPosition=true</code>. Not available.
 
* <code>Left, Top</code>: Distance of title from chart edge, used if <code>CustomPosition=true</code>. Not available.
 
 
* <code>Picture</code>: Background picture for the title. No picture support in TAChart.
 
* <code>Picture</code>: Background picture for the title. No picture support in TAChart.
 
+
* <code>Shadow</code>: Shadow parameters. See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeShadow</code>]]. No shadow support in TAChart.
* <code>Shadow</code>: Shadow parameters. No shadow support in TAChart.
 
 
 
 
* <code>ShapeStyle = fosEllipse, fosRectangle, fosRoundRectangle</code>: Title shape, like TAChart's <code>Shape</code> which has more options.
 
* <code>ShapeStyle = fosEllipse, fosRectangle, fosRoundRectangle</code>: Title shape, like TAChart's <code>Shape</code> which has more options.
 
+
* <code>Text</code>: Like TAChart
* <code>Text</code>: like TAChart
+
* <code>TextFormat = (ttfNormal, ttfHTML)</code>: Allows HTML formatting in the title. Available in Lazarus v1.8 or newer as enumeration (tfNormal, tfHTML).
 
+
* <code>Transparency = 0..100</code>: Defines how much of the background is visible through the title (as percentage). Not available in TAChart.
* <code>TextFormat = (ttfNormal, ttfHTML)</code>: Allows HTML formatting in the title. Not available in TAChart.
+
* <code>Transparent: boolean</code>: If true only the text is visible, all decorating elements are turned off. Missing in TAChart.
 
+
* <code>Visible</code>: Show/hides title, like in TAChart.
* <code>Transparency = 0..100</code>: defines how much of the background is visible through the title (as percentage). Not available in TAChart.
 
 
 
* <code>Transparent: boolean</code>: if true only the text is visible, all decorating elements are turned off. Missing in TAChart.
 
 
 
* <code>Visible</code>: show/hides title, like in TAChart.
 
  
 
== TeeChart's TChartLegend ==
 
== TeeChart's TChartLegend ==
Line 234: Line 201:
 
[[file:TeeChart_TChartLegend_properties.png|right]]
 
[[file:TeeChart_TChartLegend_properties.png|right]]
 
* <code>Alignment</code>: Defines location of legend, <code>laLeft, laRight, laTop, laBottom</code>. Top- and bottom-aligned legends are automatically drawn as row. The same property in TAChart has more options. Top- and bottom-aligned legends are still column-oriented, multicolumn legends can be achieved by property <code>ColumnCount</code>, and column-to-row ordering can be changed by <code>ItemFillOrder</code>.
 
* <code>Alignment</code>: Defines location of legend, <code>laLeft, laRight, laTop, laBottom</code>. Top- and bottom-aligned legends are automatically drawn as row. The same property in TAChart has more options. Top- and bottom-aligned legends are still column-oriented, multicolumn legends can be achieved by property <code>ColumnCount</code>, and column-to-row ordering can be changed by <code>ItemFillOrder</code>.
 
 
* <code>Bevel, BevelWidth</code>: Define the bevel around the legend, like that of a panel. Not available in TAChart.
 
* <code>Bevel, BevelWidth</code>: Define the bevel around the legend, like that of a panel. Not available in TAChart.
 
 
* <code>Brush, Color</code>: Defines parameters how to fill the background of the legend. TAChart has a <code>BackgroundBrush</code> property which behaves slightly different. The background color, e.g., is set by <code>BackgroundBrush.Color</code>, while TeeChart uses the property <code>Color</code>.
 
* <code>Brush, Color</code>: Defines parameters how to fill the background of the legend. TAChart has a <code>BackgroundBrush</code> property which behaves slightly different. The background color, e.g., is set by <code>BackgroundBrush.Color</code>, while TeeChart uses the property <code>Color</code>.
 
+
* <code>Checkboxes</code>: Enables/disabled display of checkboxes or radiobuttons for each legend item. Not available in TAChart, but <code>TChartListbox</code> can be a replacement.
* <code>Checkboxes</code>: enables/disabled display of checkboxes or radiobuttons for each legend item. Not available in TAChart, but <code>TChartListbox</code> can be a replacement.
+
* <code>CheckboxesStyle = (cbsCheck, cbsRadio)</code>: Not available in TAChart, but the legend can be replaced by a <code>TChartListbox</code> where you can select the property <code>CheckStyle</code>.
 
+
* <code>ColorWidth</code>: Defines percentage of width of color rectangle associated with each legend item. Like <code>SymbolWidth</code> in TAChart which is in pixels, though.
* <code>CheckboxesStyle</code>: <code>cbsCheck, cbsRadio</code>. Not available in TAChart, but the legend can be replaced by a <code>TChartListbox</code> where you can select the property <code>CheckStyle</code>.
+
* <code>CurrentPage: Boolean</code>: When chart is divided into several pages this property, if <code>true</code>, displays only the items for the current page. No page support in TAChart.
 
 
* <code>ColorWidth</code>: defines percentage of width of color rectangle associated with each legend item. Like <code>SymbolWidth</code> in TAChart which is in pixels, though.
 
 
 
* <code>CurrentPage: Boolean</code>: when chart is divided into several pages this property, if <code>true</code>, displays only the items for the current page. No page support in TAChart.
 
 
 
 
* <code>CustomPosition, Left, LeftPercent, Top, TopPercent, PositionUnits</code>: If <code>CustomPosition = true</code> legend positioning can be fine-tuned by <code>Left</code> and <code>Top</code> properties (if <code>PositionUnits = muPixels</code>), or by <code>LeftPercent</code> and <code>TopPercent</code> (if <code>PositionUnits = muPercent</code>). Not available.
 
* <code>CustomPosition, Left, LeftPercent, Top, TopPercent, PositionUnits</code>: If <code>CustomPosition = true</code> legend positioning can be fine-tuned by <code>Left</code> and <code>Top</code> properties (if <code>PositionUnits = muPixels</code>), or by <code>LeftPercent</code> and <code>TopPercent</code> (if <code>PositionUnits = muPercent</code>). Not available.
 
+
* <code>DividingLines</code>: Sets the pen attributes of optional lines that divide individual legend items. Corresponds to <code>GridHorizontal</code> and <code>GridVertical</code> in TAChart.
* <code>DividingLines</code>: sets the pen attributes of optional lines that divide individual legend items. Not available.
+
* <code>Emboss: TTeeEmboss</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeEmboss</code>]]. Parameters for some kind of upward shadow. Absent in TAChart.
 
 
* <code>Emboss: TTeeEmboss</code>: Parameters for some kind of upward shadow. Absent in TAChart.
 
 
 
 
* <code>FirstValue: Integer</code>: Defines the index of the first value to be displayed in the legend, can be used to display a specific sub-set of series or points in the legend. Not available in TAChart, but series have a <code>Legend</code> property which controls if or how the series is shown in the legend.
 
* <code>FirstValue: Integer</code>: Defines the index of the first value to be displayed in the legend, can be used to display a specific sub-set of series or points in the legend. Not available in TAChart, but series have a <code>Legend</code> property which controls if or how the series is shown in the legend.
 
+
* <code>Font</code>: See [[#TTeeFont|<code>TTeeFont</code>]]. Similar to TAChart.
* <code>Font</code>: Similar to TAChart.
+
* <code>FontSeriesColor: Boolean</code>: If <code>true</code> the legend item text is drawn in the same color as the series. Not directly available in TAChart, but effect can be achieved by handling the <code>OnDraw</code> event of the series.Legend.
 
+
*<code>Frame</code>: See [[#TChartPen|TChartPen]]. Similar to TAChart.
* <code>FontSeriesColor: Boolean</code>: if <code>true</code> the legend item text is drawn in the same color as the series. Not directly available in TAChart, but effect can be achieved by handling the <code>OnDraw</code> event of the series.Legend.
+
*<code>Gradient</code>: See [[#TTeeGradient|<code>TTeeGradient</code>]]. No background gradient support in TAChart.
 
+
*<code>HorizMargin, VertMargin</code>: Specifies the number of screen pixels between legend and chart rectangle. In TAChart, use properties <code>MarginX</code> and/or <code>MarginY</code>.
*<code>Frame</code>: Similar to TAChart.
+
*<code>Inverted</code>: Legend items are drawn in the order first to last, or last to first. Available in TAChart since version 1.7. In addition to <code>Inverted</code>, the order of series in the legend is defined by the series' property <code>Legend.Order</code> (this does not work if the <code>Legend.Multiplicity</code> of the series is <code>lmStyle</code>).
 
 
*<code>Gradient</code>: No background gradient support in TAChart.
 
 
 
*<code>HorizMargin, VertMargin</code>: specifies the number of screen pixels between legend and chart rectangle. In TAChart, use properties <code>MarginX</code> and/or <code>MarginY</code>.
 
 
 
*<code>Inverted</code>: Legend items are drawn in the order first to last, or last to first. Not available in TAChart, but the order of series in the legend is defined by the series' property <code>Legend.Order</code>.
 
 
 
 
*<code>LegendStyle = (lsAuto, lsSeries, lsValues, lsLastValues, lsSeriesGroups)</code>: <code>lsSeries</code> draws series titles (the same as <code>lsAuto</code>, <code>lsValues</code> draws values of first visible series, <code>lsLastValues</code> draws the last value of each active series, <code>lsSeriesGroups</code>: ???. In TAChart, drawing of series values or series titles can be activated per series by the series property <code>Legend.Multiplicity</code>.
 
*<code>LegendStyle = (lsAuto, lsSeries, lsValues, lsLastValues, lsSeriesGroups)</code>: <code>lsSeries</code> draws series titles (the same as <code>lsAuto</code>, <code>lsValues</code> draws values of first visible series, <code>lsLastValues</code> draws the last value of each active series, <code>lsSeriesGroups</code>: ???. In TAChart, drawing of series values or series titles can be activated per series by the series property <code>Legend.Multiplicity</code>.
 
 
*<code>MaxNumRows</code>: 0 means "all rows". Not available in TAChart, but series may be excluded from the legend by setting their <code>Legend.Visible</code> to <code>false</code>.
 
*<code>MaxNumRows</code>: 0 means "all rows". Not available in TAChart, but series may be excluded from the legend by setting their <code>Legend.Visible</code> to <code>false</code>.
 
+
* <code>Picture</code>: Background picture of the legend. No picture support in TAChart.
* <code>Picture</code>: background picture of the legend. No picture support in TAChart.
+
* <code>ResizeChart</code>: Determines whether or not the legend reduces the chart rectangle to prevent overlap between legend and chart rectangles. In TAChart, use <code>UseSidebar</code>.
 
+
* <code>RoundSize: Integer</code>: Corner radius for rounded rectangle frame (see property <code>ShapeStyle</code>). Not available in TAChart.
* <code>ResizeChart</code>: determines whether or not the legend reduces the chart rectangle to prevent overlap between legend and chart rectangles. In TAChart, use <code>UseSidebar</code>.
+
* <code>Shadow</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeShadow</code>]]. No shadow support in TAChart
 
+
* <code>ShapeStyle = (fosRectangle, fosRoundRectangle, fosEllipse)</code>: Shape of the legend. TAChart supports only rectangular shapes for the legend.
* <code>RoundSize: Integer</code>: corner radius for rounded rectangle frame (see property <code>ShapeStyle</code>). Not available in TAChart.
+
* <code>Symbol</code>: Parameters that define how the series symbol is displayed in the legend, see [[#TLegendSymbol|<code>TLegendSymbol</code>]].  
 
 
* <code>Shadow</code>: no shadow support in TAChart
 
 
 
* <code>ShapeStyle = (fosRectangle, fosRoundRectangle, fosEllipse)</code>: shape of the legend. TAChart supports only rectangular shapes for the legend.
 
 
 
* <code>Symbol</code>: Parameters that define how the series symbol is displayed in the legend (<code>Continuous, DefaultPen, Gradient, Pen, Position, Shadow, Squared, Visible, Width, WidthUnits</code>). In TAChart, use <code>SymbolFrame</code> and <code>SymbolWidth</code> for some of these properties.
 
 
 
 
* <code>TextStyle = (ltsPlain, ltsLeftValue, ltsRightValue, ltsLeftPercent, ltsRightPercent, ltsXValue, ltsValue, ltsPercent, ltsXAndValue, ltsXAndPercent)</code>: <code>ltsPlain</code> displays point label, <code>ltsLeftValue</code> displays point value plus point label, etc, similar to TAChart's series property <code>Marks.Style</code>. But TAChart has no independent style of legend and series marks. However, the event handler for the series' <code>Legend.OnCreate</code> can be used to define the legend text in any way.
 
* <code>TextStyle = (ltsPlain, ltsLeftValue, ltsRightValue, ltsLeftPercent, ltsRightPercent, ltsXValue, ltsValue, ltsPercent, ltsXAndValue, ltsXAndPercent)</code>: <code>ltsPlain</code> displays point label, <code>ltsLeftValue</code> displays point value plus point label, etc, similar to TAChart's series property <code>Marks.Style</code>. But TAChart has no independent style of legend and series marks. However, the event handler for the series' <code>Legend.OnCreate</code> can be used to define the legend text in any way.
 +
* <code>TextSymbolGap</code>: Distance between text and symbol. Not available in TAChart.
 +
* <code>Title</code>: Text box to show at legend's top. In TAChart, effect can be achieved by means of <code>Legend.GroupTitles</code>.
 +
* <code>TopPos</code>: Specifies the Legend's top (or left) position as a percentage of the total chart height (or width). When the <code>Alignment</code> property is <code>laLeft</code> or <code>laRight</code> (vertical legend), the <code>TopPos</code> property increments the top legend position by this percentage of the total chart height. For <code>laTop</code> or <code>laBottom</code> legend alignments (horizontal legend), it increments the legend's left position. Not available in TAChart.
 +
* <code>Transparency</code>: Sets percent transparency of the legend. Not available.
 +
* <code>Transparent</code>: Turns on/off decorating elements liks frame, shadow etc. Property not supported in TAChart, but effect can be achieved by handling elements individually.
 +
* <code>Visible</code>: The same as with TAChart.
  
* <code>TextSymbolGap</code>: Like <code>SymbolWidth</code> of TAChart.
+
==== TLegendSymbol ====
 +
[[file:TeeChart_TLegendSymbol_properties.png|right]]
  
* <code>Title</code>: text box to show at legend's top. In TAChart, effect can be achieved by means of <code>Legend.GroupTitles</code>.
+
* <code>Continuous</code>: effect unclear. Not available in TAChart.
 
+
* <code>DefaultPen</code>: if <code>DefaultPen = true</code> the pen of the series is used to draw the line in the symbol (e.g. line segments for TLineSeries, border of bars for TBarSeries, etc). Otherwise the lines are draw as specified by <code>Pen</code>. <code>DefaultPen</code> is not available in TAChart. LineSeries work as if <code>DefaultPen = true</code>, others as if <code>DefaultPen = false</code>, the pen parameters are in <code>SymbolFrame</code>.
* <code>TopPos</code>: specifies the Legend's top (or left) position as a percentage of the total chart height (or width). When the <code>Alignment</code> property is <code>laLeft</code> or <code>laRight</code> (vertical legend), the <code>TopPos</code> property increments the top legend position by this percentage of the total chart height. For <code>laTop</code> or <code>laBottom</code> legend alignments (horizontal legend), it increments the legend's left position. Not available in TAChart.
+
* <code>Emboss</code>: See [[#TTeeEmboss|TTeeEmboss]]. Not supported in TAChart.
 
+
* <code>Gradient</code>: See [[#TTeeGradient|TTeeGradient]]. No gradient support in TAChart.
* <code>Transparency</code>: sets percent transparency of the legend. Not available.
+
* <code>Position = (spLeft, spRight)</code>: Position of the symbol with respect to the text. Not available.
 
+
* <code>Shadow</code>: See[[#TTeeShadow|TTeeShadow]]: No shadow support.
* <code>Transparent</code>: turns on/off decorating elements liks frame, shadow etc. Property not supported in TAChart, but effect can be achieved by handling elements individually.
+
* <code>Squared</code>: if <code>true</code> the <code>Width</code> parameter is ignored and the symbol is drawn in a square defined by the lineheight of the legend items. Not available.
 
+
* <code>Visible</code>: Shows/hides legend symbols in legend. Not available.
* <code>Visible</code>: the same as with TAChart.
+
* <code>Width, WidthUnits = (lcsPixels, lcsPercent)</code>: Width of the legend symbol. <code>SymbolWidth</code> in TAChart, in Pixels.
  
 
== TeeChart's TChartAxis ==
 
== TeeChart's TChartAxis ==
Line 304: Line 253:
 
=== Properties ===
 
=== Properties ===
 
[[file:TeeChart_TChartAxis_properties.png|right]]
 
[[file:TeeChart_TChartAxis_properties.png|right]]
* <code>Automatic, AutomaticMaximum, AutomaticMinimum</code>: automatic range finding, or if off, use <code>Maximum</code> and/or <code>Minimum</code> for axis ends. In TAChart, use <code>Range</code>.
+
* <code>Automatic, AutomaticMaximum, AutomaticMinimum</code>: Automatic range finding, or if off, use <code>Maximum</code> and/or <code>Minimum</code> for axis ends. In TAChart, use <code>Range</code>.
 
+
* <code>Axis</code>: Defines how the axis line is drawn. Its class <code>TChartAxisPen</code> has the same properties as [[#TChartPen|<code>TChartPen</code>]]. In TAChart, use <code>AxisPen</code>.
* <code>Axis: TChartAxisPen</code>: Defines how the axis line is drawn. In TAChart, use <code>AxisPen</code>.
+
* <code>AxisValuesFormat</code>: Format mask for <code>FormatFloat</code> that defines the format of the axis labels (default: <code>#,##0.###</code>). In TAChart, use <code>Marks.Format</code>, default: <code>%0:.9g</code>.
 
 
* <code>AxisValuesFormat</code>: Formatmask for <code>FormatFloat</code> that defines the format of the axis labels (default: <code>#,##0.###</code>). In TAChart, use <code>Marks.Format</code>, default: <code>%0:.9g</code>.
 
 
 
 
* <code>DateTimeFormat</code>: Defines how date/time values are formatted. No direct equivalent in TAChart. Effect can be created by TDateTimeChartSource or TListChartSource.
 
* <code>DateTimeFormat</code>: Defines how date/time values are formatted. No direct equivalent in TAChart. Effect can be created by TDateTimeChartSource or TListChartSource.
 
+
* <code>EndPosition, StartPosition</code>: Defines the percentage position of chart width or height where the axis begins and ends. Left and Top are 0,0 positions. No 1:1 equivalent in TAChart, but effect can be achieved by Range.
* <code>EndPosition, StartPosition</code>: defines the percentage position of chart width or height where the axis begins and ends. Left and Top are 0,0 positions. No 1:1 equivalent in TAChart, but effect can be achieved by Range.
 
 
 
 
* <code>ExactDateTime: boolean</code>: Useful when placing date/time ticks e.g. at the first of each month such that the tick distance is the number of days per month. Missing in TAChart. Can be achieved with some coding using a TListChartSource.
 
* <code>ExactDateTime: boolean</code>: Useful when placing date/time ticks e.g. at the first of each month such that the tick distance is the number of days per month. Missing in TAChart. Can be achieved with some coding using a TListChartSource.
 
+
* <code>Grid</code>: Parameters to draw the axis grid. See [[#TChartPen|<code>TChartPen</code>]] for details. TAChart's <code>Grid</code> is equivalent, the subproperty <code>DrawEvery:integer</code> which allows to skip every other grid line is not directly supported, by may be emulated by using <code>Axis.Marks.Stripes</code>.
* <code>Grid</code>: Parameters to draw the axis grid. TAChart's <code>Grid</code> is equivalent, the subproperty <code>DrawEvery:integer</code> which allows to skip every other grid line is missing, however.
 
 
 
 
* <code>GridCentered: boolean</code>: Draws axis grid line between label positions. Not available.
 
* <code>GridCentered: boolean</code>: Draws axis grid line between label positions. Not available.
 
 
* <code>Horizontal: Boolean</code>: Equivalent to TAChart's <code>Alignment</code>.
 
* <code>Horizontal: Boolean</code>: Equivalent to TAChart's <code>Alignment</code>.
 
 
* <code>Increment: Double</code>: Distance between axis labels. If 0 the distance is determined automatically. In TAChart automatic label positioning is controlled by property <code>Intervals</code>.
 
* <code>Increment: Double</code>: Distance between axis labels. If 0 the distance is determined automatically. In TAChart automatic label positioning is controlled by property <code>Intervals</code>.
 
 
* <code>Inverted</code>: If <code>true></code> the axis runs into reverse direction. Same as with TAChart.
 
* <code>Inverted</code>: If <code>true></code> the axis runs into reverse direction. Same as with TAChart.
 
+
* <code>Labels</code>: Turns axis labels on and off. In TAChart: <code>Marks.Visible</code>
* <code>Labels</code>: turns axis labels on and off. In TAChart: <code>Marks.Visible</code>
+
* <code>LabelsAlign</code>: If <code>alDefault</code> labels of vertical axes are aligned towards the axis line (left axis: right-aligned), if <code>alOpposite</code> they are aligned away from the axis line (left axis: left-aligned). Not supported.
 
+
* <code>LabelsAlternate</code>: If true labels for horizontal are offset vertically, one near axis, the next one a line deeper. Not available.
* <code>LabelsAlign</code>: if <code>alDefault</code> labels of vertical axes are aligned towards the axis line (left axis: right-aligned), if <code>alOpposite</code> they are aligned away from the axis line (left axis: left-aligned). Not supported.
 
 
 
* <code>LabelsAlternate</code>: if true labels for horizontal are offset vertically, one near axis, the next one a line deeper. Not available.
 
 
 
 
* <code>LabelsAngle</code>: Rotation angle of labels in degrees. Like TAChart's <code>Marks.LabelFont.Orientation</code> which is in tenths of degrees, though.
 
* <code>LabelsAngle</code>: Rotation angle of labels in degrees. Like TAChart's <code>Marks.LabelFont.Orientation</code> which is in tenths of degrees, though.
 
 
* <code>LabelsBehind</code>: ???
 
* <code>LabelsBehind</code>: ???
 
 
* <code>LabelsExponent</code>: Controls axis labels in exponent format: if true Exponent is in super-script font, else in scientific notation. Not available in TAChart.
 
* <code>LabelsExponent</code>: Controls axis labels in exponent format: if true Exponent is in super-script font, else in scientific notation. Not available in TAChart.
 
+
* <code>LabelsFont</code>: Font of labels. See [[#TTeeFont|<code>TTeeFont</code>]]. Like TAChart's <code>Mark.LabelFont</code> which has less subproperties, though.
* <code>LabelsFont</code>: Font of labels, like TAChart's <code>Mark.LabelFont</code> which has less subproperties, though.
+
* <code>LabelsMultiLine</code>: Allows multi-line labels. No direct correspondence in TAChart, but effect can be achieved by event <code>OnMarkToText</code>.
 
+
* <code>LabelsOnAxis</code>: Controls if labels at axis minimum and maximum positions will be shown or not. Not available in TAChart, effect can be partially achieved using <code>Marks.Range</code> property.
* <code>LabelsMultiLine</code>: allows multi-line labels. No direct correspondence in TAChart, but effect can be achieved by event <code>OnMarkToText</code>.
+
* <code>LabelsSeparation</code>: Specifies the percent amount of minimum distance between labels. Zero value causes overlapping labels. Not directly available in TAChart, but effect can be partially achieved by <code>Intervals</code> and <code>OverlapPolicy</code> settings.
 
+
* <code>LabelsSize</code>: Size occupied by labels, default 0 means automatic calculation. If not correct, axis title may overlap with labels. In Lazarus since 1.2.8, in older versions no equivalent, always automatic.
* <code>LabelsOnAxis</code>: controls if labels at axis minimum and maximum positions will be shown or not. Not available in TAChart, effect can be partially achieved using <code>Marks.Range</code> property.
+
* <code>LabelsStyle = (<code>talAuto, talNone, talPointValue, talText, talValue</code>): Like TAChart's <code>Marks.Style</code>. No correspondence for <code>talAuto</code>, though, which tries to guess the value displayed from the type of axis, e.g. if series has XLabels, then <code>talText</code> will be used.
 
 
* <code>LabelsSeparation</code>: specifies the percent amount of minimum distance between labels. Zero value causes overlapping labels. Not directly available in TAChart, but effect can be partially achieved by <code>Intervals</code> and <code>OverlapPolicy</code> settings.
 
 
 
* <code>LabelsSize</code>: Size occupied by labels, default 0 means automatic calculation. If not correct, axis title may overlap with labels. No equivalent in TAChart, always automatic.
 
 
 
* <code>LabelsStyle</code>: <code>talAuto, talNone, talPointValue, talText, talValue</code>. Like TAChart's <code>Marks.Style</code>. No correspondence for <code>talAuto</code>, though, which tries to guess the value displayed from the type of axis, e.g. if series has XLabels, then <code>talText</code> will be used.
 
 
 
 
* <code>Logarithmic</code>: Enables logarithmic axis scaling. In TAChart no direct correspondence, but effect can be achieved by means of AxisTransformations and <code>Axis.Intervals</code>.
 
* <code>Logarithmic</code>: Enables logarithmic axis scaling. In TAChart no direct correspondence, but effect can be achieved by means of AxisTransformations and <code>Axis.Intervals</code>.
 
 
* <code>LogarithmicBase</code>: Base for logarithmic scaling. In TAChart, property is found in the transformation <code>TLogarithmAxisTransform</code> needed to achieve logarithmic scaling.
 
* <code>LogarithmicBase</code>: Base for logarithmic scaling. In TAChart, property is found in the transformation <code>TLogarithmAxisTransform</code> needed to achieve logarithmic scaling.
 
+
* <code>MaximumOffset, MinimumOffset</code>: Pixels that will be left as a margin at axis maximum or minimum positions. In TAChart: <code>TChart.Margins.Right</code> or <code>Margins.Left</code>, <code>MarginsForMarks = true</code> for automatic calculation.
* <code>MaximumOffset, MinimumOffset</code>: pixels that will be left as a margin at axis maximum or minimum positions. In TAChart: <code>TChart.Margins.Right</code> or <code>Margins.Left</code>, <code>MarginsForMarks = true</code> for automatic calculation.
+
* <code>MaximumRound, MinimumRound</code>: Rounds axis maximum or minimum to the next integer. Not available in TAChart.
 
+
* <code>MinorGrid</code>: Parameters to define minor grid. Use property <code>Minors[n].Grid</code>.
* <code>MaximumRound, MinimumRound</code>: rounds axis maximum or minimum to the next integer. Not available in TAChart.
+
* <code>MinorTickCount</code>: Number of minor ticks between two major ticks. Use <code>Intervals</code> property of <code>Minors[n]</code>.
 
+
* <code>MinorTickLength</code>: Length of minor ticks. In TAChart, the property is <code>Axis.Minors[n].TickLength</code>; there is also an TickInnerLength which TeeChart does not have.
* <code>MinorGrid</code>: parameters to define minor grid. Use property <code>Minors[n].Grid</code>.
+
* <code>MinorTicks</code>: Parameter to define minor ticks. Use property <code>Minors[n]</code>.
 
+
* <code>OtherSide</code>: If <code>true</code> axis is drawn on the opposite side of the chart. In TAChart, change the <code>Alignment</code> of the axis correspondingly.
* <code>MinorTickCount</code>: number of minor ticks between two major ticks. Use <code>Intervals</code> property of <code>Minors[n]</code>.
 
 
 
* <code>MinorTickLength</code>: length of minor ticks. In TAChart, the property is <code>Axis.Minors[n].TickLength</code>; there is also an TickInnerLength which TeeChart does not have.
 
 
 
* <code>MinorTicks</code>: parameter to define minor ticks. Use property <code>Minors[n]</code>.
 
 
 
* <code>OtherSide</code>: if <code>true</code> axis is drawn on the opposite side of the chart. In TAChart, change the <code>Alignment</code> of the axis correspondingly.
 
 
 
 
* <code>PartnerAxis</code>: ???
 
* <code>PartnerAxis</code>: ???
 
 
* <code>PositionPercent</code>: Percentage of chart width or height the axis is moved into the drawing area. In TAChart, use <code>Position</code> and <code>PositionUnits=cuPercent</code>.
 
* <code>PositionPercent</code>: Percentage of chart width or height the axis is moved into the drawing area. In TAChart, use <code>Position</code> and <code>PositionUnits=cuPercent</code>.
 
 
* <code>RoundFirstLabel</code>: Rounds the first label to a "nice" number (default: <code>true</code>). In TAChart, label positioning is determined by <code>Intervals</code> subproperties.
 
* <code>RoundFirstLabel</code>: Rounds the first label to a "nice" number (default: <code>true</code>). In TAChart, label positioning is determined by <code>Intervals</code> subproperties.
 
 
* <code>TickInnerLength</code>: Like with TAChart
 
* <code>TickInnerLength</code>: Like with TAChart
 
 
* <code>TickOnLabelsOnly</code>: From the help file: "... sets the axis ticks and axis grid to be drawn only to coincide at labels. Otherwise they will be drawn at all axis increment positions. When the axis LabelsSeparation property is greater than 0 (default 10), axis increases the increment property to avoid axis label overlap." Seems not be available in TAChart.
 
* <code>TickOnLabelsOnly</code>: From the help file: "... sets the axis ticks and axis grid to be drawn only to coincide at labels. Otherwise they will be drawn at all axis increment positions. When the axis LabelsSeparation property is greater than 0 (default 10), axis increases the increment property to avoid axis label overlap." Seems not be available in TAChart.
 
 
* <code>Ticks, TicksInner</code>: Determines drawing of the outer and inner ticks (Color, EndStyle, Mode, Style, Visible, Width, etc). In TAChart only <code>TickColor</code>.
 
* <code>Ticks, TicksInner</code>: Determines drawing of the outer and inner ticks (Color, EndStyle, Mode, Style, Visible, Width, etc). In TAChart only <code>TickColor</code>.
 
+
* <code>Title</code>: Defines the axis title - see [[#TChartAxisTitle_properties|<code>TChartAxisTitle</code>]]. TAChart has the same property but with less sub-properties; the main difference is that TAChart's <code>Visible</code> defaults to <code>false</code>.
* <code>Title</code>: defines the axis title - see [[#TChartAxisTitle_properties|<code>TChartAxisTitle</code>]]. TAChart has the same property but with less sub-properties; the main difference is that TAChart's <code>Visible</code> defaults to <code>false</code>.
 
 
 
 
* <code>TitleSize</code>: Distance between title and chart border (?). 0 --> automatic determination. Use <code>Margin</code> property in TAChart.
 
* <code>TitleSize</code>: Distance between title and chart border (?). 0 --> automatic determination. Use <code>Margin</code> property in TAChart.
 
+
* <code>UsePartnerAxis</code>: No effect in TeeChart Standard. No equivalent in TAChart.
* <code>UsePartnerAxis</code>: no effect in TeeChart Standard. No equivalent in TAChart.
 
 
 
 
[[file:TeeChart_TChartAxisTitle_properties.png|right]]
 
[[file:TeeChart_TChartAxisTitle_properties.png|right]]
 
 
* <code>Visible</code>: Like in TAChart.
 
* <code>Visible</code>: Like in TAChart.
 
 
* <code>ZPosition</code>: Like in TAChart.
 
* <code>ZPosition</code>: Like in TAChart.
  
 
==== TChartAxisTitle properties ====
 
==== TChartAxisTitle properties ====
 
 
Here is a description of properties that have not yet been explained in [[#TChartTitle|<code>TChartTitle</code>]].
 
Here is a description of properties that have not yet been explained in [[#TChartTitle|<code>TChartTitle</code>]].
 
+
* <code>Angle</code>: Rotation angle of title, in degrees. In TAChart, use <code>Title.LabelFont.Orientation</code> which is in tenths of degrees.
* <code>Angle</code>: rotation angle of title, in degrees. In TAChart, use <code>Title.LabelFont.Orientation</code> which is in tenths of degrees.
+
* <code>Caption</code>: Text to be displayed as axis title. Same as in TAChart.
 
+
* <code>Pen</code>: Defines parameters that draw the frame around the title, see [[#TChartPen|<code>TChartPen</code>]]. In TAChart, use <code>Frame</code>.
* <code>Caption</code>: text to be displayed as axis title. Same as in TAChart.
+
* <code>RoundSize</code>: Corner radius of rounded rectangle if <code>ShapeStyle = fosRoundRectangle</code>. Not available.
 
+
* <code>Visible</code>: Toggles the axis title. Same as in TAChart where the title is off by default.
* <code>Pen</code>: defines parameters that draw the frame around the title. In TAChart, use <code>Frame</code>.
 
 
 
* <code>RoundSize</code>: corner radius of rounded rectangle if <code>ShapeStyle = fosRoundRectangle</code>. Not available.
 
 
 
* <code>Visible</code>: toggles the axis title. Same as in TAChart where the title is off by default.
 
  
 
== TeeChart's TLineSeries ==
 
== TeeChart's TLineSeries ==
Line 411: Line 311:
 
[[file:TeeChart_TLineSeries_properties.png|right]]
 
[[file:TeeChart_TLineSeries_properties.png|right]]
 
* <code>Active</code>: Shows/hides series, like in TAChart.
 
* <code>Active</code>: Shows/hides series, like in TAChart.
 
+
* <code>Brush</code>: Used in 3d view to paint the band of the line series. Not available in TAChart.
* <code>Brush</code>: used in 3d view to paint the band of the line series. Not available in TAChart.
+
* <code>ClickableLine</code>: Determines if series accepts mouse clicks over the line segment drawn between points. Not available.
 
+
* <code>ColorEachLine</code>: If <code>ColorEachPoint</code> is <code>true</code>, determines if the connecting lines of a lineseries will also be displayed using a different color for each line segment. In TAChart, this corresponds to the setting <code>ceLineAfter</code> or <code>cePointAndLineAfter</code> of property <code>ColorEach</code>; in addition there are additonal options to colorize the preceding line segment.
* <code>ClickableLine</code>: determines if series accepts mouse clicks over the line segment drawn between points. Not available.
+
* <code>ColorEachPoint</code>: If <code>false</code>, all points will be drawn using the <code>SeriesColor</code> property. If <code>true</code>, each series point will be colored with its corresponding point color. In TAChart, assign colors to each <code>ChartDataItem</code> by calling <code>ListSource.SetColor</code>. Further control is given by the property <code>ColorEach</code> which can be set to colorize the data point only and/or the neighboring line segments (see also Delphi's <code>ColorEachLine</code>).
 
+
* <code>ColorSource</code>: Used only when connecting a series to a database dataset or datasource. Must be a valid database field name. Not supported.
* <code>ColorEachLine</code>: if <code>ColorEachPoint</code> is <code>true</code>, determines if the connecting lines of a lineseries will also be displayed using a different color for each line segment. Not available.
+
* <code>Cursor</code>: Shown when the mouse moves sufficiently close to the series. Not suppored in TAChart.
 
+
* <code>Dark3D</code>: In 3d view, draws band of lineseries darker and brighter depending on orientation to light source. Not supported.
* <code>ColorEachPoint</code>: if <code>false</code>, all points will be drawn using the <code>SeriesColor</code> property. If <code>true</code>, each series point will be colored with its corresponding point color. In TAChart, assign colors to each <code>ChartDataItem</code> by calling <code>ListSource.SetColor</code>.
 
 
 
* <code>ColorSource</code>: used only when connecting a series to a database dataset or datasource. Must be a valid database field name. Not supported.
 
 
 
* <code>Cursor</code>: shown when the mouse moves sufficiently close to the series. Not suppored in TAChart.
 
 
 
* <code>Dark3D</code>: in 3d view, draws band of lineseries darker and brighter depending on orientation to light source. Not supported.
 
 
 
 
* <code>DataSource</code>: A TChartSeries can be optionally connected to a "point data provider" (or DataSource) which may be another series, TDataset derived class, or "TTeeSeriesSource". Concept similar to TAChart's chart sources.
 
* <code>DataSource</code>: A TChartSeries can be optionally connected to a "point data provider" (or DataSource) which may be another series, TDataset derived class, or "TTeeSeriesSource". Concept similar to TAChart's chart sources.
 
+
* <code>Depth</code>: In 3d view, depth of the band drawn. Like in TAChart.
* <code>Depth</code>: in 3d view, depth of the band drawn. Like in TAChart.
+
* <code>Emboss</code>: Upward-directed shadow. See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeEmboss</code>]]. Not supported in TAChart.
 
+
* <code>Gradient</code>: Gradient drawn across depth of the 3d band, see [[#TTeeGradient|<code>TTeeGradient</code>]]. Not supported.
* <code>Emboss</code>: upward-directed shadow. Not supported in TAChart.
+
* <code>HorizAxis = (aTopAxis, aBottomAxis, aBothHorizAxis, aCustomHorizAxis)</code>: Identifies which horizontal axis is used. Similar to TAChart's <code>AxisIndexX</code>.
 
+
* <code>InvertedStairs</code>: Alter the direction of the stairs. In TAChart, like <code>LineType = ltStepYX</code>.
* <code>Gradient</code>: gradient drawn across depth of the 3d band. Not supported.
+
* <code>LegendTitle</code>: Title to be used in legend, different from default <code>Title</code>. Not available in TAChart which normally uses <code>Title</code> only, but legend text can be altered from <code>Title</code> by event <code>Legend.OnCreate</code>.
 
+
* <code>LineBrush</code>: Defines the brush style used to fill lineseries band in 3d view. Identical to <code>Brush.Style</code>. Not supported in TAChart.
* <code>HorizAxis = (aTopAxis, aBottomAxis, aBothHorizAxis, aCustomHorizAxis)</code>: identifies which horizontal axis is used. Similar to TAChart's <code>AxisIndexX</code>.
+
* <code>LineHeight</code>: Thickness of the band drawn in 3d view. Not supported.
 
+
* <code>LinePen</code>: Pen parameters used to draw the line series in 2d view. See [[#TChartPen|TChartPen]]. Like TAChart.
* <code>InvertedStairs</code>: alter the direction of the stairs. In TAChart, like <code>LineType = ltStepYX</code>.
+
* <code>Marks</code>: Defines all necessary properties to draw a mark near to each series point, see [[#TSeriesMarks|<code>TSeriesMarks</code>]]. Similar to TAChart (which has less options).
 
+
* <code>Name</code>: Standard VCL/LCL property
* <code>LegendTitle</code>: title in legend, different from default <code>Title</code>. Not available in TAChart which normally uses <code>Title</code> only, but legend text can be altered from <code>Title</code> by event <code>Legend.OnCreate</code>.
+
* <code>Outline</code>: Determines an additional pen used to display a "border" or "outline" around a lineseries. Not available.
 
 
* <code>LineBrush</code>: defines the brush style used to fill lineseries band in 3d view. Identical to <code>Brush.Style</code>. Not supported in TAChart.
 
 
 
* <code>LineHeight</code>: thickness of the band drawn in 3d view. Not supported.
 
 
 
* <code>LinePen</code>: pen parameters used to draw the line series in 2d view. Like TAChart.
 
 
 
* <code>Marks</code>: defines all necessary properties to draw a mark near to each series point, see [[#TChartSeriesMarks|<code>TChartSeriesMarks</code>]]. Similar to TAChart (which has less options).
 
 
 
* <code>Name</code>: standard VCL/LCL property
 
 
 
* <code>Outline</code>: determines an additional pen used to display a "border" or "outline" around a lineseries. Not available.
 
 
 
 
* <code>ParentChart</code>: Chart to which the series belongs. In TAChart, readonly and public.
 
* <code>ParentChart</code>: Chart to which the series belongs. In TAChart, readonly and public.
 
+
* <code>PercentFormat</code>: Standard formatting string specifier used to draw the series marks in percent style. In TAChart, use <code>Marks.Format</code>.
* <code>PercentFormat</code>: standard formatting string specifier used to draw the series marks in percent style. In TAChart, use <code>Marks.Format</code>.
+
* <code>Pointer</code>: Parameters to draw data points, see [[#TSeriesPointer|<code>TSeriesPointer</code>]]. Similar to TAChart which has less options.
 
+
* <code>SeriesColor</code>: Color of the series, like in TAChart.
* <code>Pointer</code>: parameters to draw data points, see [[#TChartSeriesPointer|<code>TChartSeriesPointer</code>]]. Similar to TAChart which has less options.
+
* <code>Shadow</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeShadow</code>]]. No shadow support in TAChart.
 
+
* <code>ShowInEditor</code>: Shows/hides series in chart editor. Not available.
* <code>SeriesColor</code>: color of the series, like in TAChart.
+
* <code>ShowInLegend</code>: Shows/hides series in legend. Use <code>Legend.Visible</code> in TAChart.
 
+
* <code>Stacked = (cssNone, cssOverlap, cssStack, cssStack100)</code>: Stacking of series. In TAChart, use multi-valued source.
* <code>Shadow</code>: no shadow support in TAChart.
+
* <code>Stairs: boolean</code>: Connects data paints by line segments (<code>false</code>) or stairs (<code>true</code>). In TAChart is is controlled by <code>LineType=ltFromPrevious</code>, or <code>LineType = ltStepXY or ltStepYX</code>, respectively.
 
+
* <code>Tag</code>: Standard VCL/LCL property
* <code>ShowInEditor</code>: shows/hides series in chart editor. Not available.
+
* <code>Title</code>: Text to identify the series in the legend. Same with TAChart.
 
+
* <code>Transparency</code>: Percent transparency of the series. The same in TAChart, but values are between 0 and 255.
* <code>ShowInLegend</code>: shows/hides series in legend. Use <code>Legend.Visible</code> in TAChart.
 
 
 
* <code>Stacked = (cssNone, cssOverlap, cssStack, cssStack100)</code>: stacking of series. In TAChart, use multi-valued source.
 
 
 
* <code>Stairs: boolean</code>: connects data paints by line segments (<code>false</code>) or stairs (<code>true</code>). In TAChart is is controlled by <code>LineType=ltFromPrevious</code>, or <code>LineType = ltStepXY or ltStepYX</code>, respectively.
 
 
 
* <code>Tag</code>: standard VCL/LCL property
 
 
 
* <code>Title</code>: text to identify the series in the legend. Same with TAChart.
 
 
 
* <code>Transparency</code>: percent transparency of the series. The same in TAChart, but values are between 0 and 255.
 
 
 
 
* <code>TreatNulls</code>: Not available, but TAChart works like <code>tnSkip</code>:
 
* <code>TreatNulls</code>: Not available, but TAChart works like <code>tnSkip</code>:
**<code>tnDontPaint</code>: line from non-null to null point is displayed, line from null to non-null is not displayed
+
**<code>tnDontPaint</code>: Line from non-null to null point is displayed, line from null to non-null is not displayed
**<code>tnSkip</code>: lines between a non-null point and the null point and the next non-null point are not displayed.
+
**<code>tnSkip</code>: Lines between a non-null point and the null point and the next non-null point are not displayed.
**<code>tnIgnore</code>: treats all points as non-nulls.
+
**<code>tnIgnore</code>: Treats all points as non-nulls.
 
+
* <code>ValueFormat</code>: Standard formatting string specifier used to draw the series Marks.
* <code>ValueFormat</code>: standard formatting string specifier used to draw the series Marks.
+
* <code>VertAxis = (aLeftAxis, aRightAxis, aBothVertAxis, aCustomVertAxis)</code>: Identifies which vertical axis is used. Similar to TAChart's <code>AxisIndexY</code>.
 
+
* <code>XLabelsSource</code>: Name of a DataSet field that contains the point labels. In TAChart, a DBChartSource is needed.
* <code>VertAxis = (aLeftAxis, aRightAxis, aBothVertAxis, aCustomVertAxis)</code>: identifies which vertical axis is used. Similar to TAChart's <code>AxisIndexY</code>.
+
* <code>XValues, YValues</code>: Provides information on storage of x and y values. In TAChart, use <code>Source</code> property for this purpose.
 
 
* <code>XLabelsSource</code>: name of a DataSet field that contains the point labels. In TAChart, a DBChartSource is needed.
 
  
* <code>XValues, YValues</code>: provide information on storage of x and y values. In TAChart, use <code>Source</code> property for this purpose.
+
==== TChartValueList ====
 +
[[file:TeeChart_TChartValueList_properties.png|right]]
 +
TAChart does not provide a TChartValueList property. Here is the reference what this class contains in TeeChart.
 +
* <code>DateTime</code>: tells TeeChart that data values are numbers (<code>false</code>) or date/time values (<code>true</code>). Not available in TAChart. Automatic presentatation of date/time values as axis labels can be achieved by assigning a TDateTimeIntervalChartSource to the axis; date/time series mark texts can be obtained by means of the <code>OnGetMark</code> event of the series.
 +
* <code>Name</code>: Name of the series, needed when series is used as <code>ValueSource</code> of another series. Not needed in TAChart.
 +
* <code>Order = (loNone, loAscending, loDescending)</code>: Sorting order of the data. In TAChart, sorting is achieved by the chart source, in case of the <code>TListChartSource</code> commonly used for <code>TLineSeries</code> this is the property <code>Sorted</code>.
 +
* <code>ValueSource</code>: If series is connected to a database then this is the name of a dataset field. If series is connected to another chart, then this is the name of the connected chart. TAChart does support database-sensitive chartsources, but sharing data with other charts is possible only by linking their chart sources.
  
 
==== TSeriesMarks ====
 
==== TSeriesMarks ====
 
[[file:TeeChart_TSeriesMarks_properties.png|right]]
 
[[file:TeeChart_TSeriesMarks_properties.png|right]]
* <code>Angle</code>: rotation angle of marks, in degrees. In TAChart, use <code>Marks.LabelFont.Orientation</code> (which is in tenths of degrees).
+
* <code>Angle</code>: Rotation angle of marks, in degrees. In TAChart, use <code>Marks.LabelFont.Orientation</code> (which is in tenths of degrees).
 
+
* <code>Arrow</code>: Parameters for the connecting line between mark and data point. Property name is misleading since an arrow head is not drawn by default (only after setting <code>Callout.ArrowHead</code> to a value different from <code>ahNone</code>). This property is called <code>LinkPen</code>, parameters for an arrow head are available under <code>Arrow</code>.
* <code>Arrow</code>: parameters for the connecting line between mark and data point. Property name is misleading since an arrow head is not drawn by default (only after setting <code>Callout.ArrowHead</code> to a value different from <code>ahNone</code>). This property is called <code>LinkPen</code>, parameters for an arrow head are available under <code>Arrow</code>.
+
* <code>ArrowLength</code>: Length of the connecting line between mark and data point. Use <code>Distance</code> in TAChart.
 
 
* <code>ArrowLength</code>: length of the connecting line between mark and data point. Use <code>Distance</code> in TAChart.
 
 
 
 
* <code>BackColor</code>: Background color of the mark. In TAChart, use <code>LabelBrush.Color</code>.
 
* <code>BackColor</code>: Background color of the mark. In TAChart, use <code>LabelBrush.Color</code>.
 
+
* <code>Bevel, BevelWidth</code>: Draws a bevel around the mark (like TPanel). Not available.
* <code>Bevel, BevelWidth</code>: draws a bevel around the mark (like TPanel). Not available.
 
 
 
 
* <code>Brush</code>: Parameters to draw the background of the mark. In TAChart, use <code>LabelBrush</code> which has less options, though.
 
* <code>Brush</code>: Parameters to draw the background of the mark. In TAChart, use <code>LabelBrush</code> which has less options, though.
 
 
* <code>CallOut</code>: Parameters to refine the connection line between mark and data point; you can also set the arrow head here. In TAChart, callout-type of connection can be defined by CallOutAngle which is in tenths of degrees; the arrow head is set by property <code>Arrow</code>.
 
* <code>CallOut</code>: Parameters to refine the connection line between mark and data point; you can also set the arrow head here. In TAChart, callout-type of connection can be defined by CallOutAngle which is in tenths of degrees; the arrow head is set by property <code>Arrow</code>.
 
+
* <code>Clip</code>: Clips mark labels at the edge of the chart areas. Called <code>Clipped</code> in TAChart.
* <code>Clip</code>: clips mark labels at the edge of the chart areas. Called <code>Clipped</code> in TAChart.
 
 
 
 
* <code>Color</code>: Seems to be the same as <code>BackColor</code>. <code>LinkBrush.Color</code> in TAChart.
 
* <code>Color</code>: Seems to be the same as <code>BackColor</code>. <code>LinkBrush.Color</code> in TAChart.
 
 
* <code>DrawEvery: Integer</code>: Allows to skip a number of marks to avoid overlap. Not available.
 
* <code>DrawEvery: Integer</code>: Allows to skip a number of marks to avoid overlap. Not available.
 
+
* <code>Emboss</code>: Upward-directed shadow. See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeEmboss</code>]]. Not supported.
* <code>Emboss</code>: upward directed shadow. Not supported.
+
* <code>Font</code>: Font of the marks text. In TAChart <code>LabelFont</code>.
 
+
* <code>Frame</code>: Parameters for drawing the frame around the mark, see [[#TChartPen|<code>TChartPen</code>]]. The same as with TAChart.
* <code>Font</code>: font of the marks text. In TAChart <code>LabelFont</code>.
+
* <code>Gradient</code>: See [[#TTeeGradient|<code>TTeeGradient</code>]]. No gradient support in TAChart.
 
 
* <code>Frame</code>: parameters for drawing the frame around the mark. The same as with TAChart.
 
 
 
* <code>Gradient</code>: No gradient support in TAChart.
 
 
 
 
* <code>Margins</code>: Distance between text and frame. The same as with TAChart.
 
* <code>Margins</code>: Distance between text and frame. The same as with TAChart.
 
+
* <code>MultiLine</code>: Enable/disable multilined marks. Not available in TAChart, but works like <code>true</code> if the mark text contains <code>LineEnding</code>.
* <code>MultiLine</code>: allow multilined marks. Not available in TAChart, but works like <code>true</true> if the mark format mask contains <code>LineEnding</code>.
+
* <code>Picture</code>: No support for background picture in TAChart.
 
+
* <code>Shadow</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeShadow</code>]]. No shadow support in TAChart.
* <code>Picture</code>: no support for background picture in TAChart.
 
 
 
* <code>Shadow</code>: no shadow support in TAChart.
 
 
 
 
* <code>ShapeStyle = (fosEllipse, fosRectangle, fosRoundRectangle)</code>: Like TAChart's <code>Shape</code> which has more options.
 
* <code>ShapeStyle = (fosEllipse, fosRectangle, fosRoundRectangle)</code>: Like TAChart's <code>Shape</code> which has more options.
 
+
* <code>Style = (smsLabel, smsLabelPercent, smsLabelPercentTotal, smsLabelValue, smsLegend, smsPercent, smsPercentRelative, smsPercentTotal, smsPointIndex, smsSeriesTitle, smsValue, smsXValue, smsXY)</code>: Like TAChart's <code>Style</code> with slightly different options.
* <code>Style = (smsLabel, smsLabelPercent, smsLabelPercentTotal, smsLabelValue, smsLegend, smsPercent, smsPercentRelative, smsPercentTotal, smsPointIndex, smsSeriesTitle, smsValue, smsXValue, smsXY)</code>: like TAChart's <code>Style</code> with slightly different options.
 
 
 
 
* <code>Symbol</code>: Adds the series symbol to the mark. Not available.
 
* <code>Symbol</code>: Adds the series symbol to the mark. Not available.
 
+
* <code>TextAlign</code>: Alignment of text within frame rectangle. Is called <code>Alignment</code> in TAChart.
* <code>TextAlign</code>: Alignment of text within frame rectangle. Not available.
+
* <code>Transparency</code>: Percentage of transparency to see the background underneath the marks. Not available.
 
+
* <code>Transparent</code>: Toggles visual enhancements like frame, shadow, emboss. Not available, same effect can be achieved by toggling elements separately.
* <code>Transparency</code>: percentage of transparency to see the background underneath the marks. Not available.
+
* <code>Visible</code>: Turns marks on/off. The same as in TAChart.
 
 
* <code>Transparent</code>: toggles visual enhancements like frame, shadow, emboss. Not available.
 
 
 
* <code>Visible</code>: turns marks on/off. The same as in TAChart.
 
  
 
==== TSeriesPointer ====
 
==== TSeriesPointer ====
 
[[file:TeeChart_TSeriesPointer_properties.png|right]]
 
[[file:TeeChart_TSeriesPointer_properties.png|right]]
 
 
* <code>Brush</code>: Parameters, how the interior of the symbol is filled. Like in TAChart.
 
* <code>Brush</code>: Parameters, how the interior of the symbol is filled. Like in TAChart.
 
+
* <code>Dark3D</code>: Shades faces of the extruded shape (if <code>Draw3D=true</code>) as if it were illuminated by a light source. Not available.
* <code>Dark3D</code>: shades faces of the extruded shape (if <code>Draw3D=true</code>) as if it were illuminated by a light source. Not available.
+
* <code>Depth, Draw3D</code>: In 3d view, allows to extrude symbols into depth (as specified by <code>Depth</code>); only available of <code>Style = psRectangle</code>. Not available in TAChart.
 
+
* <code>Emboss</code>: Upward-directed shadow, see [[#TTeeShadow_and_TTeeEmboss|<code>TTeeEmboss</code>]]. Not supported.
* <code>Depth, Draw3D</code>: in 3d view, allows to extrude symbols into depth (as specified by <code>Depth</code>); only available of <code>Style = psRectangle</code>. Not available in TAChart.
+
* <code>Gradient</code>: See [[#TTeeGradient|<code>TTeeGradient</code>]]. No gradient support in TAChart
 
 
* <code>Emboss</code>: Upward directed shadow, not supported.
 
 
 
* <code>Gradient</code>: No gradient support in TAChart
 
 
 
 
* <code>HorizSize, VertSize</code>: Size of the data symbol, like in TAChart.
 
* <code>HorizSize, VertSize</code>: Size of the data symbol, like in TAChart.
 +
* <code>InflateMargins</code>: Automatically increases the extent of the chart such that the symbols at the edge are not clipped. Not available in TAChart, but can be achieved manually by increasing the chart's <code>Margins</code>.
 +
* <code>Pen</code>: Parameters used to draw the outline of the symbol, see [[#TChartPen|<code>TChartPen</code>]]. Like in TAChart.
 +
* <code>Shadow</code>: See [[#TTeeShadow_and_TTeeEmboss|<code>TTeeShadow</code>]]. No shadow support in TAChart
 +
* <code>Style = (psRectangle, psCircle, psTriangle, psDownTriangle, psCross, psDiagCross, psStar, psDiamond, psSmallDot, psNothing, psLeftTriangle, psRightTriangle, psHexagon)</code>: Geometrical shape used for the pointer symbol, like in TAChart with slightly different options.
 +
* <code>Transparency</code>: Percentage of transparency which allows to see the background underneath the symbols. Not supported, transparency of the entire series is controlled by the corresponding property of the series.
 +
* <code>Visible</code>: Shows/hides the point symbols. In TAChart, use the property <code>ShowPoints</code> of the series.
  
* <code>InflateMargins</code>: automatically increases the extent of the chart such that the symbols at the edge are not clipped. Not available in TAChart, but can be achieved manually by increasing the chart's <code>Margins</code>.
+
=== Events ===
  
* <code>Pen</code>: Parameters used to draw the outline of the symbol. Like in TAChart.
+
== TeeChart's TBarSeries ==
 
+
=== Public methods ===
* <code>Shadow</code>: No shadow support in TAChart
+
=== Properties ===
 
+
[[file:TeeChart_TBarSeries_properties.png|right]]
* <code>Style = (psRectangle, psCircle, psTriangle, psDownTriangle, psCross, psDiagCross, psStar, psDiamond, psSmallDot, psNothing, psLeftTriangle, psRightTriangle, psHexagon)</code>: Geometrical shape used for the pointer symbol, like in TAChart with slightly different options.
+
Only those properties will be discussed here which were not mentioned in TLineSeries.
 
+
* <code>AutoBarSize:</code>: Determines if the series bars calculate their width automatically based on the minimum and maximum bar values. <code>False</code> by default, meaning that the bar size is calculated using the number of bar points instead of bar values. Not available.
* <code>Transparency</code>: percentage of transparency which allows to see the background underneath the symbols. Not supported, transparency of the entire series is controlled by the corresponding property of the series.
+
* <code>AutoMarkPosition:</code>: Controls if marks will be repositioned if there's the possibility of mark overlapping. Marks are displaced to the top of the bars to minimize the overlapping effect of marks with long text or big font sizes. When <code>false</code>, no checking is performed and all marks are drawn at their <code>Mark.ArrowLength</code> distance to the top of the bar. Does not work perfectly. Not available.
 +
* <code>BarBrush</code>: Defines how the bars are filled. When <code>BarBrush.Style</code> is different from <code>bsSolid</code>, the <code>SeriesColor</code> is the bar ''background'' color. Like TAChart, except that <code>BarBrush.Color</code> is the same as <code>SeriesColor</code>; this is the bar ''foreground'' color if <code>Style <> bsSolid</code>; there is no way to change the background color.
 +
* <code>BarPen</code>: Pen used to draw the bar border, see [[#TChartPen|<code>TChartPen</code>]]. Like TAChart. The <code>Visible</code> property of TeeChart is not supported, but can be emulated by setting <code>Style = psClear</code>.
 +
* <code>BarRound = (brNone, brAtValue, btBothEnds)</code>: Determines which end of the bar is rounded if <code>BarStyle = brRoundRectangle</code>. Not available.
 +
* <code>BarStyle = (bsRectangle, bsRoundRectangle, bsPyramid, bsInvPyramid, bsCilinder, bsEllipse, bsArrow, bsRectGradient, bsCone, bsBevel, bsSlantCube, bsDiamond, bsInvArrow, bsInvCone, bsCustom)</code>: Shape used to draw bars. <code>bsSlantCube</code> is mostly useful only in 3D where it corresponds to <code>bsRectangle</code>, but is rotated around the vertical axis. Not available, TAChart only draws rectangles.
 +
* <code>BarWidth</code> (runtime and read-only): Indicates bar width in pixels (in case of <code>THorizBarSeries</code> the corresponding property is <code>BarHeight</code>). In TAChart use the function <code>GetBarWidth(BarIndex:Integer)</code>.
 +
* <code>BarWidthPercent</code>: Determines the bar width expressed as percentage of the space available per bar (<code>BarWidthPercent = 100</code>: joined bars; <code>BarWidthPercent = 50</code>: bar width equal to spacing). Similar to TAChart which, however, allows to control bar width also by <code>BarWidthStyle</code>.
 +
* <code>BevelSize</code>: Pixels of bar bevel, used only when <code>BarStyle</code> property is <code>bsBevel</code> (only in 2D and 3D orthogonal display modes). Not available in TAChart.
 +
* <code>CustomBarWidth</code>: Determines the fixed bar width in pixels. Not supported.
 +
* <code>DepthPercent</code>: Defines the percentage the bars will need in the ''z'' direction (into the screen); for 3D only. Not available.
 +
* <code>Gradient, GradientRelative</code>: Gradient parameters for <code>BarStyle = bsRectGradient</code>, see [[#TTeeGradient|<code>TTeeGradient</code>]]. If <code>GradientRelative = true</code> the gradient of the longest bar is applied to all other bars, if <code>false</code> all bars show the full gradient independent of their length. No gradient support in TAChart.
 +
* <code>MarksLocation = (mlStart, mlCenter, mlEnd), MarksOnBar</code>: if <code>MarksOnBar = true</code>, <code>MarksLocation</code> controls the position of the marks at the bottom, center, top of the bars (inside). <code>YOrigin</code> is ignored for marks position in case of <code>mlStart</code>. If <code>MarksOnBar = false</code>, marks are always above the top. TAChart has a similar property <code>MarkPositions</code> which behaves slightly different. <code>mlCenter</code> is not supported.
 +
* <code>MultiBar = (mbNone, mbSide, mbStacked, mbStacked100, mbSideAll, mbSelfStack)</code>: If there are more than one <code>TBarSeries</code> in the same chart, the property determines if they will be drawn side-by-side, back-to-front or stacked. <code>mbSideAll</code> means that all bars of the first group are drawn next to each other, then those of the second group, etc. <code>mbSelfStack</code> is effectively like <code>mbSideAll</code> except that the bars are stacked. Property not available in TAChart, but some multi-bar effects (<code>mbSide, mbStacked, mbStacked100</code>) can be achieved by multi-valued series and <code>TChartStyles</code>.
 +
* <code>OffsetPercent</code>: Indicates the bar displacement in percentage of bar size. Can be used to create "overlayed" bar charts. In TAChart: <code>BarOffsetPercent</code>.
 +
* <code>SideMargins: boolean</code>: Controls if first and last displayed bar will be separated from the chart rectangle. Property not supported in TAChart, but you can use <code>Chart.Margins</code> to get the same effect.
 +
* <code>StackGroup: Integer</code>: Index which groups series when applying the <code>MultiBar</code> property. In TAChart a multi-bar chart is created from a single series using a multi-valued source and <code>TChartStyles</code>, instead of multiple series grouped by <code>StackGroup</code>.
 +
* <code>TickLines</code>: Pen used to display lines in front of bars at the height of each y axis grid line. See [[#TChartPen|<code>TChartPen</code>]]. Not available in TAChart.
 +
* <code>UseYOrigin, YOrigin</code>: <code>YOrigin</code> determines the axis value used as a common bottom for all bars. <code>UseYOrigin</code> must be <code>true</code> (the default) to use <code>YOrigin</code>, otherwise <code>YOrigin</code> is effectively 0. Bars with a value bigger than <code>YOrigin</code> are drawn in one direction and bars with a lower value are drawn in the opposite direction. In TAChart: use <code>ZeroLevel</code> instead of <code>YOrigin</code>; <code>UseYOrigin</code> is not available, but works like <code>true</code>.
  
* <code>Visible</code>: Shows/hides the point symbols. In TAChart, use the property <code>ShowPoints</code> of the series.
+
== TeeChart's THorizBarSeries ==
 +
TAChart does not support this series type. But it can be easily derived from TBarSeries by interchanging its properties <code>AxisIndexX</code> and <code>AxisIndexY</code>.
  
=== Events ===
+
[[Category:Components]]
 +
[[Category:Graphics]]
 +
[[Category:TAChart]]

Revision as of 00:02, 24 November 2018

Introduction

This page contains a brief comparison of properties and methods between (trunk version of) Lazarus TAChart package and TeeChart Standard package which comes with Delphi XE2.

It can be used as a guide when porting applications from Delphi, as well as a source of inspiration for future TAChart development.

See also TAChart_documentation#TeeChart_compatibility.

A note on the structure of this document: Because it is intended to help porting applications from TeeChart to TAChart the basis of this comparison will be TeeChart. We will list the TeeChart methods and properties, give a short description based on the help file or own experiments and experience, and discuss the differences to TAChart and how they can be resolved. If a feature is not available in TAChart we will often use short statements like "not available" without giving reference to TAChart.

Shared TeeChart classes

In this section, we compare classes used by TeeChart at several places in various other classes.

TChartPen

TeeChart TChartPen properties.png

In addition to TChartPen, TeeChart uses also descendants with slightly different default settings, like

  • TAxisGridPen with Color = clGray and a new properties DrawEvery and ZPosition
  • TChartAxisPen with Width = 2
  • TChartHiddenPen with Visible = false
  • TWhitePen with Color = clWhite

Here are the properties of TChartPen:

  • Color: Like TAChart
  • EndStyle: Like TAChart's EndCap
  • Mode: Like TAChart
  • SmallDots: Overrides Style for drawing a dotted line with narrow dots at a distance given by SmallSpace.
  • Style: Like TAChart
  • Visible: Not availabe in TAChart, Visible=false can be replaced by Style = clClear.
  • Width: Like TAChart

TTeeFont

TeeChart TTeeFont properties.png
  • Charset: Standard TFont property
  • Color: Standard TFont property
  • Depth: ???, not available in TAChart.
  • Emboss: Upward-directed shadow, see TTeeEmboss. Not available.
  • Gradient: Draws characters with gradient, see TTeeGradient. No gradient support in TAChart.
  • Height: Standard TFont property.
  • InterCharSize: Integer: Defines the width of the character-to-character spacing. Not available.
  • Name: Standard TFont property.
  • Orientation: Standard TFont property.
  • Outline: Pen used to draw a border around font. To be used with big font sizes (for example 30). Not supported.
  • Picture: Defines a picture to be filled into the font region. Not supported.
  • Pitch: Standard TFont property.
  • Quality: Standard TFont property.
  • Shadow: Shadow drawn underneath the characters. See TTeeShadow. Not supported.
  • Size: Standard TFont property.
  • Style: Standard TFont property.

TTeeGradient

TeeChart TTeeGradient properties.png

TAChart does not support gradients at the time of this writing. Here is a reference of the properties that are published for TeeChart:

  • Angle: Rotation angle of gradient, in degrees.
  • Balance: Determines the preference of use between gradient start and end colors.
  • Direction = (gdTopBottom, gdBottomTop, gdLeftRight, gdRightLeft, gdFromCenter, gdFromTopLeft, gdFromBottomLeft, gdRadial, gdDiagonalUp, gdDiagonalDown): Gradient direction and type.
  • EndColor, MidColor, StartColor: The gradient fill depends three colors: StartColor, MidColor and EndColor. For a 2-color gradient, set MidColor=clNone. MidColor seems to be ignored for non-rectangular gradients.
  • RadialX, RadialY: Offset in pixels to displace the gradient radial center.
  • SubGradient: Applies a secondary (superimposed) gradient to the gradient area. Has the same properties as TTeeGradient except for another SubGradient.
  • Visible: Turns gradient on/off.

TTeeShadow and TTeeEmboss

TeeChart TTeeShadow properties.png

TTeeShadow and TTeeEmboss have the same properties. The shadow of TTeeShadow points down-right, that of TTeeEmboss up-left.

TAChart does not support shadows. Here is a reference of the published properties of TeeChart:

  • Clip: Don't know what the clipping boundary is...
  • Color: Shadow color
  • HorizSize, VertSize: Shadow size in horizontal and vertical directions.
  • Smooth, SmoothBlur: Activates/deactivates a soft shadow
  • Transparency: Percentage of how transparent the shadow is.
  • Visible: Turns shadow on and off.

TeeChart's TChart

Public methods

to be written ...

Properties

TeeChart object explorer 1.png
  • Align: Standard VCL/LCL property.
  • AlignWithMargins: VCL property, missing in LCL
  • AllowPanning: Controls built-in panning support (panning directions, turn panning off). TAChart has an equally-named property which only turns built-in panning on/off; further panning control is possible by linking a TChartToolset to the chart.
  • Anchors: Standard VCL/LCL property.
  • Animations: Don't know, a click on the ellipsis button opens the series editor, maybe a feature of TeeChart Professional. Property missing in TAChart.
  • AutoSize: VCL/LCL property of some classes, don't know its effect on the chart, no entry in help file. Not used in TAChart.
  • AxisBehind: Boolean, default true: In 3D view, draws axis in the back wall, behind the series. If false, axes are drawn at the front wall, before the series. Property missing in TAChart, but effect can be achieved by TChartAxis.ZPosition.
  • AxisVisible: Boolean, default true: Turns on/off axis title, marks, ticks, and grid of all axes. The same as with TAChart.
  • BackImage: Allows to add a background image (see also other "BackImage*" properties). No image support in TAChart.
  • BackImageInside: Boolean, default false: If true the BackImage is drawn in the rectangle defined by the axes or frame, otherwise it is a background image of the entire chart. No image support in TAChart.
  • BackImageMode: Defines the way the image is drawn/repeated on the background, options (pbmStretch, pbmTile, pbmCenter, pbmCustom). No image support in TAChart.
  • BackImageTransp: Boolean, default false: If true the transparency is that of a TBitmap, i.e., the transparent color is taken from the left-bottom pixel of the image. If BackImage is an icon, BackImageTransp is true and cannot be changed. No image support in TAChart.
  • BackWall: See separate chapter on TChartBackWall. Missing in TAChart.
  • BevelInner, BevelOuter, BevelWidth: Bevel parameters like those of a TPanel -- TeeChart's TChart inherits from TCustomPanel. Missing in TAChart.
  • Border: A frame around the entire chart. See TChartPen, Visible = false by default. Not available.
  • BorderRound: If greater than 0 the Border is drawn as a RoundRect with this radius. Not available.
  • BorderWidth: Seems to have the same effect as the LCL's BorderSpacing.Around
  • BottomAxis: See TChartAxis.
  • BottomWall: See separate chapter on TChartBottomWall. Missing in TAChart.
  • Chart3DPercent: Ratio between chart dimensions and chart depth Chart.View3D is true. Similar to TAChart's property Depth of chart and some series.
  • ClipPoints: boolean, default true: Toggles the drawing of series points within chart boundaries, preventing other chart regions from being overwritten. Not available in TAChart, works as always true.
  • Color: Background color of entire chart, the same as with TAChart.
  • Constraints: Standard VCL / LCL property.
  • Cursor: Standard VCL / LCL property.
  • CustomAxes: List of axes. Similar to TAChart's AxisList which, however, contains also the default axes.
  • CustomHint: ???, not available in TAChart
  • DepthAxis: Characteristic of the bottom-right axis in 3D chart, see separate chapter on TChartDepthAxis. TAChart does not have a depth axis in 3D charts.
  • DepthTopAxis: Characteristics of the left-top axis in 3D chart, see separate chapter on TChartDepthAxis. Missing in TAChart.
  • DockSite: Enables Docking, not supported by LCL and TAChart.
  • DragCursor, DragMode: Drag and Drop support, standard VCL/LCL property.
  • Emboss: See TTeeEmboss. Some kind of upward shadow of entire chart background, not available.
  • Enabled: Not in help file, at least, turns off zooming and panning.
  • Foot: See TChartTitle. Like in TAChart.
  • Frame: See TChartPen. Like in TAChart.
  • Gradient: See TTeeGradient. Draws a gradient behind the entire chart. No gradient support in TAChart.
  • Height: Standard VCL/LCL property.
  • HelpContext, HelpKeyword, HelpType: Standard VCL property.
  • Hint: Standard VCL/LCL property.
  • Left: Standard VCL/LCL property.
  • LeftAxis: See TChartAxis.
  • LeftWall: See separate chapter on TChartLeftWall, describes left wall of 3D charts. Missing in TAChart.
  • Legend: See TChartLegend, describes legend parameters, like in TAChart.
  • LiveBindings: New VCL properties introduced in Delphi XE2. Not supported by LCL and TAChart.
  • Locked: ???, missing in TAChart
  • MarginBottom, MarginLeft, MarginRight, MarginTop: Margin between "Border" and Axis, corresponds to TAChart's MarginExternal.
  • MarginUnits = (muPercent, muPixels): According to the help file: "When MarginUnits is muPercent, chart margins are calculated as percentage of total chart width and height. Percent margins are useful to obtain the same margin proportions, no matter the chart size." TAChart supports margin only in pixels.
  • Margins: Standard VCL property, in combination with AlignWithMargins. Like LCL's BorderSpacing.
  • Monochrome: If true, turns off colors and renders chart in grayscale. Not supported.
  • Name: Standard VCL/LCL property
  • Pages: Accesses pages for a multi-page chart. Not supported.
  • Panning: Properties for built-in panning support. Not available in TAChart, default panning by right mouse button, parameters, can be changed by means of chart tools.
  • ParentColor: Standard VCL/LCL property.
  • ParentCustomHint: ???, missing in TAChart.
  • ParentShowHint: Standard VCL/LCL property.
  • PopupMenu: Standard VCL/LCL property.
  • PrintProportional: No direct correspondence, in TAChart printing can be done as described here.
  • RightAxis: See TChartAxis.
  • RightWall: See separate chapter on TChartLeftWall, describes left wall of 3D charts. Not available.
  • ScrollMouseButton: Sets the button that will trigger scrolling when pressed. TAChart does not have built-in scrolling support, effect can be achieved by chart tools.
  • SeriesGroups: According to the help file: "Chart Series can be grouped. Series groups can optionally be displayed at the chart editor. The main purpose of groups is to have an easy way to show or hide multiple series, that is, show or hide individual groups of series." Not available in TAChart.
  • SeriesList: Grayed out. In TAChart accessible as property Series.
  • Shadow: See TTeeShadow. No shadow support in TAChart.
  • ShowHint: Standard VCL/LCL property.
  • SubFoot: See TChartTitle. TeeChart allows for a second footer, TAChart does not.
  • SubTitle: See TChartTitle. TeeChart allows for a second title, TAChart does not.
  • TabOrder, TabStop, Tag: Standard VCL/LCL properties.
  • Title: See TChartTitle. Similar to TAChart.
  • Tools: Property is disabled in TeeChart Standard. Chart tools are an essential part of TAChart.
  • Top: Standard VCL/LCL property.
  • TopAxis: See TChartAxis. Parameters for second x axis above the chart. Property not available in TAChart, but can be accessed by AxisList in object tree.
  • Touch: Touch gestures are not supported by Lazarus.
  • UseDockmanger: Docking is not supported by Lazarus.
  • View3D, View3DOptions, View3DWalls: Details on 3D charting. In TAChart, 3D effect can only be achieved by Depth properties of chart and some series.
  • View3DOptions: Not supported.
  • View3DWalls: Draw left and bottom "walls" to simulate 3D effect. Not available.
  • Visible: Standard VCL/LCL property.
  • Width: Standard VCL/LCL property.
  • Zoom: Parameters to define the built-in zooming. Property not available in TAChart, but effect can be achieved by chart tools.

Events

to be written ...

TeeChart's TChartTitle

Public methods

to be written ...

Properties

TeeChartTitle object explorer.png
  • AdjustFrame: Controls if chart title and foot frames will be resized to full chart dimensions or to the title text width. Not available.
  • Alignment: The same as with TAChart.
  • Bevel, BevelWidth: Defines a bevel around the Title. Not available.
  • Brush: Corresponds to the Brush object that is used to fill the shape interior. Usage is a bit confusing, because there is also a separate Color property, and within the Brush there are BackColor and Color properties again. Brush.Style=bsDiagCross uses Title.Brush.Color as background, Title.Color as foreground color. What is Brush.BackColor for?
  • Color: Background color of the title. In TAChart, use Brush.Color.
  • CustomPosition: boolean: If true, title can be positioned by Left and Top properties. Not supported.
  • Emboss: See TTeeEmboss. Some kind of upward-directed shadow. Not supported.
  • Font: See TTeeFont. Similar to TAChart
  • Frame: TChartPen: A frame around the title, see TChartPen. Very similar to TAChart.
  • Gradient: Allows to fill the title background with a gradient, see TTeeGradient. No gradient support in TAChart.
  • Left, Top: Distance of title from chart edge, used if CustomPosition=true. Not available.
  • Picture: Background picture for the title. No picture support in TAChart.
  • Shadow: Shadow parameters. See TTeeShadow. No shadow support in TAChart.
  • ShapeStyle = fosEllipse, fosRectangle, fosRoundRectangle: Title shape, like TAChart's Shape which has more options.
  • Text: Like TAChart
  • TextFormat = (ttfNormal, ttfHTML): Allows HTML formatting in the title. Available in Lazarus v1.8 or newer as enumeration (tfNormal, tfHTML).
  • Transparency = 0..100: Defines how much of the background is visible through the title (as percentage). Not available in TAChart.
  • Transparent: boolean: If true only the text is visible, all decorating elements are turned off. Missing in TAChart.
  • Visible: Show/hides title, like in TAChart.

TeeChart's TChartLegend

Public methods

to be written ...

Properties

TeeChart TChartLegend properties.png
  • Alignment: Defines location of legend, laLeft, laRight, laTop, laBottom. Top- and bottom-aligned legends are automatically drawn as row. The same property in TAChart has more options. Top- and bottom-aligned legends are still column-oriented, multicolumn legends can be achieved by property ColumnCount, and column-to-row ordering can be changed by ItemFillOrder.
  • Bevel, BevelWidth: Define the bevel around the legend, like that of a panel. Not available in TAChart.
  • Brush, Color: Defines parameters how to fill the background of the legend. TAChart has a BackgroundBrush property which behaves slightly different. The background color, e.g., is set by BackgroundBrush.Color, while TeeChart uses the property Color.
  • Checkboxes: Enables/disabled display of checkboxes or radiobuttons for each legend item. Not available in TAChart, but TChartListbox can be a replacement.
  • CheckboxesStyle = (cbsCheck, cbsRadio): Not available in TAChart, but the legend can be replaced by a TChartListbox where you can select the property CheckStyle.
  • ColorWidth: Defines percentage of width of color rectangle associated with each legend item. Like SymbolWidth in TAChart which is in pixels, though.
  • CurrentPage: Boolean: When chart is divided into several pages this property, if true, displays only the items for the current page. No page support in TAChart.
  • CustomPosition, Left, LeftPercent, Top, TopPercent, PositionUnits: If CustomPosition = true legend positioning can be fine-tuned by Left and Top properties (if PositionUnits = muPixels), or by LeftPercent and TopPercent (if PositionUnits = muPercent). Not available.
  • DividingLines: Sets the pen attributes of optional lines that divide individual legend items. Corresponds to GridHorizontal and GridVertical in TAChart.
  • Emboss: TTeeEmboss: See TTeeEmboss. Parameters for some kind of upward shadow. Absent in TAChart.
  • FirstValue: Integer: Defines the index of the first value to be displayed in the legend, can be used to display a specific sub-set of series or points in the legend. Not available in TAChart, but series have a Legend property which controls if or how the series is shown in the legend.
  • Font: See TTeeFont. Similar to TAChart.
  • FontSeriesColor: Boolean: If true the legend item text is drawn in the same color as the series. Not directly available in TAChart, but effect can be achieved by handling the OnDraw event of the series.Legend.
  • Frame: See TChartPen. Similar to TAChart.
  • Gradient: See TTeeGradient. No background gradient support in TAChart.
  • HorizMargin, VertMargin: Specifies the number of screen pixels between legend and chart rectangle. In TAChart, use properties MarginX and/or MarginY.
  • Inverted: Legend items are drawn in the order first to last, or last to first. Available in TAChart since version 1.7. In addition to Inverted, the order of series in the legend is defined by the series' property Legend.Order (this does not work if the Legend.Multiplicity of the series is lmStyle).
  • LegendStyle = (lsAuto, lsSeries, lsValues, lsLastValues, lsSeriesGroups): lsSeries draws series titles (the same as lsAuto, lsValues draws values of first visible series, lsLastValues draws the last value of each active series, lsSeriesGroups: ???. In TAChart, drawing of series values or series titles can be activated per series by the series property Legend.Multiplicity.
  • MaxNumRows: 0 means "all rows". Not available in TAChart, but series may be excluded from the legend by setting their Legend.Visible to false.
  • Picture: Background picture of the legend. No picture support in TAChart.
  • ResizeChart: Determines whether or not the legend reduces the chart rectangle to prevent overlap between legend and chart rectangles. In TAChart, use UseSidebar.
  • RoundSize: Integer: Corner radius for rounded rectangle frame (see property ShapeStyle). Not available in TAChart.
  • Shadow: See TTeeShadow. No shadow support in TAChart
  • ShapeStyle = (fosRectangle, fosRoundRectangle, fosEllipse): Shape of the legend. TAChart supports only rectangular shapes for the legend.
  • Symbol: Parameters that define how the series symbol is displayed in the legend, see TLegendSymbol.
  • TextStyle = (ltsPlain, ltsLeftValue, ltsRightValue, ltsLeftPercent, ltsRightPercent, ltsXValue, ltsValue, ltsPercent, ltsXAndValue, ltsXAndPercent): ltsPlain displays point label, ltsLeftValue displays point value plus point label, etc, similar to TAChart's series property Marks.Style. But TAChart has no independent style of legend and series marks. However, the event handler for the series' Legend.OnCreate can be used to define the legend text in any way.
  • TextSymbolGap: Distance between text and symbol. Not available in TAChart.
  • Title: Text box to show at legend's top. In TAChart, effect can be achieved by means of Legend.GroupTitles.
  • TopPos: Specifies the Legend's top (or left) position as a percentage of the total chart height (or width). When the Alignment property is laLeft or laRight (vertical legend), the TopPos property increments the top legend position by this percentage of the total chart height. For laTop or laBottom legend alignments (horizontal legend), it increments the legend's left position. Not available in TAChart.
  • Transparency: Sets percent transparency of the legend. Not available.
  • Transparent: Turns on/off decorating elements liks frame, shadow etc. Property not supported in TAChart, but effect can be achieved by handling elements individually.
  • Visible: The same as with TAChart.

TLegendSymbol

TeeChart TLegendSymbol properties.png
  • Continuous: effect unclear. Not available in TAChart.
  • DefaultPen: if DefaultPen = true the pen of the series is used to draw the line in the symbol (e.g. line segments for TLineSeries, border of bars for TBarSeries, etc). Otherwise the lines are draw as specified by Pen. DefaultPen is not available in TAChart. LineSeries work as if DefaultPen = true, others as if DefaultPen = false, the pen parameters are in SymbolFrame.
  • Emboss: See TTeeEmboss. Not supported in TAChart.
  • Gradient: See TTeeGradient. No gradient support in TAChart.
  • Position = (spLeft, spRight): Position of the symbol with respect to the text. Not available.
  • Shadow: SeeTTeeShadow: No shadow support.
  • Squared: if true the Width parameter is ignored and the symbol is drawn in a square defined by the lineheight of the legend items. Not available.
  • Visible: Shows/hides legend symbols in legend. Not available.
  • Width, WidthUnits = (lcsPixels, lcsPercent): Width of the legend symbol. SymbolWidth in TAChart, in Pixels.

TeeChart's TChartAxis

Public methods

to be written ...

Properties

TeeChart TChartAxis properties.png
  • Automatic, AutomaticMaximum, AutomaticMinimum: Automatic range finding, or if off, use Maximum and/or Minimum for axis ends. In TAChart, use Range.
  • Axis: Defines how the axis line is drawn. Its class TChartAxisPen has the same properties as TChartPen. In TAChart, use AxisPen.
  • AxisValuesFormat: Format mask for FormatFloat that defines the format of the axis labels (default: #,##0.###). In TAChart, use Marks.Format, default: %0:.9g.
  • DateTimeFormat: Defines how date/time values are formatted. No direct equivalent in TAChart. Effect can be created by TDateTimeChartSource or TListChartSource.
  • EndPosition, StartPosition: Defines the percentage position of chart width or height where the axis begins and ends. Left and Top are 0,0 positions. No 1:1 equivalent in TAChart, but effect can be achieved by Range.
  • ExactDateTime: boolean: Useful when placing date/time ticks e.g. at the first of each month such that the tick distance is the number of days per month. Missing in TAChart. Can be achieved with some coding using a TListChartSource.
  • Grid: Parameters to draw the axis grid. See TChartPen for details. TAChart's Grid is equivalent, the subproperty DrawEvery:integer which allows to skip every other grid line is not directly supported, by may be emulated by using Axis.Marks.Stripes.
  • GridCentered: boolean: Draws axis grid line between label positions. Not available.
  • Horizontal: Boolean: Equivalent to TAChart's Alignment.
  • Increment: Double: Distance between axis labels. If 0 the distance is determined automatically. In TAChart automatic label positioning is controlled by property Intervals.
  • Inverted: If true> the axis runs into reverse direction. Same as with TAChart.
  • Labels: Turns axis labels on and off. In TAChart: Marks.Visible
  • LabelsAlign: If alDefault labels of vertical axes are aligned towards the axis line (left axis: right-aligned), if alOpposite they are aligned away from the axis line (left axis: left-aligned). Not supported.
  • LabelsAlternate: If true labels for horizontal are offset vertically, one near axis, the next one a line deeper. Not available.
  • LabelsAngle: Rotation angle of labels in degrees. Like TAChart's Marks.LabelFont.Orientation which is in tenths of degrees, though.
  • LabelsBehind: ???
  • LabelsExponent: Controls axis labels in exponent format: if true Exponent is in super-script font, else in scientific notation. Not available in TAChart.
  • LabelsFont: Font of labels. See TTeeFont. Like TAChart's Mark.LabelFont which has less subproperties, though.
  • LabelsMultiLine: Allows multi-line labels. No direct correspondence in TAChart, but effect can be achieved by event OnMarkToText.
  • LabelsOnAxis: Controls if labels at axis minimum and maximum positions will be shown or not. Not available in TAChart, effect can be partially achieved using Marks.Range property.
  • LabelsSeparation: Specifies the percent amount of minimum distance between labels. Zero value causes overlapping labels. Not directly available in TAChart, but effect can be partially achieved by Intervals and OverlapPolicy settings.
  • LabelsSize: Size occupied by labels, default 0 means automatic calculation. If not correct, axis title may overlap with labels. In Lazarus since 1.2.8, in older versions no equivalent, always automatic.
  • LabelsStyle = (talAuto, talNone, talPointValue, talText, talValue): Like TAChart's Marks.Style. No correspondence for talAuto, though, which tries to guess the value displayed from the type of axis, e.g. if series has XLabels, then talText will be used.
  • Logarithmic: Enables logarithmic axis scaling. In TAChart no direct correspondence, but effect can be achieved by means of AxisTransformations and Axis.Intervals.
  • LogarithmicBase: Base for logarithmic scaling. In TAChart, property is found in the transformation TLogarithmAxisTransform needed to achieve logarithmic scaling.
  • MaximumOffset, MinimumOffset: Pixels that will be left as a margin at axis maximum or minimum positions. In TAChart: TChart.Margins.Right or Margins.Left, MarginsForMarks = true for automatic calculation.
  • MaximumRound, MinimumRound: Rounds axis maximum or minimum to the next integer. Not available in TAChart.
  • MinorGrid: Parameters to define minor grid. Use property Minors[n].Grid.
  • MinorTickCount: Number of minor ticks between two major ticks. Use Intervals property of Minors[n].
  • MinorTickLength: Length of minor ticks. In TAChart, the property is Axis.Minors[n].TickLength; there is also an TickInnerLength which TeeChart does not have.
  • MinorTicks: Parameter to define minor ticks. Use property Minors[n].
  • OtherSide: If true axis is drawn on the opposite side of the chart. In TAChart, change the Alignment of the axis correspondingly.
  • PartnerAxis: ???
  • PositionPercent: Percentage of chart width or height the axis is moved into the drawing area. In TAChart, use Position and PositionUnits=cuPercent.
  • RoundFirstLabel: Rounds the first label to a "nice" number (default: true). In TAChart, label positioning is determined by Intervals subproperties.
  • TickInnerLength: Like with TAChart
  • TickOnLabelsOnly: From the help file: "... sets the axis ticks and axis grid to be drawn only to coincide at labels. Otherwise they will be drawn at all axis increment positions. When the axis LabelsSeparation property is greater than 0 (default 10), axis increases the increment property to avoid axis label overlap." Seems not be available in TAChart.
  • Ticks, TicksInner: Determines drawing of the outer and inner ticks (Color, EndStyle, Mode, Style, Visible, Width, etc). In TAChart only TickColor.
  • Title: Defines the axis title - see TChartAxisTitle. TAChart has the same property but with less sub-properties; the main difference is that TAChart's Visible defaults to false.
  • TitleSize: Distance between title and chart border (?). 0 --> automatic determination. Use Margin property in TAChart.
  • UsePartnerAxis: No effect in TeeChart Standard. No equivalent in TAChart.
TeeChart TChartAxisTitle properties.png
  • Visible: Like in TAChart.
  • ZPosition: Like in TAChart.

TChartAxisTitle properties

Here is a description of properties that have not yet been explained in TChartTitle.

  • Angle: Rotation angle of title, in degrees. In TAChart, use Title.LabelFont.Orientation which is in tenths of degrees.
  • Caption: Text to be displayed as axis title. Same as in TAChart.
  • Pen: Defines parameters that draw the frame around the title, see TChartPen. In TAChart, use Frame.
  • RoundSize: Corner radius of rounded rectangle if ShapeStyle = fosRoundRectangle. Not available.
  • Visible: Toggles the axis title. Same as in TAChart where the title is off by default.

TeeChart's TLineSeries

Public methods

Properties

TeeChart TLineSeries properties.png
  • Active: Shows/hides series, like in TAChart.
  • Brush: Used in 3d view to paint the band of the line series. Not available in TAChart.
  • ClickableLine: Determines if series accepts mouse clicks over the line segment drawn between points. Not available.
  • ColorEachLine: If ColorEachPoint is true, determines if the connecting lines of a lineseries will also be displayed using a different color for each line segment. In TAChart, this corresponds to the setting ceLineAfter or cePointAndLineAfter of property ColorEach; in addition there are additonal options to colorize the preceding line segment.
  • ColorEachPoint: If false, all points will be drawn using the SeriesColor property. If true, each series point will be colored with its corresponding point color. In TAChart, assign colors to each ChartDataItem by calling ListSource.SetColor. Further control is given by the property ColorEach which can be set to colorize the data point only and/or the neighboring line segments (see also Delphi's ColorEachLine).
  • ColorSource: Used only when connecting a series to a database dataset or datasource. Must be a valid database field name. Not supported.
  • Cursor: Shown when the mouse moves sufficiently close to the series. Not suppored in TAChart.
  • Dark3D: In 3d view, draws band of lineseries darker and brighter depending on orientation to light source. Not supported.
  • DataSource: A TChartSeries can be optionally connected to a "point data provider" (or DataSource) which may be another series, TDataset derived class, or "TTeeSeriesSource". Concept similar to TAChart's chart sources.
  • Depth: In 3d view, depth of the band drawn. Like in TAChart.
  • Emboss: Upward-directed shadow. See TTeeEmboss. Not supported in TAChart.
  • Gradient: Gradient drawn across depth of the 3d band, see TTeeGradient. Not supported.
  • HorizAxis = (aTopAxis, aBottomAxis, aBothHorizAxis, aCustomHorizAxis): Identifies which horizontal axis is used. Similar to TAChart's AxisIndexX.
  • InvertedStairs: Alter the direction of the stairs. In TAChart, like LineType = ltStepYX.
  • LegendTitle: Title to be used in legend, different from default Title. Not available in TAChart which normally uses Title only, but legend text can be altered from Title by event Legend.OnCreate.
  • LineBrush: Defines the brush style used to fill lineseries band in 3d view. Identical to Brush.Style. Not supported in TAChart.
  • LineHeight: Thickness of the band drawn in 3d view. Not supported.
  • LinePen: Pen parameters used to draw the line series in 2d view. See TChartPen. Like TAChart.
  • Marks: Defines all necessary properties to draw a mark near to each series point, see TSeriesMarks. Similar to TAChart (which has less options).
  • Name: Standard VCL/LCL property
  • Outline: Determines an additional pen used to display a "border" or "outline" around a lineseries. Not available.
  • ParentChart: Chart to which the series belongs. In TAChart, readonly and public.
  • PercentFormat: Standard formatting string specifier used to draw the series marks in percent style. In TAChart, use Marks.Format.
  • Pointer: Parameters to draw data points, see TSeriesPointer. Similar to TAChart which has less options.
  • SeriesColor: Color of the series, like in TAChart.
  • Shadow: See TTeeShadow. No shadow support in TAChart.
  • ShowInEditor: Shows/hides series in chart editor. Not available.
  • ShowInLegend: Shows/hides series in legend. Use Legend.Visible in TAChart.
  • Stacked = (cssNone, cssOverlap, cssStack, cssStack100): Stacking of series. In TAChart, use multi-valued source.
  • Stairs: boolean: Connects data paints by line segments (false) or stairs (true). In TAChart is is controlled by LineType=ltFromPrevious, or LineType = ltStepXY or ltStepYX, respectively.
  • Tag: Standard VCL/LCL property
  • Title: Text to identify the series in the legend. Same with TAChart.
  • Transparency: Percent transparency of the series. The same in TAChart, but values are between 0 and 255.
  • TreatNulls: Not available, but TAChart works like tnSkip:
    • tnDontPaint: Line from non-null to null point is displayed, line from null to non-null is not displayed
    • tnSkip: Lines between a non-null point and the null point and the next non-null point are not displayed.
    • tnIgnore: Treats all points as non-nulls.
  • ValueFormat: Standard formatting string specifier used to draw the series Marks.
  • VertAxis = (aLeftAxis, aRightAxis, aBothVertAxis, aCustomVertAxis): Identifies which vertical axis is used. Similar to TAChart's AxisIndexY.
  • XLabelsSource: Name of a DataSet field that contains the point labels. In TAChart, a DBChartSource is needed.
  • XValues, YValues: Provides information on storage of x and y values. In TAChart, use Source property for this purpose.

TChartValueList

TeeChart TChartValueList properties.png

TAChart does not provide a TChartValueList property. Here is the reference what this class contains in TeeChart.

  • DateTime: tells TeeChart that data values are numbers (false) or date/time values (true). Not available in TAChart. Automatic presentatation of date/time values as axis labels can be achieved by assigning a TDateTimeIntervalChartSource to the axis; date/time series mark texts can be obtained by means of the OnGetMark event of the series.
  • Name: Name of the series, needed when series is used as ValueSource of another series. Not needed in TAChart.
  • Order = (loNone, loAscending, loDescending): Sorting order of the data. In TAChart, sorting is achieved by the chart source, in case of the TListChartSource commonly used for TLineSeries this is the property Sorted.
  • ValueSource: If series is connected to a database then this is the name of a dataset field. If series is connected to another chart, then this is the name of the connected chart. TAChart does support database-sensitive chartsources, but sharing data with other charts is possible only by linking their chart sources.

TSeriesMarks

TeeChart TSeriesMarks properties.png
  • Angle: Rotation angle of marks, in degrees. In TAChart, use Marks.LabelFont.Orientation (which is in tenths of degrees).
  • Arrow: Parameters for the connecting line between mark and data point. Property name is misleading since an arrow head is not drawn by default (only after setting Callout.ArrowHead to a value different from ahNone). This property is called LinkPen, parameters for an arrow head are available under Arrow.
  • ArrowLength: Length of the connecting line between mark and data point. Use Distance in TAChart.
  • BackColor: Background color of the mark. In TAChart, use LabelBrush.Color.
  • Bevel, BevelWidth: Draws a bevel around the mark (like TPanel). Not available.
  • Brush: Parameters to draw the background of the mark. In TAChart, use LabelBrush which has less options, though.
  • CallOut: Parameters to refine the connection line between mark and data point; you can also set the arrow head here. In TAChart, callout-type of connection can be defined by CallOutAngle which is in tenths of degrees; the arrow head is set by property Arrow.
  • Clip: Clips mark labels at the edge of the chart areas. Called Clipped in TAChart.
  • Color: Seems to be the same as BackColor. LinkBrush.Color in TAChart.
  • DrawEvery: Integer: Allows to skip a number of marks to avoid overlap. Not available.
  • Emboss: Upward-directed shadow. See TTeeEmboss. Not supported.
  • Font: Font of the marks text. In TAChart LabelFont.
  • Frame: Parameters for drawing the frame around the mark, see TChartPen. The same as with TAChart.
  • Gradient: See TTeeGradient. No gradient support in TAChart.
  • Margins: Distance between text and frame. The same as with TAChart.
  • MultiLine: Enable/disable multilined marks. Not available in TAChart, but works like true if the mark text contains LineEnding.
  • Picture: No support for background picture in TAChart.
  • Shadow: See TTeeShadow. No shadow support in TAChart.
  • ShapeStyle = (fosEllipse, fosRectangle, fosRoundRectangle): Like TAChart's Shape which has more options.
  • Style = (smsLabel, smsLabelPercent, smsLabelPercentTotal, smsLabelValue, smsLegend, smsPercent, smsPercentRelative, smsPercentTotal, smsPointIndex, smsSeriesTitle, smsValue, smsXValue, smsXY): Like TAChart's Style with slightly different options.
  • Symbol: Adds the series symbol to the mark. Not available.
  • TextAlign: Alignment of text within frame rectangle. Is called Alignment in TAChart.
  • Transparency: Percentage of transparency to see the background underneath the marks. Not available.
  • Transparent: Toggles visual enhancements like frame, shadow, emboss. Not available, same effect can be achieved by toggling elements separately.
  • Visible: Turns marks on/off. The same as in TAChart.

TSeriesPointer

TeeChart TSeriesPointer properties.png
  • Brush: Parameters, how the interior of the symbol is filled. Like in TAChart.
  • Dark3D: Shades faces of the extruded shape (if Draw3D=true) as if it were illuminated by a light source. Not available.
  • Depth, Draw3D: In 3d view, allows to extrude symbols into depth (as specified by Depth); only available of Style = psRectangle. Not available in TAChart.
  • Emboss: Upward-directed shadow, see TTeeEmboss. Not supported.
  • Gradient: See TTeeGradient. No gradient support in TAChart
  • HorizSize, VertSize: Size of the data symbol, like in TAChart.
  • InflateMargins: Automatically increases the extent of the chart such that the symbols at the edge are not clipped. Not available in TAChart, but can be achieved manually by increasing the chart's Margins.
  • Pen: Parameters used to draw the outline of the symbol, see TChartPen. Like in TAChart.
  • Shadow: See TTeeShadow. No shadow support in TAChart
  • Style = (psRectangle, psCircle, psTriangle, psDownTriangle, psCross, psDiagCross, psStar, psDiamond, psSmallDot, psNothing, psLeftTriangle, psRightTriangle, psHexagon): Geometrical shape used for the pointer symbol, like in TAChart with slightly different options.
  • Transparency: Percentage of transparency which allows to see the background underneath the symbols. Not supported, transparency of the entire series is controlled by the corresponding property of the series.
  • Visible: Shows/hides the point symbols. In TAChart, use the property ShowPoints of the series.

Events

TeeChart's TBarSeries

Public methods

Properties

TeeChart TBarSeries properties.png

Only those properties will be discussed here which were not mentioned in TLineSeries.

  • AutoBarSize:: Determines if the series bars calculate their width automatically based on the minimum and maximum bar values. False by default, meaning that the bar size is calculated using the number of bar points instead of bar values. Not available.
  • AutoMarkPosition:: Controls if marks will be repositioned if there's the possibility of mark overlapping. Marks are displaced to the top of the bars to minimize the overlapping effect of marks with long text or big font sizes. When false, no checking is performed and all marks are drawn at their Mark.ArrowLength distance to the top of the bar. Does not work perfectly. Not available.
  • BarBrush: Defines how the bars are filled. When BarBrush.Style is different from bsSolid, the SeriesColor is the bar background color. Like TAChart, except that BarBrush.Color is the same as SeriesColor; this is the bar foreground color if Style <> bsSolid; there is no way to change the background color.
  • BarPen: Pen used to draw the bar border, see TChartPen. Like TAChart. The Visible property of TeeChart is not supported, but can be emulated by setting Style = psClear.
  • BarRound = (brNone, brAtValue, btBothEnds): Determines which end of the bar is rounded if BarStyle = brRoundRectangle. Not available.
  • BarStyle = (bsRectangle, bsRoundRectangle, bsPyramid, bsInvPyramid, bsCilinder, bsEllipse, bsArrow, bsRectGradient, bsCone, bsBevel, bsSlantCube, bsDiamond, bsInvArrow, bsInvCone, bsCustom): Shape used to draw bars. bsSlantCube is mostly useful only in 3D where it corresponds to bsRectangle, but is rotated around the vertical axis. Not available, TAChart only draws rectangles.
  • BarWidth (runtime and read-only): Indicates bar width in pixels (in case of THorizBarSeries the corresponding property is BarHeight). In TAChart use the function GetBarWidth(BarIndex:Integer).
  • BarWidthPercent: Determines the bar width expressed as percentage of the space available per bar (BarWidthPercent = 100: joined bars; BarWidthPercent = 50: bar width equal to spacing). Similar to TAChart which, however, allows to control bar width also by BarWidthStyle.
  • BevelSize: Pixels of bar bevel, used only when BarStyle property is bsBevel (only in 2D and 3D orthogonal display modes). Not available in TAChart.
  • CustomBarWidth: Determines the fixed bar width in pixels. Not supported.
  • DepthPercent: Defines the percentage the bars will need in the z direction (into the screen); for 3D only. Not available.
  • Gradient, GradientRelative: Gradient parameters for BarStyle = bsRectGradient, see TTeeGradient. If GradientRelative = true the gradient of the longest bar is applied to all other bars, if false all bars show the full gradient independent of their length. No gradient support in TAChart.
  • MarksLocation = (mlStart, mlCenter, mlEnd), MarksOnBar: if MarksOnBar = true, MarksLocation controls the position of the marks at the bottom, center, top of the bars (inside). YOrigin is ignored for marks position in case of mlStart. If MarksOnBar = false, marks are always above the top. TAChart has a similar property MarkPositions which behaves slightly different. mlCenter is not supported.
  • MultiBar = (mbNone, mbSide, mbStacked, mbStacked100, mbSideAll, mbSelfStack): If there are more than one TBarSeries in the same chart, the property determines if they will be drawn side-by-side, back-to-front or stacked. mbSideAll means that all bars of the first group are drawn next to each other, then those of the second group, etc. mbSelfStack is effectively like mbSideAll except that the bars are stacked. Property not available in TAChart, but some multi-bar effects (mbSide, mbStacked, mbStacked100) can be achieved by multi-valued series and TChartStyles.
  • OffsetPercent: Indicates the bar displacement in percentage of bar size. Can be used to create "overlayed" bar charts. In TAChart: BarOffsetPercent.
  • SideMargins: boolean: Controls if first and last displayed bar will be separated from the chart rectangle. Property not supported in TAChart, but you can use Chart.Margins to get the same effect.
  • StackGroup: Integer: Index which groups series when applying the MultiBar property. In TAChart a multi-bar chart is created from a single series using a multi-valued source and TChartStyles, instead of multiple series grouped by StackGroup.
  • TickLines: Pen used to display lines in front of bars at the height of each y axis grid line. See TChartPen. Not available in TAChart.
  • UseYOrigin, YOrigin: YOrigin determines the axis value used as a common bottom for all bars. UseYOrigin must be true (the default) to use YOrigin, otherwise YOrigin is effectively 0. Bars with a value bigger than YOrigin are drawn in one direction and bars with a lower value are drawn in the opposite direction. In TAChart: use ZeroLevel instead of YOrigin; UseYOrigin is not available, but works like true.

TeeChart's THorizBarSeries

TAChart does not support this series type. But it can be easily derived from TBarSeries by interchanging its properties AxisIndexX and AxisIndexY.