Difference between revisions of "Comparing TAChart with Delphi's TeeChart Standard"
From Lazarus wiki
Jump to navigationJump to searchm (→Properties) |
|||
Line 1: | Line 1: | ||
+ | == 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. | ||
+ | |||
== TeeChart's TChart == | == TeeChart's TChart == | ||
Revision as of 10:48, 12 October 2012
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.
TeeChart's TChart
Public methods
to be written ...
Properties
Align
: VCL/LCL property, the same as with TAChartAlignWithMargins
: VCL property, missing in LCLAllowPanning
: turns on/off built-in panning support. Not available in TAChart, but effect can be achieved by linking a TChartToolset to the chart.Anchors
: VCL/LCL property, the same as with TAChartAnimations
: 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, no entry in help file. Missing in TAChart.AxisBehind: Boolean
, defaulttrue
: 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
, defaulttrue
: 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). Missing in TAChart.BackImageInside: Boolean
, defaultfalse
: iftrue
theBackImage
is drawn in the rectangle defined by the axes or frame, otherwise it is a background image of the entire chart. Missing in TAChart.BackImageMode
: defines the way the image is drawn/repeated on the background, options (pbmStretch, pbmTile, pbmCenter, pbmCustom). Missing in TAChart.BackImageTransp: Boolean
, defaultfalse
: If true the transparency is that of a TBitmap, i.e., the transparent color is taken from the left-bottom pixel of the image. IfBackImage
is an icon,BackImageTransp
istrue
and cannot be changed. Missing in TAChart.BackWall
: see separate chapter onTChartBackWall
. Missing in TAChart.BevelInner
,BevelOuter
,BevelWidth
: Bevel parameters like those of aTPanel
-- TeeChart's TChart inherits from TCustomPanel. Missing in TAChart.Border
: see separate chapter onTChartHiddenPen
, a frame around the entire chart. Missing in TAChart.BorderRound
: if grater than 0 theBorder
is drawn as a RoundRect with that radius. Missing in TAChart.BorderWidth
: Seems to have the same effect as the LCL'sBorderSpacing.Around
BottomAxis
: See separate chapter onTChartAxis
.BottomWall
: See separate chapter onTChartBottomWall
. Missing in TAChart.Chart3DPercent
: Ratio between chart dimensions and chart depthChart.View3D
is true. Similar to TAChart's propertyDepth
of chart and some series.ClipPoints: boolean
, defaulttrue
: toggles the drawing of series points within chart boundaries, preventing other chart regions from being overwritten. TAChart: ?Color
: Background color of entire chart, the same as with TAChart.Constraints
: Standard VCL / LCL property, the same as with TAChart.Cursor
: standard VCL / LCL property, the same as with TAChart.CustomAxes
: List of axes, like with TAChart, but seems to be without the default axes.CustomHint
: ???, missing in TAChartDepthAxis
: 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, missing in TAChart.DragCursor, DragMode
: Drag and Drop support. Like in TAChart.Emboss
: ???, missing in TAChart.Enabled
: Not in help file, at least, turns off zooming and panning.Foot
: See separate chapter on TChartTitle. Like in TAChart.Frame
: See separate chapter on TChartPen. Like in TAChart.Gradient
: See separate chapter in TTeeGradient. Draws a gradient behind the entire chart. Missing in TAChart.Height
: Standard VCL/LCL property, the same as with TAChart.HelpContext, HelpKeyword, HelpType
: Standard VCL property, the same as with TAChart.
Hint
: Standard VCL/LCL property, the same as with TAChart.Left
: Standard VCL/LCL property, the same as with TAChart.LeftAxis
: See separate chapter onTChartAxis
.LeftWall
: See separate chapter onTChartLeftWall
, describes left wall of 3D charts. Missing in TAChart.Legend
: See separate chapter onTChartLegend
, describes legend parameters, like in TAChart.LiveBindings
: new VCL properties introduced in Delphi XE2. Missing in TAChart.Locked
: ???, missing in TAChartMarginBottom, MarginLeft, MarginRight, MarginTop
: Margin between "Border" and Axis, corresponds to TAChart'sMarginExternal
.MarginUnits
: options(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." muPercent missing in TAChart.Margins
: standard VLC property, in combination withAlignWithMargins
. Like LCL'sBorderSpacing
.Monochrome
: iftrue
, turns off colors and renders chart in grayscale.Name
: standard VCL/LCL propertyPages
: accesses pages for a multi-page chart. Not supported by TAChart.Panning
: properties for built-in panning support. Missing in TAChart, but can be achieved by means of chart tools.ParentColor
: standard VCL/LCL property, the same as with TAChartParentCustomHint
: ???, missing in TAChart.ParentShowHint
: standard VCL/LCL property, the same as with TAChartPopupMenu
: standard VCL/LCL property, the same as with TAChartPrintProportional
: no built-in printing support in TAChartRightAxis
: See separate chapter onTChartAxis
.RightWall
: See separate chapter onTChartLeftWall
, describes left wall of 3D charts. Missing in TAChart.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." Part of this can be achieved in TAChart by multivalued series.SeriesList
: opens the chart editor. Missing in TAChart.Shadow
: See separate chapter on TTeeShadow. Missing in TAChart.ShowHint
: Standard VCL/LCL property, the same as with TAChart.SubFoot
: See separate chapter on TChartTitle. TeeChart allows for a second footer. Missing in TAChart.SubTitle
: See separate chapter on TChartTitle. TeeChart allows for a second title. Missing in TAChart.TabOrder, TabStop, Tag
: standard VCL/LCL properties, the same as with TAChart.
Title
: See separate chapter on TChartTitle. Similar to TAChart.Tools
: property is disabled in TeeChart Standard. Chart tools are an essential part of TAChart.Top
: standard VCL/LCL property, the same as with TAChart.TopAxis
: See separate chapter onTChartAxis
. Parameters for second x axis above the chart. Property missing 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
: turns on/off 3D chart. Property missing in TAChart, but 3D effect can be achieved byDepth
properties of chart and some series.View3DOptions
: See separate chapter.View3DWalls
:Visible, With
: standard VCL/LCL properties, the same as with TAChart.Zoom
: parameters to define the built-in zooming, missing in TAChart, but effect can be achieved by chart tools.
Events
to be written ...
TeeChart's TChartTitle
Public methods
to be written ...
Properties
AdjustFrame
: from the docs: "The AdjustFrame property controls if Chart Title and Foot frames will be resized to full Chart dimensions or to the title text width. It has only effect when Chart.Title or Chart.Foot.Frame.Visible property is True." Missing in TAChart.Alignment
: the same as with TAChart.Bevel, BevelWidth
: Defines a bevel around the Title. Missing in TAChart.Brush
: Corresponds to the Brush object that is used to fill the shape interior. Usage is a bit confusing, because there is also a separateColor
property, and within the Brush there areBackColor
andColor
properties again.Brush.Style=bsDiagCross
usesTitle.Brush.Color
as background,Title.Color
as foreground color. What isBrush.BackColor
for?Color
: Background color of the title. In TAChart, useBrush.Color
.CustomPosition: boolean
: iftrue, title can be positioned by
Left
andTop
properties. Missing in TAChart.Emboss
: some kind of upward directed shadow. Missing in TAChart.Font
: similar to TAChartFrame: TChartPen
: a frame around the title with sub-propertiesColor
,EndStyle
,Mode
,SmallDots
,SmallSpace
,Style
,Visible
,Width
. Very similar to TAChart.Gradient
: allows to fill the title background with a gradient. Missing in TAChart.Left, Top
: Distance of title from chart edge, used ifCustomPosition=true
. Missing in TAChart.Picture
: Background picture for the title. Missing in TAChart.Shadow
: Shadow parameters. Missing in TAChart.ShapeStyle = fosEllipse, fosRectangle, fosRoundRectangle
: Title shape, like TAChart'sShape
with more options.Text
: like TAChartTextFormat = (ttfNormal, ttfHTML)
: Allows HTML formatting in the title. Not available in TAChart.Transparency = 0..100
: defines how much of the background is visible through the title (as percentage). Missing 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
to be written ...
TeeChart's TChartAxis
Public methods
to be written ...
Properties
Automatic, AutomaticMaximum, AutomaticMinimum
: automatic range finding, or if off, use Maximum
and/or Minimum
for axis ends. In TAChart, use Extent
.
Axis: TChartAxisPen
: Defines how the axis line is drawn. In TAChart, use AxisPen
.
AxisValuesFormat
: Formatmask 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
: defines the percentage position of chart width or height (depending on whether it is applied to a horizontal or a vertical axis) where the axis begin. 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. TAChart's Grid
is equivalent, the subproperty DrawEvery:integer
which allows to skip every other grid line is missing, however.
GridCentered: boolean
: Draws axis grid line between label positions. Missing in TAChart.
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: boolean
: If true>
the axis runs into reverse direction. Same as with TAChart.
Labels: boolean
: 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 available in TAChart (or Marks.Alignment
?)
LabelsAlternate
: if true labels for horizontal are offset vertically, one near axis, the next one a line deeper. No equivalent in TAChart.
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, 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 just at axis minimum and maximum positions will be shown or not. Not available in TAChart.
LabelsSeparation
: specifies the percent amount of minimum distance between labels. Zero value causes overlapping labels. Not directly available in TAChart, but effect can be achieved by Intervals
settings.
LabelsSize
: Size occupied by labels, default 0 means automatic calculation. If not correct, axis title may overlap with labels. No equivalent in TAChart, 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 achiev 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
.
MaximumRound, MinimumRound
: if axis maximum or minimum is rounded to the next integer. Missing in TAChart.
MinorGrid
: parameters to define minor grid. In TAChart, use property Minors[n].Grid
.
MinorTickCount
: number of minor ticks between two major ticks. In TAChart, use Intervals
property of Minors[n]
.
MinorTickLength
: length of minor ticks. In TAChart, the property is Axis.Minors[n].TickLength
; there is also a TickInnerLength with TeeChart does not have.
MinorTicks
: parameter to define minor ticks. In TAChart, 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
: seems not to available in TeeChart Standard.
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.
StartPosition
: Defines the position (as percentage of chart width or height) where the axis line starts
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 separate chapter. 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.
UsePartnerAxis
: no effect in TeeChart Standard. No equivalent in TAChart.
Visible
: Like in TAChart.
ZPosition
: Like in TAChart.