Untitled Document ComponentOne Chart for .NET Untitled Document E-mail sent to documentation@componentone.com is for documentation feedback only. We welcome any suggestions to help improve our documentation.

Welcome to ComponentOne Chart for .Net

ComponentOne Chart™ for .Net is a .Net control designed to allow developers to create a number of eye-catching 2D charts, chart cached or streaming data, or display complex data sets in a visual format. Using the latest technologies built into Visual Studio.Net, C1Chart for .Net completely manages the underlying complexities of a component chart, allowing developers to concentrate on important application-specific tasks.

C1Chart for .Net was designed to be a powerful, versatile, and easy-to-use chart creation tool. Developers can use C1Chart to create a fully functional Chart that can be fully interacted with by the user. Additionally, developers can use the many different chart types to accurately display complex sets of data and create user-friendly charting applications.

C1Chart for .Net is a charting control for Microsoft Visual Studio.Net developed by ComponentOne LLC.

ComponentOne has a user-friendly distribution policy. We want every programmer to obtain a copy of Chart for .Net to try for as long as they wish. Those who like the product and find it useful may buy a license for a reasonable price. The only restriction is that unlicensed copies of Chart for .Net will display a ComponentOne banner every time they are loaded to remind developers to license the product.

We are confident that you will like ComponentOne Chart for .Net. If you have any suggestions or ideas for new features that you'd like to see included in a future version, or ideas for new controls, please call us or write:

Corporate Headquarters

ComponentOne LLC
201 South Highland Avenue
3rd Floor
Pittsburgh, PA 15206 • USA
412.681.4343
412.681.4384 (Fax)

http://www.componentone.com

Overview

What's New in ComponentOne 2D Chart for .NET

Installing C1Chart for .NET

END-USER LICENSE AGREEMENT FOR COMPONENTONE SOFTWARE

Licensing FAQs

Technical Support

Redistributable Files

Namespaces

Creating a .NET Project

Adding the ComponentOne Chart Component to Visual Studio

Untitled Document
Send feedback to ComponentOne
Copyright © 1987-2005 ComponentOne LLC. All rights reserved.


Overview

ComponentOne 2D Chart is a two-dimensional charting control that you can use in your Windows applications to provide users with professional information display and manipulation capabilities.

2D Chart Control

Use the 2D Chart to display data as a Bar, XY-Plot, Area, Pie, Radar, Polar, Candle, or a combination of any of these charts. 2D Chart is optimized for real-time applications displaying rapidly changing data.

C1Chart 2D for .Net Features

· 100% Managed Code

· X-Y Plot, Area, Bar, High-Low, High-Low-Open-Close, Gantt, Candle, Bubble, Pie, Radar, and Polar charts provides various ways to display data.

· Stacking Charts: XY-Plot, Area, Bar, Radar, and Plot charts can be stacked to display more complex data in a smaller space.

· Mouse tracking capabilities keep track of the region, series, or data point under the mouse pointer.

· Image generation: Charts can be saved to any number of image formats (metafile, bmp, jpg, and more).

· Interactive Wizard.


What's New in ComponentOne 2D Chart for .NET

This documentation was last revised on August 19, 2005.

Overview of What's New in ComponentOne 2D Chart for .NET

There are three new chart types that have been added to 2D Chart for .NET to allow the user more flexibility. The latest additions include the following chart types: Step, Doughnut, and Histogram.

With the addition of new objects, 2D Chart for .NET now provides the following:

· Built-in-tools for highlighting plotted data.

· Optimization for plotting large data arrays.

· Automatic creation of data labels.

· Automatic label arrangement.

· Value labels enhancement.

· Custom series drawing.

· Enhanced alarm zones.

· ChartDataArray Statistics and StatisticalDataObject.

Feature Overview

Class Members

Recent Classes

Recent Enumerations

Samples


Feature Overview

Behavioral Change for PointStyles

LineStyle now changes line style for all subsequent points or until the next PointStyle changes the LineStyle again.

Note that this is the item's change of behavior and does not involve new properties or methods. In the past, adding PointStyle values for XY Plots only affected SymbolStyles. However, with the new changes, the LineStyle now changes the line appearance of the appropriate series of the XY plot for the duration of the series, or until another PointStyle changes the LineStyle again.

Data highlight

Chart supports built-in tools for highlighting plotted data. The user can activate highlighting by moving the mouse over or clicking on the data element. The programmer can also control highlighting. After changing the highlight, the corresponding event fires to allow the user the flexibility to perform additional actions.

The appearance of a highlighted data element is specified by the Appearance property, which is a bitwise combination of the DataAppearanceEnum enumeration. Note that if the corresponding flag is set, then the visual attributes (Fill, Line or Symbol style) of the DataHighlight object is applied to the selected series or point.

Optimization for plotting large data arrays

The fast rendering methods for XYPlot, intended to speed up drawing for huge data, are controlled by the PlotFilterMethod property. The methods follow the current plot scale and do not change the detailed visual appearance, e.g. when zooming using built-in interaction or axis scroll bar. The alternative method works only with data which is ordered along x- or y- direction, therefore the default method is more universal.

Automatic creation of data labels

The ChartDataSeries object now has a new DataLabel property which controls creation automatic data labeling. DataLabel supports a number of keywords (#TEXT, #XVAL, #YVAL, #YVAL1, #YVAL2, #YVAL3) which simplify common data labeling tasks. Note that the keywords must be put into curly bracket and support standard .NET formatting.

Automatic label arrangement

The auto-arrangement works with all Label and DataLabel objects which have Compass equal to Auto. There are two algorithms of placing labels:

· "Decimation" method hides the labels that can not be placed without overlapping.

· "FindingOptimum" method tries to find optimal positions without removing labels from the plot.

The parameters controlling the arrangement can be adjusted using the AutoArrangement property.

ValueLabels enhancement

The new axis annotation mode (AnnotationMethodEnum.Mixed) was added, to allow the use of superposition of value and value labels. The ValueLabels now have some additional properties which extend its visual appearance and functionality. Note that by also using Moveable property the ValueLabel can be interactive.

Custom series drawing

Two new ChartDataSeries events, which fire before and after normal series rendering, were introduced. They are useful when adjusting existing or creating new data visualization patterns.

Enhanced AlarmZones

AlarmZones can now be used to generate more than just rectangle shapes. With the Shape property, Elliptical and Polygon shapes can now be specified for AlarmZones. When Polygon shape is used, the polygon data can be specified explicitly or by specifying a data series (XY Plots only). This allows for easy filling of specified areas under a curve. The bounds of the AlarmZone are specified (as before) by the AlarmZone extents.

In addition, AlarmZones can now specify the minimum Height and Width of each AlarmZone. This allows AlarmZones that do not vanish as the data changes, and also allows the placement of an AlarmZone with fixed dimensions.

Doughnut charts

Doughnut charts are now available by setting the InnerRadius of a Pie chart to a non-zero value. The InnerRadius property is located in the Pie object of each ChartGroup object.

ChartDataArray Statistics and StatisticalData object

Each ChartDataArray now contains a new Statistics property which returns a new StatisticalData object. The StatisticalData object contains a variety of statistical values associated with the data contained by the ChartDataArray.

For example, each series of an XYPlot contains 3 valid ChartDataArray objects, which are returned by the PointData, X and Y properties. The PointData property returns a ChartDataArray object that provides access to combined X and Y coordinate data through the use of PointF objects. The X and Y properties return ChartDataArray objects which manage the X and Y coordinate data independently. The Statistics property of each ChartDataArray object gives the Mean, Median, R-Squared, Standard Deviation and the Variance for the associated coordinate data. The N property returns the number of X data values used to calculate the statistic. N may be different from X.Length if the X data contains data holes.

Additionally, the Confidence property returns a StatisticalData.ConfidenceInterval object. This object allows specification of the degree of confidence (ConfidenceInterval.Probability) and the calculated interval (ConfidenceInterval.Interval) where the interval is Mean +/- Interval which is the range that has the specified probability of containing the population mean. Note that the Statistics property of the object returned by the PointData property are the same as those for the Y property.


Class Members

Newest Members

Below is a collection of the newest members, including the latest properties and methods.

DrawDataSeriesEventArgs | Description
DisposePen Property | Gets or sets whether the pen should be disposed by the chart.
Pen Property | Gets or sets the pen that will be used for data plotting.

C1Chart | Description
GetMetaFile Method | It extracts C1Chart as a metafile.
PrintChart Method | A new PageSettings parameter has been added to the PrintChart method.

Recently Added Members

Below is a collection of recent members, including the latest properties, methods, or events:

AlarmZone Class | Description
BackColor Property (AlarmZone) | Gets or sets the background color of the AlarmZone.
FarExtent Property | Gets or sets the far extent of the AlarmZone in X-axis data coordinates.
ForeColor Property (AlarmZone) | Gets or sets the foreground color of the AlarmZone.
GroupIndex Property (AlarmZone) | Gets or sets the index of the data group of the AlarmZone.
IsInsideZone Method | Returns true if the specified client coordinate lies within the shape of the AlarmZone.
LowerExtent Property | Gets or sets the lower extent of the AlarmZone in Y-axis data coordinates.
MinHeight Property (AlarmZone) | Gets or sets the AlarmZone minimum pixel height.
MinWidth Property (AlarmZone) | Gets or sets the AlarmZone minimum pixel width.
Name Property (AlarmZone) | Gets or sets the name of the AlarmZone.
NearExtent Property | Gets or sets the near extent of the AlarmZone in X-axis data coordinates.
PatternStyle Property (AlarmZone) | Gets or sets the pattern style to be used if PatternVisible is true.
PatternVisible Property (AlarmZone) | Gets or sets whether the specified PatternStyle should be used to brush the background of the AlarmZone.
PolygonData Property (AlarmZone) | Gets the PolygonData object for the AlarmZone.
Shape Property (AlarmZone) | Gets or sets the shape of the AlarmZone.
UpperExtent Property | Gets or sets the upper extent of the AlarmZone in Y-axis data coordinates.
Visible Property (AlarmZone) | Gets or sets the visibility of the AlarmZone.

AlarmZonesCollection Class | Description
Add Method (AlarmZonesCollection) | Adds the specified AlarmZone to the collection.
AddNewZone Method | Creates a new AlarmZone and appends it to the collection.
AlarmZoneAtCoord Method | Retrieves a reference to the foremost AlarmZone that lies under the specified client coordinates: Xcoord - The X client coordinate to test. Ycoord - The Y client coordinate to test.
Insert Method (AlarmZonesCollection) | Inserts the specified AlarmZone at the specified index.
InsertNewZone Method | Creates a new AlarmZone and inserts it at the specified index of the collection.
Item Property (AlarmZonesCollection) | Gets the specified AlarmZone from the collection by numeric index or by name.

PlotArea Class | Description
AlarmZones Property | Gets the AlarmZonesCollection.

ChartDataSeries Class | Description
Histogram Property (ChartDataSeries) | Gets or sets the ChartHistogram object.
PlotFilter Property | Gets or sets the plot filter value which optimizes plotting large data arrays. The plot filter value represents the minimal distance from the previous data point in pixels. If distance is less than PlotFilter the point is not plotted. Only for XY-plot.
PlotFilterMethod Property | Gets or sets the plot filter method. This property specifies method of optimization when plotting large data arrays. Only for XY-plot.

ChartDataArray Class | Description
Statistics Property | Gets the object that provides statistics for the data of this ChartDataArray.

Axis Class | Description
ValueLabels Property | Gets the ValueLabelsCollection object.

ValueLabel Class | Description
Appearance Property (ValueLabel) | Gets or sets the appearance of ValueLabel.
BackColor Property (ValueLabel) | Get or sets the background color of ValueLabel.
Color Property (ValueLabel) | Get or sets the color of ValueLabel.
DateTimeValue Property (ValueLabel) | Gets or sets the axis value to be replaced by the ValueLabel using a DateTime value.
DrawMarker Event | Fires when value label marker is drawn.
GridLine Property (ValueLabel) | Gets or sets a value indicating whether a grid line is drawn at the ValueLabel.
MarkerRectangle Property | Get the marker rectangle of ValueLabel.
MarkerSize Property | Gets or sets the marker size of ValueLabel.
Moveable Property | Gets or sets a value indicating whether a ValueLabel can be dragged by a user.
NumericValue Property (ValueLabel) | Gets or sets the axis value to be replaced by the ValueLabel by specifying a numeric value that can be implicitly converted to double.
Rectangle Property (ValueLabel) | Get the rectangle occupied by the text of ValueLabel.
Text Property (ValueLabel) | Gets or sets the displayed text value for the ValueLabel.
Value Property (ValueLabel) | Gets or sets the axis value to be replaced by the ValueLabel by specifying a value that can be implicitly converted to double.
ValueChanged Event | Fires when position of ValueLabel was changed.

Pie Class | Description
InnerRadius Property | Gets or sets the inner radius used for doughnut charts. A value greater than zero specifies the percentage of the full pie radius used for the doughnut hole.

ChartLabels Class | Description
AutoArrangement Property | Gets the AutoLabelArrangement object which controls label arrangement.

C1Chart Class | Description
Tooltip Property (C1Chart) | Gets the ChartTooltip object. For example, If you select “ChartData” and set its Tooltip property to “{#YVAL:c}”, then the control will display the value for a point (or bar) when the user moves the mouse over the point.
ShowToolTip Event (C1Chart) | Fires before a chart tooltip is shown. This event allows the user to specify custom tooltip text. For example, the tooltips allow you to specify the text that is displayed to the user when he moves the mouse over chart elements.

ChartDataSeries Class | Description
FillStyle Property (ChartDataSeries) | Gets or sets the fill style of the data series.
TooltipText Property (ChartDataSeries) | Gets or sets the tooltip text of the series. The tooltip allows you to specify the text that is displayed to you when you move the mouse over chart elements.

ChartGroup Class | Description
CoordToPointIndex Method | Returns point index and distance to the closest data element of the specified series in the group given client coordinates.
CoordToSeriesIndex Method | Returns series index and distance to the closest data element in the group given client coordinates.
DataCoordToCoord Method | Calculates the client coordinates of a point in the PlotArea given data coordinates.

ChartToolTip Class | Description
AutomaticDelay Property (ChartToolTip) | Gets or sets the automatic delay for the tooltip.
AutoPopDelay Property (ChartToolTip) | Gets or sets the period of time the tooltip remains visible if the mouse pointer is stationary within an area with specified tooltip text.
Enabled Property (ChartToolTip) | Gets or sets a value indicating whether the tooltip is enabled.
InitialDelay Property (ChartToolTip) | Gets or sets the time that passes before the tooltip appears.
PlotElement Property (ChartToolTip) | Gets or sets the plot element.
ReShowDelay Property (ChartToolTip) | Gets or sets the length of time that must transpire before subsequent tooltip windows appear as the mouse pointer moves from one area to another.
SelectAction Property (ChartToolTip) | Gets or sets the action associated with a tooltip.

FillStyle Class | Description
Alpha Property (FillStyle) | Gets or sets the fill alpha value (transparency).
Color1 Property (FillStyle) | Gets or sets the fill color.
Color2 Property (FillStyle) | Gets or sets the second fill color.
FillType Property (FillStyle) | Gets or sets the fill type.
GradientStyle Property (FillStyle) | Gets or sets the fill gradient style.
HatchStyle Property (FillStyle) | Gets or sets the fill hatch style.
Image Property (FillStyle) | Gets or sets the fill image.

Label Class | Description
Image Property (Label) | Gets or sets the image that is displayed on the chart element.
TooltipText Property (Label) | Gets or sets the tooltip text. For example, the tooltip allows you to specify the text that is displayed to you when you move the mouse over chart elements.

PointStyle Class | Description
FillStyle Property (PointStyle) | Gets or sets the fill style of the point style.

Title Class | Description
Image Property (Title) | Gets or sets the image.
TooltipText Property (Title) | Gets or sets the formatted text.
Enabled Property (ChartToolTip) | Gets or sets the tooltip text. For example, the tooltip allows you to specify the text that is displayed to you when you move the mouse over chart elements.
AppendRtfText Method (Title) | Creates and/or appends text to the existing Rtf string using the specified color and/or font. If an overload is used which does not specify a color or font, then the default values, which are specified by the Title style are used.


Recent Classes

Below is a collection of recent classes:

DataHighLight Class | Description
Activation Property (DataHighLight) | Gets or sets the highlight activation method.
Appearance Property (DataHighLight) | Gets or sets the highlight appearance. The apprearance is a combination of visual attributes which will be applied to the highlighted data. The exact value of attributes is exstracted from the corresponding DataHighlight object ( FillStyle, LineStyle, SymbolStyle).
FillStyle Property (DataHighLight) | Gets or sets the highlight fill style.
LineStyle Property (DataHighLight) | Gets or sets the highlight line style.
PlotElement Property (DataHighLight) | Gets or sets the plot element which will be used in highlighting.
PointIndex Property | Gets or sets the index of highlighted data point.
SeriesIndex Property (DataHighLight) | Gets or sets the index of highlighted data series.
SymbolStyle Property (DataHighLight) | Gets or sets the highlight symbol style.

HighLightChangedEventArgs Class | Description
Group Property | Gets the chart group.
PointIndex Property | Gets the data point index.
Series Property | Gets the data series.
SeriesIndex Property | Gets the data series index.

AutoLabelArrangement Class | Description
MaxIterations Property (AutoLabelArrangement) | Gets or sets the maximum number of iterations.
Method Property (AutoLabelArrangement) | Gets or sets the method of label arrangement.
Offset Property (AutoLabelArrangement) | Gets or sets the maximum offset distance in pixels from an associated point.
Options Property (AutoLabelArrangement) | Gets or sets the options of label arrangement.

StatisticalData Class | Description
Confidence Property | Gets an object reporting the confidence interval for the associated data.
DataStatus Property | Gets a string indicating whether data is available for statistical calculations.
Mean Property | Gets the mean value of the associated data.
Median Property | Gets the median value of the associated data.
N Property | Gets or sets the plot element which will be used in highlighting.
PropertyGridEnabled Property | Gets or sets the index of highlighted data point.
Rsq Property | Gets or sets the index of highlighted data series.
StdDev Property | Gets or sets the highlight symbol style.
Variance Property |


Recent Enumerations

Below is a collection of recent enumerations:

AlarmZoneShapeEnum Enumeration | Description
Ellipse | An ellipse bounded by the a rectangle specified by the data coordinates of the AlarmZone extents.
Polygon | A polygon specified by XY and with limits of a rectangle specified by the data coordinates of the AlarmZone extents.
Rectangle | A rectangle specified by the data coordinates of the AlarmZone extents.

HightLightActivationEnum Enumeration | Description
Field | Highlight is activated when user click on the plotted data.
Custom | User is responsible for setting active data series and point.
Disabled | Highlight is disabled.
MouseOver | Highlight is activated when user moves mouse over the plotted data.

PlotFilterMethodEnum Enumeration | Description
Alternative | Alternative data filtering algorithm optimizes plotting of large data arrays which are ordered along one direction(x or y).
Default | Default data filtering algorithm optimizes plotting of large data arrays.
None | Data values are not filtered.

AnnotationMethodEnum Enumeration | Description
Mixed | Both automatic annotatations and value labels will be visible.
ValueLabels | The axis will be annotated with values specified in the ValueLabelsCollection.

ValueLabelAppearanceEnum Enumeration | Description
ArrowMarker | Label with arrow marker.
CustomMarker | Label with custom marker. Marker must be painted in DrawMarker event.
Label | Only text label.
TriangleMarker | Label with triangle marker.

AutoLabelArrangementEnum Enumeration | Description
Decimation | The method removes labels which can not be placed without overlapping.
FindingOptimum | This method tries to position labels avoiding its overlapping.

AutoLabelArrangementOptionsEnum Enumeration | Description
Bottom | Allows bottom label position.
BottomLeft | Allows bottom left label position.
BottomRight | Allows bottom right label position.
Default | Allows any label position.
Left | Allows left label position.
Right | Allows right label position.
Top | Allows top label position.
TopLeft | Allows top left label position.
TopRight | Allows top right label position.


Samples

Here are the latest samples for C1Chart:

Sample Name | Description
AlarmZoneShapes | Shows an XY chart with various styles of AlarmZones.The sample creates a default XY chart with various types of AlarmZones include rectangles, ellipse and polygons. Also included in the use ValueLabels in Mixed mode, and marker characteristics.
AutoArrangement | Shows an XY plot with labels that can be automatically arranged without collision. The sample creates an XY plot and demonstrates automatic placement of chart labels that avoid label overlap.
Donut | Shows a doughnut chart with various functions, including alpha-blending, tooltips and series highlighting. The sample creates a doughnut chart and demonstrates the use of tooltips,and series highlighting. A doughnut chart is simply a pie chart with aninner radius specifying the hole size.
Custom Draw | The sample creates a 2D XY-Plot with a single series in the form of a spiral. By using the ChartDataSeries Draw event, the spiral is draw using two colors. Extreme customizations of a series can be performed using this event.
Histogram | Shows a histogram chart giving the distribution of distances of each point in a 2D scatter chart from a specified location. The sample creates a 2D scatter chart with random data, and in a second ChartGroup, develops a histogram based on the distances from each of the data points to a set of crosshairs. The crosshairs are generated using moveable ValueLabels with markers (arrows) and gridlines.
HistTemp | Shows how to generate histogram data using one of the C1Chart GenerateHistogramData method overloads and displaying that data in a bar chart. The sample creates an XY plot of seasonal average mean temperatures in Kansas City, Mo., USA. In a second chart, a bar chart containing histogram data is generated showing the distribution of the difference from average mean temperatures through the years. Statistics are calculated by the chart for each data series and presented in an accompanying text box.
RtfTitle | The sample creates a simple 2D XY-Plot, and adds headers and footers with RFT formatting. A simple RTF editor using a RichTextBox control is part of the sample to allow modifications of the header and footer.
SelectSeries | The sample creates an inverted XY-Plot with multiple series and an axis scrollbar resulting in a strip chart like appearance and function. Individual series can be selected with a mouse-click and the selected series is highlighted.
StepChart | Shows a step chart, both 2D with symbols, and with 3D effects.The sample creates a step chart and demonstrates the use of tooltips, and the effects of change 3D elevations and rotations for step charts with 3D effects. Mouse tracking for the step chart is also demonstrated.
ToolTip | The sample creates a simple 2D XY-Plot chart and demonstrates the use of the chart tooltip functions, properties and events.

The ComponentOne Samples are also available at http://helpcentral.componentone.com/ProductResources.aspx


Installing C1Chart for .NET

This section describes the setup files and system requirements for ComponentOne Chart for .NET. It also explains how to install demonstration versions of ComponentOne products and uninstall ComponentOne Chart for .NET.

ComponentOne Chart For .NET Setup Files

System Requirements

Installing Demonstration Versions

Uninstalling C1Chart for .NET


ComponentOne Chart For .NET Setup Files

The installation program will create the directory C:\Program Files\ComponentOne Studio.NET, which contains the following subdirectories:

bin | Contains copies of all binaries (DLLs, EXEs) in the ComponentOne Visual Studio.NET package.
Common | Contains support and data files that are used by many of the demo programs.
Help | Contains online documentation for all Studio components.
C1Chart | Contains samples and tutorials for the C1Chart component.


System Requirements

· Operating Systems:

-Windows 2000

-Windows 2003 Server

-Windows NT 4

-Windows XP, sp1, sp2

· Environments:

-.NET Framework 1.0

-.NET Framework1.1

-C# .NET

-Delphi

-Visual Basic .NET

· Hard Disk Space: 29 mb hard disk space for storage of the software

· Disc Drive: CD or DVD-ROM drive if installing from CD


Installing Demonstration Versions

If you wish to try ComponentOne Chart for .NET or any of our other products and do not have a registration key, follow the steps through the installation wizard and use the default serial number.

The only difference between unregistered (demonstration) and registered (purchased) versions of our products is that registered versions will stamp every application you compile so a ComponentOne banner will not appear when your users run the applications.


Uninstalling C1Chart for .NET

To uninstall C1Chart for .NET, open the Control Panel application, select the "Add or Remove Programs" option, select C1Chart for .NET and click the "Remove" button.


END-USER LICENSE AGREEMENT FOR COMPONENTONE SOFTWARE

IMPORTANT-READ CAREFULLY: This End User License Agreement (this "EULA") contains the terms and conditions regarding your use of the SOFTWARE (as defined below). This EULA contains material limitations to your rights in that regard. You should read this EULA carefully and treat it as valuable property.

I. THIS EULA.

1. Software Covered by this EULA. This EULA governs your use of the ComponentOne, LLC ("C1") software product(s) enclosed or otherwise accompanied herewith (individually and collectively, the "SOFTWARE"). The term "SOFTWARE" includes, to the extent provided by C1: 1) any revisions, updates and/or upgrades thereto; 2) any data, image or executable files, databases, data engines, computer software, or similar items customarily used or distributed with computer software products; 3) anything in any form whatsoever intended to be used with or in conjunction with the SOFTWARE; and 4) any associated media, documentation (including physical, electronic and on-line) and printed materials (the "Documentation").

2. This EULA is a Legally Binding Agreement Between You and C1. If you are acting as an agent of a company or another legal person, such as an officer or other employee acting for your employer, then "you" and "your" mean your principal, the entity or other legal person for whom you are acting. However, importantly, even if you are acting as an agent for another, you may still be personally liable for violation of federal and State laws, such as copyright infringement.

This EULA is a legally binding agreement between you and C1. You intend to be legally bound to this EULA to the same extent as if C1 and you physically signed this EULA. By installing, copying, or otherwise using the SOFTWARE, you agree to be bound by the terms and conditions contained in this EULA. If you do not agree to all of the terms and conditions contained in this EULA, you may not install or use the SOFTWARE. If, for whatever reason, installation has begun or has been completed, you should cancel installation or un-install the SOFTWARE, as the case may be. (You may click on the "exit" button or its equivalent to immediately abort installation.) If you do not agree to all of these terms and conditions, then you must promptly return the SOFTWARE to the place of business from which you obtained it in accordance with any return policies of such place of business. Return policies may vary between or among resellers, and you must comply with your particular reseller's return policies as agreed at the point of purchase. If the place of business from which you purchased the SOFTWARE does not honor a complete refund for a period of thirty (30) days from the date of proof of purchase, then you may return the SOFTWARE directly to C1 for a period of thirty (30) days from the date of your purchase. To return the product directly to C1, you must obtain a C1 Return Authorization Number by contacting C1, and you must forward all items purchased, including the proof of purchase, directly to C1. The return must be postage-prepaid, and post-marked within thirty (30) days from the proof of purchase, time being of the essence. The return option to C1 is only available to the original purchaser of an unopened factory packaged item.

II. YOUR LICENSE TO DEVELOP AND TO DISTRIBUTE.

As provided in more detail below, this EULA grants you two licenses: 1) a license to use the SOFTWARE to develop other software products (the "Development License"); and 2) a license to use and/or distribute the Developed Software (the "Distribution License"). Both of these licenses (individually and collectively, the "Licenses") are explained and defined in more detail below.

1. Definitions. The following terms have the respective meanings as used in this EULA:

"Network Server" means a computer with one or more computer central processing units (CPU's) that operates for the purpose of serving other computers logically or physically connected to it, including, but not limited to, other computers connected to it on an internal network, intranet or the Internet. "Web Server" means a type of Network Server that serves other computers more particularly connected to it over an intranet or the Internet.

"Developed Software" means those computer software products that are developed by or through the use of the SOFTWARE. "Developed Web Server Software" means those Developed Software products that reside logically or physically on at least one Web Server and are operated (meaning the computer software instruction set is carried out) by the Web Server's central processing unit(s) (CPU). "Developed Legacy Software" means those Developed Software products that are not Developed Web Server Software, including, for example, stand-alone applications and applications accessed by a file server only. "Redistributable Files" means the SOFTWARE files or other portions of the SOFTWARE that are provided by C1 and are identified as such in the Documentation for distribution by you with the Developed Software. "Developer" means a human being or any other automated device using the SOFTWARE in accordance with the terms and conditions of this EULA.

"Developer Seat License" means that each Developer using or otherwise accessing the programmatic interface or the SOFTWARE must obtain the right to do so by purchasing a separate End User License.

“Source Code” shall mean computer software code or programs in human readable format, such as a printed listing of such a program written in a high-level computer language. The term "Source Code" includes, but is not limited to, documents and materials in support of the development effort of the SOFTWARE, such as flow charts, pseudo code and program notes.

2. Your Development License. You are hereby granted a limited, royalty-free, non-exclusive right to use the SOFTWARE to design, develop, and test Developed Software, on the express condition that, and only for so long as, you fully comply with all terms and conditions of this EULA.

The SOFTWARE is licensed to you on a Developer Seat License basis.

The Developer Seat License means that you may perform an installation of the SOFTWARE for use in designing, testing and creating Developed Software by a single Developer on one or more computers, each with a single set of input devices, so long as such computer/computers is/are used only by one single Developer at any given time and not concurrently. Conversely, you may not install or use the SOFTWARE on a computer that is a network server or a computer at which the SOFTWARE is used by more than one Developer. You may not network the SOFTWARE or any component part of it, where it is or may be used by more than one Developer unless you purchase an additional Development License for each Developer. You must purchase another separate license to the SOFTWARE in order to add additional developer seats, whether the additional developers are accessing the SOFTWARE in a stand-alone environment or on a computer network.

In all cases, you may not use C1's name, logo, or trademarks to market your Developed Software without the express written consent of C1; (b) you must include the following C1 copyright notice in your Developed Software documentation and/or in the "About Box" of your Developed Software, and wherever the copyright/rights notice is located in the Developed Software (“Portions Copyright © ComponentOne, LLC 1991-2002. All Rights Reserved.”); (c) agree to indemnify, hold harmless, and defend C1, its suppliers and resellers, from and against any claims or lawsuits, including attorney's fees that may arise from the use or distribution of your Developed Software; (d) you may use the SOFTWARE only to create Developed Software that is significantly different than the SOFTWARE.

3. Your Distribution License.

License to Distribute Developed Software. Subject to the terms and conditions in this EULA, you are granted the license to use and to distribute Developed Software on a royalty-free basis, provided that the Developed Software incorporates the SOFTWARE as an integral part of the Developed Software in machine-language compiled format (customarily an ".exe", or ".dll", etc.). You may not distribute, bundle, wrap or subclass the SOFTWARE as Developed Software which, when used in a "designtime" development environment, exposes the programmatic interface of the SOFTWARE. You may distribute, on a royalty-free basis, Redistributable Files with Developed Software only.

4. Specific Product Limitations. Notwithstanding anything in this EULA to the contrary, if the license you have purchased is for any of the following products, then the following additional limitations will apply:

a. ComponentOne Reports for .NET Designer Edition. ComponentOne Reports for .NET Designer Edition includes at least: 1) one dynamic link library (c1.win.c1reportdesigner.dll) file known as C1ReportDesigner Component, 2) one executable (ReportDesigner.exe) file known as C1ReportDesigner Application and, 3) the Source Code of the C1ReportDesigner Application. The C1ReportDesigner Component is subject to the general terms and restrictions set forth in this EULA. The C1ReportDesigner Application is an executable file used to design and prepare reports; the C1ReportDesigner Application may be distributed, free of royalties, only in conjunction with the Developed Software.

Subject to the terms and conditions in this EULA, C1 hereby grants you the right to use the C1ReportDesigner Application Source Code. You are hereby also granted the right to modify such Source Code and to create derivative works that are based on the licensed Source Code. You may distribute the derivative works that you develop, solely in object code format and exclusively in conjunction with and/or as a part of the Developed Software. You are expressly not granted the right to distribute, disclose or otherwise make available to any third party the licensed Source Code, any modified version, derivative work, or any portion thereof, in source code format.

C1 shall retain all right, title and interest in and to the licensed Source Code, and all C1 updates, modifications or enhancements thereof. Nothing herein shall be deemed to transfer any ownership or title rights in and to the licensed Source Code from C1 to you.

SOURCE CODE IS LICENSED TO YOU AS IS. C1 DOES NOT AND SHALL NOT PROVIDE YOU WITH ANY TECHNICAL SUPPORT FOR YOUR SOURCE CODE LICENSE.

b. VSView Reporting Edition. VSView Reporting Edition includes at least one executable file listed as “VSRptX.exe” (where X indicates the version number i.e.7,8, etc.), known as “Designer.” The file "VSRptX.exe”, or any upgrade or future versions of the Designer, are subject to the restrictions set forth in this EULA and may not be distributed with your Developed Software or in any other way.

c. Doc-to-Help and ComponentOne Natural Search. You may use Doc-To-Help to create online help, manuals or other documentation in electronic or printed format (the "Output Documents"). You may distribute and incorporate in such Output Documents those files identified in the documentation as Redistributable Files. Except for those specific Redistributable Files, you MAY NOT distribute the SOFTWARE, in any format, to others.

d. Studio Products. You may not share the component parts of the Studio Products licensed to you with other Developers, nor may you allow the use and/or installation of such components by other Developers.

e. ComponentOne Response and SOAP Channel. ComponentOne Response is intended to be installed on a Network Server. C1 grants to you the following rights to the SOFTWARE: a) Installation: You may install one copy of the SOFTWARE on a single Network Server; b) Use: When installed and initialized, the SOFTWARE creates a database file which contains the embodiment of a solution knowledge base (the database hereinafter referred to as the "Knowledge Base").

You may use the SOFTWARE to create Knowledge Bases on one Network Server only. To create or to operate Knowledge Bases in more than one Network Server, you must purchase one additional SOFTWARE license for each additional Network Server.

5. Updates/Upgrades; Studio Subscription. Subject to the terms and conditions of this EULA, the Licenses are perpetual. Updates and upgrades to the SOFTWARE may be provided by C1 from time-to-time, and, if so provided by C1, are provided upon the terms and conditions offered at that time by C1 in its sole discretion. C1 may provide updates and upgrades to the SOFTWARE for free or for any charge, at any time or never, and through its chosen manner of access and distribution, all in C1's sole and complete discretion.

C1 licenses certain of its separately-licensed products bundled together in a product suite, called the C1 "Studio" product line (the "Studio Products"). The exact separately-licensed products that are bundled into the Studio Products may change from time-to-time in C1's sole discretion. If the SOFTWARE is identified as a C1 "Studio" product, then the SOFTWARE is one of the Studio Products. The SOFTWARE and the Studio Products are revised from time-to-time (meaning, for example, revised with updates, upgrades and, in the case of Studio products, possibly changes to which specific products are included in the bundle). For you to be entitled to receive any such revisions to the SOFTWARE or the Studio Products, as the case may be, you must have a valid SOFTWARE license or a valid Studio subscription. The original purchaser of the SOFTWARE or of a Studio product receives a one-year subscription from the date of purchase of the SOFTWARE. After one year, the Studio subscription and/or the SOFTWARE license must be renewed to continue to be entitled to receive the SOFTWARE and/or the Studio Products revisions as the case may be.

6. Serial Number. Within the packaging of the SOFTWARE, a unique serial number (the "Serial Number") is included, which allows for the registration of the SOFTWARE. The Serial Number is subject to the restrictions set forth in this EULA and may not be disclosed or distributed either with your Developed Software or in any other way. The disclosure or distribution of the Serial Number shall constitute a breach of this EULA, the effect of which shall be the automatic termination and revocation of all the rights granted herein.

7. Evaluation Copy. If you are using an "evaluation copy" or similar version, specifically designated as such by C1 on its website or otherwise, then the Licenses are limited as follows: a) you are granted a license to use the SOFTWARE for a period of thirty (30) days counted from the day of installation (the "Evaluation Period"); b) upon completion of the Evaluation Period, you shall either i) delete the SOFTWARE from the computer containing the installation, or you may ii) contact C1 or one of its authorized dealers to purchase a license of the SOFTWARE, which is subject to the terms and limitations contained herein; and c) any Developed Software may not be distributed or used for any commercial purpose.

III. INTELLECTUAL PROPERTY.

1. Copyright. You agree that all right, title, and interest in and to the SOFTWARE (including, but not limited to, any images, photographs, animations, video, audio, music, text, and “applets” incorporated into the SOFTWARE), and any copies of the SOFTWARE, and any copyrights and other intellectual properties therein or related thereto are owned exclusively by C1, except to the limited extent that C1 may be the rightful license holder of certain third-party technologies incorporated into the SOFTWARE. The SOFTWARE is protected by copyright laws and international treaty provisions. The SOFTWARE is licensed to you, not sold to you. C1 reserves all rights not otherwise expressly and specifically granted to you in this EULA.

2. Backups. You may either: (a) copy the SOFTWARE solely for backup or archival purposes; or (b) install the SOFTWARE on a single computer, provided you keep the original solely for backup or archival purposes. Notwithstanding the foregoing, you may not copy the Documentation.

3. General Limitations. You may not reverse engineer, decompile, or disassemble the SOFTWARE, except and only to the extent that applicable law expressly permits such activity notwithstanding this limitation.

4. Software Transfers. You may not rent or lease the SOFTWARE. You may transfer the SOFTWARE to another computer, provided that it is completely removed from the computer from which it was transferred. You may permanently transfer all of your rights under the EULA, provided that you retain no copies, that you transfer all the SOFTWARE (including all component parts, the media and printed materials, any dates, upgrades, this EULA and, if applicable, the Certificate of Authenticity), and that the recipient agrees to the terms and conditions of this EULA as provided herein. If the SOFTWARE is an update or upgrade, any transfer must include all prior versions of the SOFTWARE.

5. Termination. Without prejudice to any other rights it may have, C1 may terminate this EULA and the Licenses if you fail to comply with the terms and conditions contained herein. In such an event, you must destroy all copies of the SOFTWARE and all of its component parts.

6. Export Restrictions. You acknowledge that the SOFTWARE is of U.S. origin. You acknowledge that the license and distribution of the SOFTWARE is subject to the export control laws and regulations of the United States of America, and any amendments thereof, which restrict exports and re-exports of software, technical data, and direct products of technical data, including services and Developed Software. You agree that you will not export or re-export the SOFTWARE or any Developed Software, or any information, documentation and/or printed materials related thereto, directly or indirectly, without first obtaining permission to do so as required from the United States of America Department of Commerce's Bureau of Export Administration ("BXA"), or other appropriate governmental agencies, to any countries, end-users, or for any end-uses that are restricted by U.S. export laws and regulations, and any amendments thereof, which include, but are not limited to, the following:

Restricted Countries: Restricted Countries currently include, but are not necessarily limited to Cuba, Iran, Iraq, Libya, Montenegro, North Korea, Serbia, Sudan, and Syria.

Restricted End-Users: Any End-User whom you know or have reason to know will use SOFTWARE or Developed Software in the design, development, or production of missiles and missile technology, nuclear weapons and weapons technology, or chemical and biological weapons. Any national of any of the Restricted Countries, wherever located, who intends to transmit or transport the SOFTWARE or Developed Software to one of the Restricted Countries.

Restricted End-Uses: Any use of SOFTWARE and Developed Software related to the design, development, or production of missiles and missile technology, nuclear weapons and weapons technology, or chemical and biological weapons.

These restrictions change from time to time. You represent and warrant that neither the BXA nor any other United States federal agency has suspended, revoked or denied your export privileges. C1 acknowledges that it shall use reasonable efforts to supply you with all reasonably necessary information regarding the SOFTWARE and its business to enable you to fully comply with the provisions of this Section. If you have any questions regarding your obligations under United States of America export regulations, you should contact the Bureau of Export Administration, United States Department of Commerce, Exporter Counseling Division, Washington DC. U.S.A. (202) 482-4811, http://www.bxa.doc.gov.

7. U.S. Government Restricted Rights. The SOFTWARE and documentation are provided with RESTRICTED RIGHTS. For solicitations issued before December 1, 1995, by the United States of America, its agencies and/or instrumentalities (the "Government"), other than the Department of Defense, the use, duplication or disclosure of the software and documentation provided to the Government under this EULA shall be subject to the RESTRICTED RIGHTS as set forth in subparagraphs (c)(1) and (2) of the Commercial Computer Software - Restricted Rights clause at 48 CFR ch.1 52.227-19. For solicitations issued before September 29, 1995, by the Department of Defense, the use, duplication or disclosure of the software and documentation provided under this EULA shall be subject to the RESTRICTED RIGHTS as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at 48 CFR ch.2 252.227-7013. You will comply with any requirements of the Government to obtain such RESTRICTED RIGHTS protection, including without limitation, the placement of any restrictive legends on the SOFTWARE, and any license agreement used in connection with the distribution of the SOFTWARE. Manufacturer is ComponentOne, LLC, 201 South Highland Avenue, 3rd Floor, Pittsburgh, Pennsylvania 15206 USA. For solicitations issued by the Government on or after December 1, 1995 and the Department of Defense on or after September 29, 1995, the only rights provided in the software and documentation provided herein shall be those contained in this EULA. Under no circumstances shall C1 be obligated to comply with any Governmental requirements regarding the submission of or the request for exemption from submission of cost or pricing data or cost accounting requirements. For any distribution of the SOFTWARE that would require compliance by C1 with the Government's requirements relating to cost or pricing data or cost accounting requirements, you must obtain an appropriate waiver or exemption from such requirements for the benefit of C1 from the appropriate Government authority before the distribution and/or license of the SOFTWARE to the Government.

IV. WARRANTIES AND REMEDIES.

1. Limited Warranty. C1 warrants that the original media, if any, are free from defects for ninety (90) days from the date of delivery of the SOFTWARE. EXCEPT AS OTHERWISE PROVIDED IN THE PRECEDING SENTENCE, AND TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, C1 EXPRESSLY DISCLAIMS ANY WARRANTY FOR THE SOFTWARE, DOCUMENTATION AND ANYTHING ELSE PROVIDED BY C1 HEREBY AND C1 PROVIDES THE SAME IN “AS IS” CONDITION WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK ARISING OUT OF USE OR PERFORMANCE OF THE SOFTWARE AND DOCUMENTATION REMAINS WITH YOU. THIS LIMITED WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS. YOU MAY HAVE OTHERS WHICH VARY FROM STATE TO STATE.

2. Limited Remedy. C1's entire liability and your exclusive remedy under this EULA shall be, at C1's sole option, either (a) return of the price paid for the SOFTWARE; (b) repair the SOFTWARE through updates distributed online or otherwise in C1's discretion; or (c) replace the SOFTWARE with SOFTWARE that substantially performs as described in the SOFTWARE documentation, provided that you return the SOFTWARE in the same manner as provided in Section I.2 for return of the SOFTWARE for non-acceptance of this EULA. Any media for any repaired or replacement SOFTWARE will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer. THESE REMEDIES ARE NOT AVAILABLE OUTSIDE OF THE UNITED STATES OF AMERICA. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL C1 BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFIT, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE, EVEN IF C1 HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME STATES/JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES IN CERTAIN CASES, THE ABOVE LIMITATION MAY NOT APPLY TO YOU.

V. MISCELLANEOUS.

1. This is the Entire Agreement. This EULA (including any addendum or amendment to this EULA included with the SOFTWARE) is the final, complete and exclusive statement of the entire agreement between you and C1 relating to the SOFTWARE. This EULA supersedes any prior and contemporaneous proposals, purchase orders, advertisements, and all other communications in relation to the subject matter of this EULA, whether oral or written. No terms or conditions, other than those contained in this EULA, and no other understanding or agreement which in any way modifies these terms and conditions, shall be binding upon the parties unless entered into in writing executed between the parties, or by other non-oral manner of agreement whereby the parties objectively and definitively act in a manner to be bound (such as by continuing with an installation of the SOFTWARE, "clicking-through" a questionnaire, etc.) Employees, agents and other representatives of C1 are not permitted to orally modify this EULA.

2. You Indemnify C1. You agree to indemnify, hold harmless, and defend C1 and its suppliers and resellers from and against any and all claims or lawsuits, including attorney's fees, which arise out of or result from your breach of any of the terms and conditions of this EULA.

3. Interpretation of this EULA. If for any reason a court of competent jurisdiction finds any provision of this EULA, or any portion thereof, to be unenforceable, that provision of this EULA will be enforced to the maximum extent permissible so as to effect the intent of the parties, and the remainder of this EULA will continue in full force and effect. Formatives of defined terms shall have the same meaning of the defined term. Failure by either party to enforce any provision of this EULA will not be deemed a waiver of future enforcement of that or any other provision. Except as otherwise required or superseded by law, this EULA is governed by the laws of the Commonwealth of Pennsylvania, without regard to its conflict of laws principles. The parties consent to the personal jurisdiction and venue of the Commonwealth of Pennsylvania, in the County of Allegheny, and agree that any legal proceedings arising out of this EULA shall be conducted solely in such Commonwealth. If the SOFTWARE was acquired outside the United States, then local law may apply.


Licensing FAQs

This section describes the main technical aspects of licensing. It may help the user to understand and resolve licensing problems he may experience when using ComponentOne .NET and ASP.NET products.

What is Licensing?

How does Licensing Work?

Common Scenarios

Troubleshooting


What is Licensing?

Licensing is a mechanism used to protect intellectual property by ensuring that users are authorized to use software products.

Licensing is not only used to prevent illegal distribution of software products. Many software vendors, including ComponentOne, use licensing to allow potential users to test products before they decide to purchase them.

Without licensing, this type of distribution would not be practical for the vendor or convenient for the user. Vendors would either have to distribute evaluation software with limited functionality, or shift the burden of managing software licenses to customers, who could easily forget that the software being used is an evaluation version and has not been purchased.


How does Licensing Work?

ComponentOne uses a licensing model based on the standard set by Microsoft, which works with most types of components.

NOTE: The Compact Framework components use a slightly different mechanism for licensing than the other ComponentOne components due to platform differences.

When a user decides to purchase a product, he receives an installation program and a Serial Number. During the installation process, the user is prompted for the serial number that is saved on the system. (Users can also enter the serial number by clicking the "License" button on the About Box of any ComponentOne product.)

When a licensed component is added to a form or web page, Visual Studio asks the newly created component for licensing information. The component looks for licensing information stored in the system and generates a key, which Visual Studio saves in two files:

1. a "<projectName>.licenses" resource file which contains the actual key and

2. a "licenses.licx" file that contains references to those resources.

These files are automatically added to the project.

Note that the licenses.licx file is usually not shown in the Solution Explorer; it appears if you press the "Show All Files" button in the Solution Explorer's toolbox, or select "Project | Show All Files" from Visual Studio's main menu.

Later, when the component is created at run time, it gets passed the key that was created at design time and can decide whether to simply accept the key, to throw an exception and fail altogether, or to display some information reminding the user that the software has not been licensed.

All ComponentOne products are designed to display licensing information if the product is not licensed. None will throw licensing exceptions and prevent applications from running.


Common Scenarios

Creating components at design time

Creating components at run time

Inheriting from licensed components

Using licensed components in console applications

Using licensed components in Visual C++ applications


Creating components at design time

This is the most common scenario and also the simplest: the user adds one or more controls to the form, the licensing information is stored in the licenses.licx file, and the component works.

Note that the mechanism is exactly the same for Windows Forms and Web Forms (ASP.NET) projects.


Creating components at run time

This is also a fairly common scenario. You do not need an instance of the component on the form, but would like to create one or more instances at run time.

In this case, the project will not contain a licenses.licx file (or the file will not contain an appropriate key for the component) and therefore licensing will fail.

To fix this problem, add an instance of the component to a form in the project. This will create the licenses.licx file and things will then work as expected. (The component can be removed from the form after the licenses.licx file has been created).


Inheriting from licensed components

If a component that inherits from a licensed component is created, the licensing information to be stored in the form is still needed. This can be done in two ways:

1. Add a LicenseProvider attribute to the component.

This will mark the component as licensed. When a component is added to a form, Visual Studio will create and manage the licenses.licx file, and the base class will handle the licensing process as usual. No additional work is needed. For example:

[LicenseProvider(typeof(LicenseProvider))]

class MyGrid: C1.Win.C1FlexGrid.C1FlexGrid

{

// ...

}

2. Add an instance of the base component to the form.

This will embed the licensing information into the licenses.licx file as in the previous scenario, and the base component will find it and use it. As before, the extra instance can be deleted after the licenses.licx file has been created.


Using licensed components in console applications

When building console applications, there are no forms to add components to, and therefore Visual Studio won't create a licenses.licx file.

In these cases, create a temporary Windows Forms application and add all the desired licensed components to a form. Then close the Windows Forms application and copy the licenses.licx file into the console application project.

Make sure the licensex.licx file is configured as an embedded resource. To do this, right-click the licenses.licx file in the Solution Explorer window and select Properties. In the property window, set the "Build Action" property to "Embedded Resource".


Using licensed components in Visual C++ applications

It seems there is a bug in VC++ 2003. The licenses.licx is ignored during the build process, therefore the licensing information is not included in VC++ applications.

To fix this problem, extra steps must be taken to compile the licensing resources and link them to the project. Note the following:

1. Build the C++ project as usual. This should create an exe file and also a licenses.licx file with licensing information in it.

2. Copy the licenses.licx file from the app directory to the target folder (Debug or Release).

3. Copy the C1Lc.exe utility and the licensed dlls to the target folder. (Don't use the standard lc.exe, it has bugs.)

4. Use C1Lc.exe to compile the licenses.licx file. The command line should look like this:

c1lc /target:MyApp.exe /complist:licenses.licx /i:C1.Win.C1FlexGrid.dll

5. Link the licenses into the project. To do this, go back to Visual Studio, right-click the project, select properties, and go to the Linker/Command Line option. Enter the following:

/ASSEMBLYRESOURCE:Debug\MyApp.exe.licenses

6. Rebuild the executable to include the licensing information in the application.


Troubleshooting

We try very hard to make the licensing mechanism as unobtrusive as possible, but problems may occur for a number of reasons.

Below is a description of the most common problems and their solutions.


I have a licensed version of a ComponentOne product but I still get the splash screen when I run my project.

If this happens, there must be a problem with the licenses.licx file in the project. It either doesn't exist, contains wrong information, or is not configured correctly.

First, try a full rebuild ("Rebuild All" from the Visual Studio Build menu). This will usually rebuild the correct licensing resources.

If that fails, follow these steps:

1. Open the project and go to the Solution Explorer window.

2. Click the "Show All Files" button on the top of the window.

3. Find the licenses.licx file and delete it.

4. Close the project and reopen it.

5. Open the main form and add an instance of each licensed control.

6. Check the Solution Explorer window, there should be a licenses.licx file there.

7. Rebuild the project using the "Rebuild All" option (not just "Rebuild").


I have a licensed version of a ComponentOne product on my web server but the components still behave as unlicensed.

There is no need to install any licenses on machines used as servers and not used for development.

The components must be licensed on the development machine, therefore the licensing information will be saved into the executable (exe or dll) when the project is built. After that, the application can be deployed on any machine, including web servers.


I downloaded a new build of a component that I have purchased, and now I'm getting the splash screen when I build my projects.

Make sure that the license key is still valid. If you licensed the component over a year ago, your subscription may have expired. In this case, you have two options:

Option 1 - Renew your subscription to get a new license key.

If you choose this option, you will receive a new key that you can use to license the new components (from the installation utility or directly from the About Box).

The new subscription will entitle you to a full year of upgrades and to download the latest maintenance builds directly from http://prerelease.componentone.com/.

Option 2 – Continue to use the components you have.

Subscriptions expire, products do not. You can continue to use the components you received or downloaded while your subscription was valid.


Technical Support

C1Chart for .Net is developed and supported by ComponentOne LLC, a company formed by the merger of APEX Software Corporation and VideoSoft. Technical support can be obtained using any of the following methods:

ComponentOne Web Site

ComponentOne HelpCentral

Internet E-mail

Peer-to-Peer Newsgroup

Documentation


ComponentOne Web Site

The ComponentOne Web site at www.componentone.com provides a wealth of information and software downloads for C1Chart users:

· Descriptions of the various support options available through the ComponentOne Service Team.

· Answers to frequently asked questions (FAQ's) about C1Chart, organized by functionality. Please consult the FAQ's before contacting us directly, as this can save time and also provide an introduction to other useful information pertaining to C1Chart.

· Free product updates, which provide you with bug fixes and new features.


ComponentOne HelpCentral

ComponentOne HelpCentral is the new online resource for Visual Studio developers and Help authors. Visit HelpCentral to get information on ComponentOne products, view online demos, get Tech Tips and answers to frequently asked questions (FAQ's), search the ComponentOne knowledgebase and more!


Internet E-mail

For technical support through the Internet, e-mail us at:

support.chart.net@componentone.com

support.webchart.net@componentone.com

To help us provide the best support, please include the following information when contacting ComponentOne:

· Your ComponentOne product serial number.

· The version and name of your operating system.

· Your development environment and its version.

For more information on technical support, browse to:

www.componentone.com/support


Peer-to-Peer Newsgroup

ComponentOne also sponsors a peer-to-peer newsgroup for C1Chart users. ComponentOne does not offer formal technical support in this newsgroup, but instead sponsors it as a forum for users to post and answer each other's questions regarding C1Chart. However, ComponentOne may monitor the newsgroup to ensure accuracy of information and provide comments when necessary. You can access the newsgroup from the ComponentOne Web site at http://helpcentral.componentone.com/Newsgroups.aspx.


Documentation

ComponentOne documentation is available with each of our products in HTML Help, Microsoft Help 2.0 (.NET, ASP.NET and Mobile Device products only), and PDF format. All of the PDFs are also available on our Web site. If you have suggestions on how we can improve our documentation, please email the Documentation team. Please note that e-mail sent to the Documentation team is for documentation feedback only. Technical Support and Sales issues should be sent directly to their respective departments.


Redistributable Files

ComponentOne Chart for .NET is developed and published by ComponentOne LLC. You may use it to develop applications in conjunction with Microsoft Visual Studio or any other programming environment that enables the user to use and integrate the control(s). You may also distribute, free of royalties, the following Redistributable Files with any such application you develop to the extent that they are used separately on a single CPU on the client/workstation side of the network:

· C1.Common.dll

· C1.Win.C1Chart.dll

· C1.Win.C1Chart3D.dll

Site licenses are available for groups of multiple developers. Please contact Sales@ComponentOne.com for details.


Namespaces

Namespaces organize the objects defined in an assembly. Assemblies can contain multiple namespaces, which can in turn contain other namespaces. Namespaces prevent ambiguity and simplify references when using large groups of objects such as class libraries.

The general namespace for ComponentOne Windows products is C1.Win. The general namespace for ComponentOne Web-based products is C1.Web. The namespace for the C1Chart control is C1.Win.C1Chart, while the namespace for the wrapper assembly is C1.Web.C1WebChart. The following code fragment shows how to declare a C1Chart control using the fully qualified name for this class:

· Visual Basic

· C#

· Delphi

Namespaces address a problem sometimes known as namespace pollution, in which the developer of a class library is hampered by the use of similar names in another library. These conflicts with existing components are sometimes called name collisions.

For example, if a new class named ChartLabels is created, it can be used inside the project without qualification. However, the C1Chart assembly also implements a class called ChartLabels. So, if the C1Chart class will be used in the same project, a fully qualified reference must be used to make the reference unique. If the reference is not unique, Visual Studio .NET produces an error stating that the name is ambiguous.

Fully qualified names are object references that are prefixed with the name of the namespace where the object is defined. Objects defined in other projects can be used if a reference to the class is created (by choosing Add Reference from the Project menu) and then using the fully qualified name for the object in the code.

Fully qualified names prevent naming conflicts because the compiler can always determine which object is being used. However, the names themselves can get long and cumbersome. To get around this, use the Imports statement (using in C#) to define an alias — an abbreviated name used in place of a fully qualified name. For example, the following code snippet creates aliases for two fully qualified names, and uses these aliases to define two objects:

· Visual Basic

· C#

· Delphi

If the Imports statement is used without an alias, use all the names in that namespace without qualification provided they are unique to the project.

As a warning, unless specified explicitly in the code, it is taken for granted that the

· Visual Basic

· C#

· Delphi

statement has been specified. This applies only to small code samples. Tutorials and other longer samples will specify complete qualifiers.


Creating a .NET Project

This topic demonstrates how to create a new .NET project.

1. From the File menu in Microsoft Visual Studio .NET, select New and click Project. The New Project dialog box opens.

2. Under Project Types, choose either Visual Basic Projects or Visual C# Projects, and select Windows Application from the list of Templates in the right pane.

Enter a name for your new application in the Name field or you can use the default name, WindowsApplication1. Click on the Browse button to the right of the Location field to specify the location of your new project and click OK.

A new Microsoft Visual Studio .NET project is created in the specified location. In addition, a new Form1 is displayed in the Designer view.

3. Double-click the desired C1Chart components from the Toolbox to add them to Form1. For information on adding a component to the toolbox, see Adding the ComponentOne Chart Component to Visual Studio.


Adding the ComponentOne Chart Component to Visual Studio

After installing Chart for .NET on your computer, you need to add its component to the Visual Studio Toolbox. To do this, follow these steps:

1. Open the Visual Studio IDE (Microsoft Development Environment.). Make sure the Toolbox is visible (select Toolbox in the View menu if necessary). Right-click the Toolbox to open its context menu.

If you want the Chart for .NET components to appear on their own tab in the Toolbox, Right-click in the gray Toolbox area and select Add Tab from the context menu and type in the tab name, for example, “C1Chart”.

2. Right-click the C1Chart tab or one of the existing tabs and select Customize Toolbox… from the context menu. The Customize Toolbox dialog box will open.

NOTE: In Visual Studio 2003 you would select the Add/Remove Items option from the context menu.

3. In the Customize Toolbox dialog box, go to the .NET Framework Components tab. Sort the list by Namespace (click the Namespace column header).

4. Select the Browse button and find C1.Win.C1Chart.dll and open it. All of the .Net components for C1Chart will be highlighted in blue.

5. Double-click the desired C1Chart components from the Toolbox to add them to Form1.


Using the 2DChart

This section covers the basics of 2D charting, creation of 2D charts, and modification of chart properties. In addition, both the interactive chart wizard and Chart properties are explained in detail.

Getting Started With 2DChart's Basic Elements

Getting Started With Typical 2DCharts

Choosing the 2DChart Type

Creating 2D Charts


Getting Started With 2DChart's Basic Elements

This section covers the basics of 2D charting, creation of 2D charts, and modification of chart properties. In addition, both the interactive chart wizard and Chart properties are explained in detail.

The C1Chart control has a rich object model that allows you to create a variety of chart types and control their appearance and behavior. This section introduces the C1Chart object model by describing the main elements in a chart and the main properties related to each one. By the end of the section, you will be able to use C1Chart to create all basic chart types and customize their appearance. This section covers the majority of information needed for most charts. Later sections drill down into greater detail, covering the remaining parts of the programming model.

The following diagram shows the terms used to describe chart elements:

Note: Pie charts contain the same elements except for the axes.

The following sections describe the elements listed above in the chart and the main properties associated with each.

Header and Footer

Legend

ChartArea

ChartGroups


Header and Footer

Here is how the Header and Footer elements appear in C1Chart:

The header and footer elements are used to display descriptive information about the chart. They are controlled by the Header and Footer properties. Both properties return a Title object that contain the following main properties:

Text | Contains text displayed in the title (header or footer).
Style | Contains properties that set the font, orientation, colors, and border of the title.
Compass | Determines the position of the title.
Visible | Determines whether the title is visible.

C1Chart sizes and positions the titles automatically, based on their contents and on the setting of the Compass property. Title object positions are customized using the SizeDefault and LocationDefault properties (negative values activate the automatic sizing and positioning).


Legend

Here is how the Legend element appears in C1Chart:

The legend element displays information about each data series of the chart. The legend is controlled by the Legend property, which returns a Legend object with the following main properties:

Text | Contains text displayed in the legend title.
Style | Contains properties that set the font, orientation, colors, and border of the legend.
Compass | Determines the position of the legend.
Visible | Determines whether the legend is visible.
Orientation | Determines whether the legend items should be displayed in the horizontal or vertical direction.
Reversed | Controls the order that the ChartGroups appear in the legend. The order in which items of a ChartGroup appear in the legend is controlled by the LegendReversed property of each ChartGroup.

C1Chart sizes and positions the legend automatically, based on its contents and the Compass and Orientation properties. To customize the legend position, the SizeDefault and LocationDefault properties can be modified (negative values activate the automatic sizing and positioning).

Note that the Legend property does not control the text for each legend item. It is determined by the label attached to each series. For example, Label contains the text and ChartDataSeries.LegendEntry determines whether the series label should be displayed in the legend.


ChartArea

Here is how the ChartArea appears in C1Chart:

The ChartArea element represents the area of the chart that contains data (excluding the titles and legend, but including the axes). The ChartArea property returns an Area object with the following main properties:

AxisX, AxisY, AxisY2 | Each of these properties returns Axis objects that allow you to customize the appearance of the chart axes. The Axis objects are described later.
Inverted | Allows you to rotate the chart by 90 degrees (this is especially useful to create horizontal bar charts).
Margins | Returns a Margin object that allows you to specify the distance between the chart area and the plot area. The axes labels are displayed in this space.
PlotArea | Returns a PlotArea object that controls the appearance of the area inside the axes.
Style | Contains properties that set the color and border of the chart area.


Axes

Here is how the axes appear in C1Chart:

Most charts have two axes, X and Y. The exceptions are pie charts (which have no axes) and charts with a secondary Y axis (Y2, which have three axes).

The axes are represented by sub-properties of the ChartArea property: ChartArea.AxisX, ChartArea.AxisY, and ChartArea.AxisY2. Each of these properties returns an Axis object with the following main properties:

Layout and Style properties

The following properties below represent the layout and style of the axes in C1Chart.

Compass | Allows you to set the position of the axis. For example, you may want to display the X-axis above the data instead of below.
Font | Sets the font used to display the values along the axis.
ForeColor | Sets the color used to display the axis, tickmarks, and values.
Reversed | Allows you to reverse the direction of the axis. For example, you can show Y values going down instead of up.
Text | Sets a string to display next to the axis (this is typically used to describe the variable and units being depicted by the axis).
Rotation | Sets the orientation of the Text string.

Annotation properties

The following properties below represent the format for the annotation of the axes in C1Chart.

AnnoFormat | A set of predefined formats used to format the values displayed next to the axis.
AnnoFormatString | The .NET formatting string used to format the values displayed next to the axis when AnnoFormat is set to “NumericManual” or “DateManual”. If the AnnoFormat is set to either NumericManual or DateManual and the AnnoFormatString is empty, then the chart uses an algorithm to find the “best” formatting available.
AnnoMethod | Determines what values are displayed next to the axis. Options are “Values”, which displays the actual series values, or “ValueLabels”, which displays the elements in the ValueLabels collection.
ValueLabels | A collection of text/value pairs to display next to the axis when AnnoMethod is set to “ValueLabels”. This property is useful when you want to display strings along an axis instead of numeric values (for example, you may be charting product prices and want to display the product names along the X-axis).
AnnotationRotation | Allows you to rotate the values so they take up less space along the axis.

Scaling Tickmark and Gridline properties

The following properties represent the scaling, tickmarks, and gridline styles and function for the axes in C1Chart.

AutoMin, AutoMax | Determine whether the minimum and maximum values for the axis should be calculated automatically.
Min, Max | Set the minimum and maximum values for the axis (when AutoMin and AutoMax are set to false).
AutoMajor, AutoMinor | Determine whether the spacing between the major and minor tickmarks should be calculated automatically.
UnitMajor, UnitMinor | Set the spacing between the major and minor tickmarks (when the AutoMajor and AutoMinor properties are set to false).
GridMajor, GridMinor | Returns a ChartGridStyle object with properties that control the appearance of the grid lines drawn perpendicular to major and minor tickmarks.
AutoOrigin | Determines whether the X-axis should be automatically positioned with respect to the Y-axis.
Origin | Sets the position of the X-axis with respect to the Y-axis. The X-axis is usually placed at the bottom of the chart. This property allows you to place it so that it crosses the Y-axis at a given coordinate.


PlotArea

Here is how the PlotArea appears in C1Chart:

The PlotArea element represents the part of the chart area that is used to display the data series. The PlotArea property returns a PlotArea object that contains the following main properties:

BackColor | Sets the color of the background of the PlotArea.
Boxed | Determines whether the PlotArea has a solid border around it.
ForeColor | Sets the color of the border around the PlotArea (when Boxed is set to true).
View3D | Returns a View3D object that allows you to add 3D effects to 2D charts.


ChartGroups

Here is how the ChartGroups appear in C1Chart:

This property returns a collection of two ChartGroup objects (always Group0 and Group1, you can’t add or remove elements from this collection). These objects determine the chart type and contain the data being charted.

The first group (Group0) contains series that are charted against the primary Y-axis. The second group (Group1) may be empty or it may contain series that are charted against the secondary Y-axis.

Because there are two ChartGroup objects, and the chart type is associated with the ChartGroup, you can mix up to two chart types in the same chart. For example, you can create charts that show some series as bars and some as lines.

The ChartGroup objects have the following main properties:

ChartData | Returns a ChartData object that contains a SeriesList property that holds the data for all series in the group. This property is described in the next topic.
ChartType | Determines the type of chart to use when rendering this group (there are many chart types available, and you can select different types for each ChartGroup).
ShowOutline | Determines whether graphical elements used to display the data (bars, areas, pie slices) should be outlined using the color specified by the PlotArea.ForeColor property.
Stacked | Determines whether the data should be stacked (by adding Y values) when the series are rendered.


ChartData

The ChartData objects have the following main properties:

FunctionsList | The FunctionsList property gets the FunctionsCollection object associated with the current ChartData object.
Hole | Gets or sets the data hole value.
PointStylesList | Gets the PointStylesCollection object associated with the current ChartData object.
SeriesList | Gets the ChartDataSeriesCollection object associated with the current ChartData object.
TrendsList | Gets the TrendLinesCollection object associated with the current ChartData object.


SeriesList Property

Here is how the 5 chart data series appear in C1Chart:

From a developer’s perspective, this is one of the most important properties in C1Chart. All other properties can be set at design time using the Chart Wizard, or loaded from predefined chart layout files. In most cases, however, the data being plotted is added using code, and to do that you need to use the SeriesList property.

The SeriesList property returns a ChartDataSeriesCollection object that allows you to add and remove series from the chart, and to retrieve individual series. For example, the code below clears all the data in the group and then adds three new series to it:

· Visual Basic

· C#

· Delphi

After executing this code, the first ChartGroup will contain three ChartDataSeries objects, each with a different label.

The ChartDataSeries objects have the following main properties:

Display | Determines whether the series is visible and how missing values (“data holes”) should be displayed.
Label | Contains the text that is displayed in the legend (if LegendEntry is set to true).
LegendEntry | Determines whether the series Label should be displayed in the legend.
LineStyle | Contains properties that determine the color, thickness, and pattern used to display the series (the color is used for lines, areas, bars, and pie slices).
SymbolStyle | Contains properties that determine the shape, size, and color of the symbols used to mark the data points in the series.
PointData | Returns a ChartDataArray object used to get or set the X, Y coordinates of each data point in the series.
X, Y | Return ChartDataArray objects used to get or set individual coordinates of each data point in the series. Some chart types have additional data arrays (for example, “HiLoOpenClose” also has Y1, Y2, and Y3).

The PointData, X, and Y properties allow you to set and retrieve the data used to display each individual series.

Most chart types require you to provide X and Y values for each point. The exceptions are pie charts (which do not require X values) and specialized charts such as “Bubble”, “HiLo”, "Gantt",and “HiLoClose”, which require additional Y values.

The code below shows the easiest way to add data to a series:

· Visual Basic

· C#

· Delphi

The code starts by retrieving the data source. In this case, the data source is an ADO.NET DataView object, which provides sorting and filtering features to regular DataTable objects (sorting and filtering are often useful when charting data).

Next, the code retrieves the first series in the first chart group and sets the PointData.Length property to create all the data points for the series.

Finally, a loop is used to set the X and Y properties to the coordinates of each point in the series. The X value is set to a sequential number to provide equal spacing between the data points. The Y value is set to the value that we want to display, in this case the product’s unit price.


Getting Started With Typical 2DCharts

This section closes the C1Chart walkthrough with some samples that show how to create some of the most common chart types. The samples are simple and concise, and focus on the main aspects of each common chart type. The distribution package includes a lot of sophisticated samples that show details and advanced features not discussed in this quick walkthrough.

Simple Bar Charts

Bar Charts with two Y Axes

Pie Charts

Pie Charts with ChartLabels

XY-Plots (Scatter Plots)


Simple Bar Charts

It is common to use charts to display a series of simple values, like product prices. This type of chart is useful because it shows the relative magnitude of each value in a quick and effective way.

The main characteristic of this type of chart is that each point conveys only one piece of information. When creating these charts, the value being displayed is assigned to the Y values of the series. The X values only provide constant spacing between the points, and usually display labels attached to each data point.

The recommended chart types for this type of information are “Bar” and “Pie” charts.

The picture below shows a simple bar chart with product prices (Beverages from the NorthWind product list):

Note that the bars are displayed horizontally, in order to provide room for the product names along the vertical axis. This is done using the ChartArea.Inverted property.

Here is the code used to create the bar chart. In actual applications, the code would be even simpler because some properties would be set at design time.

· Visual Basic

· C#

· Delphi

It is common to show more than one data series on a chart, and that is easy to do with C1Chart. The code would look similar to the above, except you would add additional lists to the ChartDataSeriesCollection.


Bar Charts with two Y Axes

Although not as common,it is possible to use a single chart to show series that are measured using different scales and units. For example, you could show product prices and inventory levels on a single chart. To do this, you need to use a second Y-axis. The primary axis would show prices (in currency units) and the secondary axis would show counts.

To plot data against the secondary Y-axis, add new series to the second chart group (remember every C1Chart has two chart groups). You can use a different data type for the second chart group in order to make the chart clearer.

For example, the chart below contains three series. The first shows product unit prices (as bars, plotted against the primary Y-axis), and the others show the number of units in stock and the reorder level (as symbols, plotted against the secondary Y-axis).

The code used to create this second chart starts with the exact same steps used to create the previous chart. The additional series are created using the following additional code:

· Visual Basic

· C#

· Delphi


Pie Charts

Pie charts are also commonly used to display simple values. They are visually appealing and often displayed with 3D effects such as shading and rotation. C1Chart allows you to add 3D effects to charts, but you should use them carefully because they distort the data.

Pie charts have one significant difference when compared to other C1Chart chart types: in Pie charts, each series represents one slice of the pie. Therefore, you will never have Pie charts with a single series (they would be just circles). In most cases, Pie charts have multiple series (one per slice) with a single data point in each series. C1Chart represents series with multiple data points as multiple pies within the chart.

This arrangement makes sense when you think of the labels used to identify each series and how they are displayed in the chart legend. The chart below shows the same sales data as a pie chart:

The code used to create this chart is significantly different from the bar chart code. It creates one series per value, each with a single data point. Here is the code:

· Visual Basic

· C#

· Delphi


Pie Charts with ChartLabels

A common way to display data series in a pie chart is through a legend, such as the previous example. This method works well because the information is laid out in a single region. Regardless of how many labels you have, they are laid out neatly within the legend.

In some cases, however, you may want to position the labels near the data points to make their association more obvious. You may also want to add labels containing information on data points or other chart elements, and position those labels at specific locations or near certain chart elements.

For this type of task, C1Chart provides the ChartLabels property, which allow you to create Label objects and attach them to any chart elements.

For example, the picture below shows the same pie chart as the previous example, this time with Labels attached to each slice instead of a Legend:

The chart illustrated a common difficulty associated with using too many chart labels: they may overlap and can be difficult to position correctly if there are too many of them (in this example the labels were automatically positioned by C1Chart).

The code used to create this second chart starts with the exact same steps used to create the first pie chart. The labels are created using the following additional code:

· Visual Basic

· C#

· Delphi


XY-Plots (Scatter Plots)

Bar and pie charts use a single value to represent each data point (price, units in stock, or reorder level). XYPlot charts, by contrast, use two values to represent each data point. They are useful to depict relationships between two dimensions of the data, and are often used in statistical analysis of data.

For example, the chart below shows a XYPlot depicting the relationship between product unit prices and sales:

This type of chart is often used to support statistical techniques that quantify the relationship between the variables (typically Linear Regression Analysis). For example, the chart above shows a point with unit price above $250 that is relatively distant from the others. In a linear regression, this point would be called an “outlier”, and would have a much greater influence on the result of the analysis than the other points in the series.

XY-Plot charts are also useful on their own, to show qualitative aspects of relationships. For example, are sales related to unit prices? In this example, the data seems to suggest there is indeed a relationship. Perhaps the customers prefer to buy expensive products from NorthWind and cheaper products from their local supermarkets.

Here is the code used to create the chart. It is very similar to the code used to create the bar chart, except it sets the X and Y values to data, instead of using a simple sequence for the X values:

· Visual Basic

· C#

· Delphi

This concludes the C1Chart introductory walkthrough. The following sections drill down into more detailed information about each property, as well as other chart types and advanced features.


Choosing the 2DChart Type

The 2D Chart can display data as one of several basic chart types. More specialized chart types, such as Pareto charts and Gantt charts, can also be created. In addition, many of the charts have the ability to change to other chart types independent of the properties, as long as the data requirements for both charts are equivalent. For example, the same data can be displayed as a XY-Plot and then later as a Bar chart.

The following topics explain each of the chart types in detail:

Line and XY-Plot Charts

Step Charts

Area Charts

Bar Charts

Pie Charts

Candle Charts

HiLo Charts

HiLoOpenClose Charts

Polar Charts

Radar Charts

Bubble Charts

Gantt Charts

Histogram Charts


Line and XY-Plot Charts

Line and XY-Plot charts draw each series as connected points of data. By customizing Line and Symbol Styles for each series, the connecting lines can be removed to emphasize the data values themselves, or the points can be removed to emphasize the relationship between points. The series can be drawn independently or stacked. The line and symbol properties for each series can also be customized. For more information, see Setting Line and Symbol Styles for the Series.

Use the ChartGroup object’s Stacked property to create a stacking Plot chart. Stacking charts represent the data by stacking the values for each series on top of the values from the previous series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to XY-Plot. The Line Chart option is not available using this method.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as either Line or XY-Plot.

· Another alternate method is to select Chart Properties… from the bottom of the Properties pane. From the Gallery, select Chart type as either Line or XY-Plot.


Plot Chart Programming Considerations

The following Data Arrays are used for Line and XY-Plot charts. Each data series requires X and Y array values to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position on the X-axis.
Y | Holds the position on the Y-axis.
Y1 | No effect for Line and XY-Plot charts.
Y2 | No effect for Line and XY-Plot charts.
Y3 | No effect for Line and XY-Plot charts.


XY-Plot Chart 3D Effects

C1Chart's 3D effects can be used with XY-Plot charts or stacking XY-Plot charts to create the illusion of depth with each data series. Sometimes these charts are called ribbon charts. By using the depth, elevation, rotation and shading properties, you can enhance your area charts, making them stand out by creating visual depth as shown below.

To access the 3D view for a XY-Plot chart, adjust the properties in the View3D object. The View3D object is a member of the PlotArea, which in turn is a member of the ChartArea. By adjusting the View3D object properties, Depth, Elevation, Rotation and Shading you can customize the 3D view.

Note that the Depth property is the key to all 3D type chart logic. While the Elevation and Rotation properties modify the way a user views the chart, it is the Depth property that actually dictates whether a chart is 3D. By using a non zero value for the depth property and setting the elevation and rotation property values to zero, you have created a 3D chart even though nothing seems to have changed. In effect you are looking at the "front" surface of the chart, which is visually represented in the same way as a standard area chart.

Note also, that there may be times when it is desirable to chart some data with a 3D view, and other data in the 2D plane. For these instances, adjust the Use3D property associated with each ChartGroup.


Step Charts

A step chart is a form of an XY plot chart. Step charts are often used when Y values change by discreet amounts, at specific values of X with a sudden change of value. A simple, everyday example would be a plot of a checkbook balance with time. As each deposit is made, and each check is written, the balance (Y value) of the check register changes suddenly, rather than gradually, as time passes (X value). During the time that no deposits are made, or checks written, the balance (Y value) remains constant as time passes.

Similar to Line and XY plots, the appearance of the step chart can be customized by using the Line and Symbol Styles for each series by changing colors, symbol size and line thickness. Symbols can be removed entirely to emphasize the relationship between points or included to indicate actual data values. If data holes are present, the step chart behaves as expected, with series lines demonstrating known information up to the X value of the data hole. Symbols and lines resume once non-hole data is again encountered.

As with most XY style plots, step charts can be stacked when appropriate.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Step.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Step.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Step.


Step Chart Programming Considerations

The following Data Arrays are used for Step charts. Each data series requires the use of the X array and Y array values to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position on the X-axis
Y | Holds the position on the Y-axis.
Y1 | No effect for Step charts.
Y2 | No effect for Step charts.
Y3 | No effect for Step charts.


Area Charts

An Area chart draws each series as connected points of data, filled below the points. Each series is drawn “on top” of the preceding series. The series can be drawn independently or stacked. Using the LineStyle, the fill properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

Use the ChartGroup object’s Stacked property to create a stacking Area chart. Stacking charts represent the data by stacking the values for each series on top of the values from the previous series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Area.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Area.

· Another alternate method is to select Chart Properties…, from the Properties pane. From the Gallery, select Chart type as Area.


Area Chart Programming Considerations

The following Data Arrays are used for Area charts. Each data series requires X and Y array values to be charted. Adding values to the other arrays will not have an effect for this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position on the X-axis.
Y | Holds the position on the X-axis.
Y1 | No effect for Area charts.
Y2 | No effect for Area charts.
Y3 | No effect for Area charts.


Area Chart 3D Effects

C1Chart's 3D effects can be used with area charts or stacking area charts to create the illusion of depth with each data series. By using the depth, elevation, rotation and shading properties, you can enhance your area charts, making them stand out by creating visual depth.

To access the 3D view for an area chart, adjust the properties in the View3D object. The View3D object is a member of the PlotArea, which in turn is a member of the ChartArea. By adjusting the View3D object properties, Depth, Elevation, Rotation and Shading you can customize the 3D view.

Note that the Depth property is the key to all 3D type chart logic. While the Elevation and Rotation properties modify the way a user views the chart, it is the Depth property that actually dictates whether a chart is 3D. By using a non zero value for the depth property and setting the elevation and rotation property values to zero, you have created a 3D chart even though nothing seems to have changed. In effect you are looking at the "front" surface of the chart, which is visually represented in the same way as a standard area chart.

Note also, that there may be times when it is desirable to chart some data with a 3D view, and other data in the 2D plane. For these instances, adjust the Use3D property associated with each ChartGroup.


Bar Charts

A Bar chart draws each series as a bar in a cluster. The number of clusters is the number of points in the data. Each cluster displays the nth data point in each series. Using the LineStyle, the fill properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Bar.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Bar.

· Another alternate method is to select Chart Properties…, from the Properties pane. From the Gallery, select Chart type as Bar.

Bar Chart Programming Considerations

Stacking Bar Charts

Floating Bar Charts

Inverted Bar Charts

Special Bar Chart Properties

Bar Chart 3D Effects


Bar Chart Programming Considerations

The following Data Arrays are used for Bar charts. Each data series requires X and Y array values to be charted. Adding values to the other arrays will not have an effect for this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position on the X-axis
Y | Holds the position on the Y-axis
Y1 | No effect for Bar charts.
Y2 | No effect for Bar charts.
Y3 | No effect for Bar charts.


Stacking Bar Charts

A Stacking Bar chart draws each series as a portion of a stacked bar cluster, the number of clusters being the number of points in the data. Each bar displays the nth data point in each series. Using the LineStyle, the fill properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.


Floating Bar Charts

Each series in a Stacking Bar chart can be either hidden (where the series is charted as a blank set) or excluded (where the series is not considered part of the chart data). Use the Display property of the ChartDataSeries object to determine if each series in the chart is shown, hidden, or excluded.

In the following examples, the second series is shown, hidden, and then excluded.

The Display property can be accessed at design-time in the SeriesList Collection Editor. This editor can be accessed by opening up the ChartGroupsCollection Editor, expanding the ChartData node, then clicking on the ellipsis next to the SeriesList property.


Inverted Bar Charts

For more information, see Inverting and Reversing Chart Axes.


Special Bar Chart Properties

A Bar chart draws each series as a bar in a cluster. The sizing and spacing of the clusters for Bar and Stacking Bar charts can be customized.

Cluster Overlap

Use the bar ClusterOverlap property to set the amount that bars overlap each other in a cluster. The value represents the percentage of bar overlap, with valid values between 0 and 100.

Cluster Width

Use the bar ClusterWidth property to set the space used by each bar cluster. The value represents the percentage available space, with valid values between 0 and 100.

The ClusterWidth and ClusterOverlap properties are properties of the Bar class and can be accessed at design-time under the Bar node in the ChartGroupsCollection Editor.


Bar Chart 3D Effects

C1Chart's 3D effects can be used with bar charts or stacking bar charts to create the illusion of depth with each data series. By using the depth, elevation, rotation and shading properties, you can enhance your area charts, making them stand out by creating visual depth as shown below.

To access the 3D view for a bar chart, adjust the properties in the View3D object. The View3D object is a member of the PlotArea, which in turn is a member of the ChartArea. By adjusting the View3D object properties, Depth, Elevation, Rotation and Shading you can customize the 3D view.

Note that the Depth property is the key to all 3D type chart logic. While the Elevation and Rotation properties modify the way a user views the chart, it is the Depth property that actually dictates whether a chart is 3D. By using a non zero value for the depth property and setting the elevation and rotation property values to zero, you have created a 3D chart even though nothing seems to have changed. In effect you are looking at the "front" surface of the chart, which is visually represented in the same way as a standard area chart.

Note also, that there may be times when it is desirable to chart some data with a 3D view, and other data in the 2D plane. For these instances, adjust the Use3D property associated with each ChartGroup.


Pie Charts

A Pie chart draws each series as a slice in a pie. The number of pies is the number of points in the data. Each pie displays the nth data point in each series. Using the LineStyle, the fill properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Pie.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Pie.

· Another alternate method is to select Chart Properties…, from the Properties pane. From the Gallery, select Chart type as Pie.

Pie Chart Programming Considerations

Doughnut Charts

Special Pie Chart Properties

Pie Chart 3D Effects


Pie Chart Programming Considerations

The following Data Arrays are used for Pie charts. Each data series requires X and Y array values to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds 0-based slice index for Pie chart.
Y | Holds pie slice value indicated by the X value.
Y1 | No effect for Pie charts.
Y2 | No effect for Pie charts.
Y3 | No effect for Pie charts.

Note: Entering data in more than one series will display multiple Pie charts within one ChartGroup.


Doughnut Charts

A ComponentOne doughnut chart is a pie chart with a non-zero radius and is identical in function to a pie chart, but can be used to increase ascetic appeal, particularly when shown with 3D effects. As with all pie charts, each doughnut shows each series as a fraction of the whole at each data point. If multiple data points are specified, then multiple doughnuts appear in the chart.

A doughnut chart can be created by setting the InnerRadius property of a pie chart to a non-zero value. The InnerRadius value represents the percentage of the full pie radius. The InnerRadius property can be accessed in the pie object of each Chart group. The chart property sheet below shows the InnerRadius property. In this example the InnerRadius property is set to 40 percent.

The picture below illustrates the effect on the pie charts by setting the InnerRadius property to 40 percent:

Below is another example of a doughnut chart. In this example, the Offset property of the ChartDataSeries object is set to 30.


Special Pie Chart Properties

Pie charts are quite different from the other chart types since they do not follow the concept of a two-dimensional grid or axes. Altering the diameter of the pie or the properties of the exploding slices can be accomplished with the properties of the Pie class.

Starting Angle

Use the Start property to specify the angle at which the slices for the first series start. The default angle is 0 degrees. The angle represents the arc between the most clockwise edge of the first slice and the right horizontal radius of the pie, as measured in the counter-clockwise direction (see image below). Start is a property of the Pie class and can be accessed at design-time through the Pie node of the ChartGroupsCollection editor.

Exploding Pies

A slice of a Pie chart can be emphasized by exploding it, which extrudes the slice from the rest of the pie. Use the Offset property of the series to set the exploded slice’s offset from the center of the pie. The offset is measured as a percentage of the radius of the pie.

Exploding slices can be set programmatically, and can be set for the series only:

· Visual Basic

· C#

· Delphi


Pie Chart 3D Effects

C1Chart's 3D effects can be used with pie charts to create the illusion of depth with each data series. By using the depth, elevation, rotation and shading properties, you can enhance your area charts, making them stand out by creating visual depth as shown below.

To access the 3D view for a pie chart, adjust the properties in the View3D object. The View3D object is a member of the PlotArea, which in turn is a member of the ChartArea. By adjusting the View3D object properties, Depth, Elevation, Rotation and Shading you can customize the 3D view.

Note that the Depth property is the key to all 3D type chart logic. While the Elevation and Rotation properties modify the way a user views the chart, it is the Depth property that actually dictates whether a chart is 3D. By using a non zero value for the depth property and setting the elevation and rotation property values to zero, you have created a 3D chart even though nothing seems to have changed. In effect you are looking at the "front" surface of the chart, which is visually represented in the same way as a standard area chart.

Note also, that there may be times when it is desirable to chart some data with a 3D view, and other data in the 2D plane. For these instances, adjust the Use3D property associated with each ChartGroup.


Candle Charts

Candle, HiLo, HiLoOpenClose charts are all types of Stock charts used in financial applications to show the opening, closing, high and low prices of a given stock.

A Candle chart is a special type of HiLoOpenClose chart. The "candle" (the solid bar between the opening and closing values) represents the change in stock price from opening to closing. With Simple Candle charts, a hollow candle indicates a rising stock price (close was higher than open), and a filled candle indicates a falling stock price (open was higher than close). With Complex Candle charts, the SymbolStyle color represents a rising stock price, and the LineStyle represents a falling stock price.

Using the LineStyle and SymbolStyle properties and the HiLoData class, the fill and line properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Candle.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Stock and Chart sub-type as Candle.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Stock and Chart sub-type as Candle.


Candle Chart Programming Considerations

The following Data Arrays are used for Candle charts. Each data series requires the use of the X array and four Y array values including Y, Y1, Y2, and Y3 to be charted.

X | Holds the position on the X-axis.
Y | Holds the high value for the Candle chart.
Y1 | Holds the low value for the Candle chart.
Y2 | Holds the open value for the Candle chart.
Y3 | Holds the close value for the Candle chart.


HiLo Charts

A HiLo chart combines two independent values to supply high and low data for each point in a series. HiLo charts are used primarily in financial applications to show the high and low price for a given stock. The elements of the Y and Y1 arrays in each series of a HiLo chart represent the "high" value, and the "low" value.

Using the LineStyle, the fill and line properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to HiLo.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Stock and Chart sub-type as Hi-low.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Stock and Chart sub-type as Hi-low.


HiLo Chart Programming Considerations

The following Data Arrays are used for HiLo charts. Each data series requires the use of the X array and two Y array values including Y and Y1 to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position on the X-axis.
Y | Holds the high value for the chart.
Y1 | Holds the low value for the chart.
Y2 | Not in effect for HiLo charts.
Y3 | Not in effect for HiLo charts.


HiLoOpenClose Charts

HiLoOpenClose charts are similar to HiLo charts except that they combine four independent values to supply high, low, open and close data for a point in a series. In addition to showing the high and low value of a stock, the Y2 and Y3 array elements represent the stock's opening and closing price, respectively.

Using the LineStyle, the fill and line properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to HiLoOpenClose.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Stock and Chart sub-type as Hi-low-open-close.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Stock and Chart sub-type as Hi-low-open-close.


HiLoOpenClose Chart Programming Considerations

The following Data Arrays are used for HiLoOpenClose charts. Each data series requires four Y array values including Y, Y1, Y2, and Y3 to be charted.

X | Holds the position on the X-axis.
Y | Holds the high value for the chart.
Y1 | Holds the low value for the chart.
Y2 | Holds the open value for the chart.
Y3 | Holds the close value for the chart.


Special HiLoOpenClose Chart Properties

The developer can specify how the open and close tick marks are displayed on the chart.

To Display Open and Close Ticks:

Use the ShowOpen, ShowClose and FullWidth properties to determine how the open and close tick marks are displayed. Enable ShowOpen to display the open tick marks and enable ShowClose to display the close tick marks. Enable FullWidth to draw the open and close tick marks on both sides of the vertical range.


Polar Charts

A Polar chart draws the x and y coordinates in each series as (theta,r), where theta is amount of rotation from the origin and r is the distance from the origin. theta may be specified in either degrees (default) or radians. Since the X-axis is a circle, the X-axis maximum and minimum values are fixed. The series can be drawn independently, or stacked.

Using the LineStyle and SymbolStyle, the line and symbol properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

Use the ChartGroup object’s Stacked property to create a stacking Polar chart. Stacking charts represent the data by stacking the values for each series on top of the values from the previous series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Polar.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Polar/Radar.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Polar/Radar.


Polar Chart Programming Considerations

The following Data Arrays are used for Polar charts. Each data series requires X and Y array values to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the X-axis position in either radians or degrees.
Y | Holds the position on the Y-axis.
Y1 | No effect for Polar charts.
Y2 | No effect for Polar charts.
Y3 | No effect for Polar charts.


Special Polar Chart Properties

The properties below can be accessed at design-time through the Polar node in the ChartGroupsCollection Editor.

Charting Degrees or Radians

The Degrees property of the Polar class sets whether the X data values for polar charts reflect angles in degrees (True) or radians (False). The Degrees property can be accessed at design-time through the Polar node of the ChartGroups Collection Editor.

If Degrees is set to False and the chart reflects Radian values, then C1Chart provides the option of having the chart annotated with ratios of Pi rather than radians. Setting the PiRatioAnnotations property of the Polar class to True will annotate the X values in ratios of Pi.

Setting the Starting Angle

The Start property of the Polar class sets the starting angle for Polar charts. The default setting for this property is 0. Setting this property to a value other than 0 will move the origin of the chart counter-clockwise by the specified amount. For instance, setting the Start property to 90 rotates the Polar chart 90 degrees in the counter-clockwise direction.


Radar Charts

A Radar chart draws the y value in each data set along a radar line (the x value is ignored except for labels). If the data has n unique points, then the chart plane is divided into n equal angle segments, and a radar line is drawn (representing each point) at n/360 degree increments. By default, the radar line representing the first point is drawn vertically (at 90 degrees). The series can be drawn independently or stacked.

Using the LineStyle and SymbolStyle, the line and symbol properties of each series can be customized. For more information, see Setting Line and Symbol Styles for the Series.

Use the ChartGroup object’s Stacked property to create a stacking Radar chart. Stacking charts represent the data by stacking the values for each series on top of the values from the previous series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Radar.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Polar/Radar.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Polar/Radar.


Radar Chart Programming Considerations

The following Data Arrays are used for Radar charts. Each data series requires only a Y array value to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Ignored except for labels.
Y | Holds the Y-axis data values for the Radar chart. The number of points in the Y Data Array determines the amount of radar lines in the chart.
Y1 | No effect for Radar charts.
Y2 | No effect for Radar charts.
Y3 | No effect for Radar charts.


Special Radar Chart Properties

The properties below are available under the Radar node in the ChartGroupsCollection Editor.

Charting Degrees or Radians

The Degrees property of the Radar class sets whether the Start property value for radar charts reflects angles in degrees (True) or radians (False). The Degrees property can be accessed at design-time through the Radar node of the ChartGroups Collection Editor.

Setting the Starting Angle

The Start property of the Radar class sets the starting angle for radar charts. The default setting for this property is 0. Setting this property to a value other than 0 will move the origin of the chart counter-clockwise by the specified degrees. For instance, setting the Start property to 90, the Radar chart rotates 90 degrees in the counter-clockwise direction.

Filled Radar Charts

A Filled Radar chart draws the y value in each series along a radar line (the x value is ignored except for labels). If the data has n unique points, the chart plane is divided into n equal angle segments, and a radar line is drawn (representing each point) at n/360 degree increments. Each series is drawn "on top" of the preceding series. The series can be drawn independently or stacked. Filled Radar charts are the same as Radar charts, except that the area between the origin and the points is filled and symbols are not present. To create a Filled Radar chart, set the Filled property of the Radar class to True.


Bubble Charts

A Bubble chart combines two independent values to supply both the point y value and the point sizes. Bubble charts are used to represent an additional data value at each point by changing its size. The Y array elements determine the Cartesian position (as in a XY-Plot chart), and the Y1 element values determine the size of the bubble at each point. The size of the points can be encoded according to area or diameter. Using the LineStyle and SymbolStyle properties, the symbol style and color, and the appearance of connecting lines appear can be specified. For more information, see Setting Line and Symbol Styles for the Series.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Bubble.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as XY-Plot and Chart sub-type as Bubble.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as XY-Plot and Chart sub-type as Bubble.


Bubble Chart Programming Considerations

The following Data Arrays are used for Bubble charts. Each data series requires X, Y, and Y1 array values to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position of the bubble relative the X-axis.
Y | Holds the position of the bubble relative to the Y-axis.
Y1 | Holds the relative size of the bubble.
Y2 | No effect for Bubble charts.
Y3 | No effect for Bubble charts.


Special Bubble Chart Properties

A Bubble chart combines two series to draw a plot chart with varying point sizes. The encoding method for the size of the bubbles, as well as their minimum and maximum size can be specified.

Encoding Method

Use the EncodingMethod property to set whether to size the bubbles according to diameter or area. When specifying the size of the bubble, both the diameter and area are measured as a percentage of the total diameter or area of the PlotArea. Inverting these values (making the Minimum value larger than the Maximum) draws large bubbles for small values, and small bubbles for large values.

The EncodingMethod is a property of the Bubble object and can be accessed through the Bubble node in the ChartGroupsCollection Editor.

Maximum and Minimum Size

The maximum and minimum allowable size for bubbles can be set using the MaximumSize and MinimumSize properties respectively. These are properties of the Bubble object and can be accessed through the Bubble node in the ChartGroups Collection Editor as well.


Gantt Charts

A Gantt chart is used to illustrate a timeline of various tasks and outline the critical activities to the project's completion.

The Gantt chart has the following similarities to the Bar and the HiLo charts:

· Like the Bar chart, the Gantt chart uses bars, but it is commonly displayed as an inverted and reversed bar chart.

· Similar to the HiLo chart, where the elements of the Y and Y1 arrays in each series represent the "high" value and the "low" value, the Gantt chart uses the Y and Y1 elements to represent the start and finish time of a task.

A Gantt chart clearly illustrates a timeline in the following ways:

· Activities/Tasks

The activities/tasks are displayed along the left side of the chart and a timeline is shown at the top or bottom of the chart.

· Task Duration

The duration of each project's task is represented as a bar. The beginning of the bar indicates the start time of the activity or task. The end of the bar indicates the finish or completion time of the activity or task.

· Critical Activities or Accomplishments

Typically, in Gantt charts, special characters or colors are used to represent critical activities or accomplishments through the duration of each task.

In a Gantt chart you can create a new task by adding a new series to the ChartDataSeries. In each series there are several properties that you will use to create the information for your data in the task. For instance, you can use the Y property to fill in the data for the start time of your task and the Y1 property to record the data for the end time of your task. You can choose the type of data that you want to use for your Gantt chart from the DataType property of the ChartDataArray.

The Gantt chart below shows the start and finish time of each task. Gantt charts can display single or multiple projects in one task. In some cases, a task is assigned multiple subtasks. Each bar represents one task or subtask. Having a few bars in one axis can span a large range of x and y values. The data for a Gantt chart is more effective when it is displayed horizontally rather than vertically. As a result, the chart is inverted when the x-axis is vertical and the y axes are horizontal. C1Chart provides the Inverted property of the ChartArea and the reversed property of the axis. Notice that each horizontal bar is filled in with a solid color. Often, this represents a completed task. Also, each horizontal bar contains a label indicating the start date and finish date. The labels can be added to the horizontal bars at run-time or at design-time by using the Label property of the ChartDataSeries class.

To Change the Chart Type

· Expand the ChartGroups node in the .Net Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property to Gantt.

· An alternate method to change chart type is to right-click the existing chart and select Chart Properties. From the Gallery, select Chart type as Gantt.

· Another alternate method is to select Chart Properties… from the Properties pane. From the Gallery, select Chart type as Gantt.


Gantt Chart Programming Considerations

The following Data Arrays are used for Gantt charts. Each data series requires the use of the X array and two Y array values including Y and Y1 to be charted. Adding values to the other arrays will not affect this chart, but filling the arrays with data could make it easier to switch to another chart type that does use those arrays:

X | Holds the position on the X-axis
Y | Holds the start value for the start time of the project.
Y1 | Holds the end value for the finish date of the project.
Y2 | No effect for Gantt charts.
Y3 | No effect for Gantt charts.


Histogram Charts

A histogram is a chart that takes a collection of raw data values and plots the frequency distribution. It is frequently used with grouped data, which is generated by measuring a collection of raw data and plotting the number of data values that fall within defined intervals. Note that raw values are not used to generate data for a histogram, but are used to generate a frequency instead. While showing similarities to bar charts, it is important to note that histograms are used with quantitative variables whereas bar charts are commonly used with qualitative variables.

A histogram is beneficial for pinpointing prominent features of the distribution of data for a quantitative variable. Below are the important features for a quantitative variable:

· It reveals the typical average value.

· The data yields a general shape. The data values can be distributed symmetrically around the middle or they can be skewed.

· There can exist outlier values that are distant from the group of data.

· The data values can be near or far to the typical value.

· The distribution may result in a single peak or multiple peaks and valleys.

Note: The interval values represent the frequency of data elements. There are many different techniques used for displaying frequency. Frequency is commonly displayed in the shape of a polygon, column, or bar graph.

To Change the Chart Type

· Expand the ChartGroups node in the .NET Properties Window. In the right pane of the Editor, set the ChartType property to Histogram.

· Another alternate method is to expand the ChartGroups node in the .NET Properties Window. Open the ChartGroups Collection Editor by clicking the ellipsis button. In the right pane of the Editor, set the ChartType property of the appropriate ChartGroup to Histogram.


Histogram Chart Programming Considerations

Unlike other cartesian charts, a histogram input is not specified by X and Y coordinates. Instead, a single array of raw data values are specified in the Y ChartDataArray of each ChartDataSeries. Depending upon the IntervalCreationMethod selected, histogram input may also use the X ChartDataArray of a ChartDataSeries to specify interval boundaries:

X | Holds the interval boundaries for histograms with XDataBoundaries as the IntervalCreationMethod.
Y | Holds the raw data values.
Y1 | No effect for Histogram charts.
Y2 | No effect for Histogram charts.
Y3 | No effect for Histogram charts.

The next topic discusses the different types of histograms.


Types of Histogram Graphs

There are several types of histogram charts. C1Chart uses the following types of histograms:


Histogram

A histogram chart's appearance is similar to a bar chart. A minor difference in appearance is that the rectangles in a bar chart are commonly separated by a space, whereas the rectangles in a histogram are not separated by a space. Histogram's columns are not separated because the column boundaries represent the actual X axis values bounding the interval represented by each column.

While the histogram and bar charts' appearances relate, their functionality does not. A bar chart is created from data points whereas a Histogram is created from the frequency distribution of the data.

The charts following illustrate the difference between a bar chart and a histogram chart. Both of the charts use exactly the same Y data. The bar chart (top) shows each average mean temperature for each year in which it occurred. The histogram chart (bottom) using the same input temperature data automatically tabulates the number of temperatures that fall within each interval and draws the resulting histogram. For convenience, chart labels with the count in each interval have been added at the top of each interval.

The chart below shows the details and properties of a histogram. It is a scatter chart of one hundred random data coordinates in one ChartGroup, and in the second ChartGroup, a histogram based on the distribution of distances from each scatter datapoint to the intersection of the markers:

In the histogram chart above, the SemiAutomatic method is used for the IntervalCreationMethod property to specify the upper and lower limits together with the number of intervals. The IntervalCreationMethod property is useful when you need to set different interval boundaries.

You can choose one of the following three methods from the IntervalCreationMethod property:

· SemiAutomatic

When the SemiAutomatic method is used, the upper and lower limits of the intervals are specified together with the number of intervals. Interval boundaries are calculated uniformly. The IntervalStart, IntervalWidth, and IntervalNumber properties are available when you select the SemiAutomatic method. The IntervalStart property gets or sets the numeric value of the beginning of the first interval. In the histogram chart above, the IntervalStart property is set to zero, therefore the interval begins at the value, zero. You can specify the interval width by setting the IntervalWidth property to a specific width size. In the example above, the IntervalWidth property gets the width size of 10 for each interval. The IntervalNumber property will get the number of intervals in a histogram. For example, in the histogram chart above the IntervalNumber property is set to 10, therefore, there can be a maximum of ten intervals. The remaining four intervals are not displayed in the chart above, since they have zero data elements.

· Automatic

When the Automatic method is used, the chart calculates the upper and lower limits of the intervals using the maximum and minimum data values, and restricting the intervals to lie within 3 standard deviations of the data mean. The number of intervals is optional. Interval boundaries are calculated uniformly.

· XDataBoundaries

When the XDataBoundaries method is used, the X values of the data series are used to explicitly set each interval boundary. The X values are sorted and duplicate values are eliminated. Each ascending value of the result is used determine the next interval boundary. Thus, the first and second resulting X values define the first interval and each successive X value specifies the end of the next interval. Note that specification of N intervals requires N+1 unique X values.

To access the IntervalCreationMethod property at design time, expand the ChartData node and click on the ellipsis button next to the SeriesList node. The ChartDataSeries Collection Editor will appear. Locate the Histogram node and expand it. Select the IntervalCreationMethod property and choose the type of method by selecting from one of the three methods in the IntervalCreationMethod property's drop-down box. The IntervalCreationMethod property can also be accessed through code by entering the following:

· Visual Basic

· C#

· Delphi

Note: The text, "cds," shown above, is the variable name for the ChartDataSeries object. In the code example above, the SemiAutomatic method is used. You could also you the Automatic or XdataBoundaries method by assigning either one to the IntervalMethodEnum.

You can display the intervals and counts as a Histogram, Frequency, or a Stepped Frequency by using the DisplayType property of the ChartHistogram object like the example code below:

· Visual Basic

· C#

· Delphi

Note: The text, "ch," in the above example, is the variable name for the ChartHistogram object.

Sometimes a few data elements appear far from the rest of the data elements. In this circumstance, the distant value is referred to an outlier value. In most cases, the outlier will not fall into an interval since it's so far from the rest of the data, therefore, the value of the data element will be missed.

To prevent outlier values from exclusion, C1Chart's ChartHistogram object provides the following two properties:

· AboveIntervalCount

The AboveIntervalCount returns the number of values greater then the ending value of the last interval

· BelowIntervalCount

The BelowIntervalCount returns the number of values numerically less than the starting value of the first interval.

In the designer you can find the AboveIntervalCount and BelowIntervalCount properties located in the Histogram node of the ChartDataSeries Collection editor. The code below shows how to use the AboveIntervalCount property to see if there are any outlier values:

· Visual Basic

· C#

· Delphi

In histograms the area of a column or interval is proportional to the value it represents. When the interval width is the same for all intervals then each interval height represents the same frequency per unit width. In some cases the widths of the columns vary in size. When this occurs, the height of the columns must be adjusted to keep the areas proportional. For example, if you had a few columns that were non-uniform you could utilize the Normalized property in C1Chart's Histogram object to make the column or interval proportional to the value it represents.

The histogram object contains three properties: NormalDisplay, NormalizationInterval, and Normalized. The Normalized property can be used when you want non-uniform intervals to be normalized so each interval height represents the same frequency per unit width. A non-uniform interval is an interval that is not in uniform with the remaining intervals. When you set the Normalized property to True you have the flexibility of setting the NormalizationInterval property to a specific width size. Let's say that your IntervalWidth is 10 and you want to normalize it to 20. This will cause the size of each interval to double. As a result it will cause each frequency count (y-value) to double. If you wanted to normalize your IntervalWidth to 2 from 10 so you can normalize the interval width 1/5 of the size then this would make each frequency count (y-value) 1/5 smaller.


Frequency Graph

A frequency chart is a histogram without the columns. The midpoint of each column is connected by a straight or curved (spline) line. As a result, the columns are eliminated. In C1Chart, the connecting lines from one midpoint of a column to another midpoint of a column can be lines or spline fits. A frequency chart is beneficial when you are comparing multiple data series since it makes the data easier to read.

The frequency graph below illustrates the distribution (in distance) from all the data coordinates from each of the scatter data points to the marker intersection. The numbers associated with the scatter data points are point index values.

You can set the connected lines in the Frequency chart to straight by setting the FitType property to Line. Alternatively, curved lines can be obtained with a FitType of Spline. The advantage of a frequncy graphic is that it shows the important features of the distribution without the distraction at the corners. The following code shows an example of how to use the FitType property for the Frequency graph:

· Visual Basic

· C#

· Delphi

The following Frequency graph is the same as the graph above except it includes a normal curve to compare the distance distribution with the normal distance distribution. With the normal curve shown we can evaluate whether the raw data is a reasonable approximation to the normal distribution. The raw data's labels are hidden to provide a clearer picture of both curves.

The Histogram object in Chart provides a NormalDisplay property to get the (Gaussian) Normal curve to display. You can access this property at design-time in the C1Chart's properties grid by expanding the Histogram node and setting the NormalDisplay property to C1.Win.C1Chart.NormalCurve. Another alternative is to access the NormalDisplay property by using the following code:

· Visual Basic

· C#

· Delphi

Note: The text, nc, is the variable name for the NormalCurve object.


Stepped Frequency Graph

A stepped frequency is the same as a histogram chart in terms of function. The charts only differ in appearance. In the stepped frequency chart the lines are eliminated from the columns whereas in a histogram the lines are kept in the columns.


Creating 2D Charts

Using the Chart Wizard

Using the Chart Properties Dialog Box


Using the Chart Wizard

The Chart Wizard provides an easy three step process to guide you through the basic steps for creating a chart. You can choose from various chart types, set up the chart's content for its header, footer, legend, and x and y axes, and create/edit the chart's data. The Chart Wizard includes a preview tab so you can see how your chart looks after you have made changes to it.

To access Chart Wizard at design time:

· Right-click on the C1Chart control. Select Chart Wizard from the context menu.


Step 1. Choose Chart Type

There are various chart types to choose from the chart wizard. This offers the ability to quickly create many different types of charts at design-time. The chart types include line, scatter, column, bar, area, pie, stock, polar/radar, and Gantt. In addition each chart type has individual subtypes, which allows further selection of chart types. See Creating Specific Chart Types for more detail about each chart type.

After a chart type is selected, choose Next to set up specific details for the new chart.


Step 2. Setup Chart

The next step in the chart wizard provides you with the ability to create or modify the Header, Footer, and Legend, as well as the titles that you wish to specify for Axis X and Axis Y. You can specify a title for the X-axis or Y-axis by typing in the corresponding text box. Clicking on the check box enables the Chart element to appear in your chart. For more details about these elements, see Customizing Chart Elements. You can check the Use data binding checkbox if you want to link your chart to an existing database.

Once the chart element settings are specified, select Next to edit the chart data.

Note: At any time during the design of your chart, click the preview tab to see what the final chart will look like.


Step 3. Edit Chart Data

The next step in the chart wizard is to create or modify the appearance of the data chart series in the data area of the chart. Under the ChartData tab, you can add or remove Data Series, specify the appearance of each data series such as the Labels, Linestyle, and Symbols. You can check the Smoothed checkbox if you want the line of a specific series in the data to appear smooth. This can be done by selecting a series in the Data Series list box and then checking the Smoothed check box.

You can also select the DataTable tab to view all data associated with your chart. If you would like to change specific data, you can do so here.

Finally, select the Preview tab to see your finished chart. Click Finish when the chart is completed.


Using the Chart Properties Dialog Box

The Chart Properties dialog box provides an easy and interactive way to create and modify a new or existing chart. Like the Chart Wizard, it contains the same design and function as step 1: Choose Chart Type and step 3: Edit chart data. However, it also includes additional property settings for the x and y axis along with appearance settings for the header, footer, legend, chart area, and plot area of the chart. The Chart Properties dialog box can be accessed at design time by:

· Right-clicking on the C1Chart control and selecting Chart Properties from its context menu.

The chart properties dialog box provides more options to address specific details with the design of the chart you are developing. The section below explains the functionality of the Chart Properties dialog box.

Gallery Element

Data Element

Axis X , Axis Y, and Axis Y2 Elements

Appearance Element


Gallery Element

The Gallery section in the left pane of the Chart Properties dialog box provides options for choosing a chart type and/or a sub-type of a chart. To see a description of all chart type selections, see Choosing the 2DChart Type. You can choose from a variety of simple chart types or you could click on complex types to add more functionality to your chart.


Complex Types Tab

In the Complex Types tab you can specify whether you want to chart one or two chart groups. Also, you can select the type of chart you would like to create in the drop-down box for each group. For each group, you have the option to make the groups stacked and/or 3D. The screen capture below illustrates the elements included in the Complex Types tab of the Gallery section.

Note: If you don't select a chart type for data [Group1] then the elements for data [group1] will not appear in the list box in the left pane of the Chart Properties dialog box.


Data Element

Select Data from the left pane of the Chart Properties dialog box to create or modify the series in your chart data. By selecting the ChartData tab you can add or remove data series in your chart, specify the label and color of each data series, and you can stack your data by clicking on the Stacked check box. To select a data source, click on Binding and choose a data source. To modify the content in the table, click on DataTable and make any changes to the data. See The ChartDataSeries Object or Entering and Modifying Data for the ChartDataArrays or the SeriesList Property to find out more about the ChartDataSeries object.


Axis X , Axis Y, and Axis Y2 Elements

You can select Axis X, Axis Y, or Axis Y2 to modify or create the format style, scale, and annotation of the axes. Each axes element (AxisX, AxisY, and AxisY2) contain the following tabs in the upper right pane of the Chart dialog box: the name of the selected element, the Scale, the Annotation, and the Preview tab.

Note: When data is added to the second chart group (Group1), the Y2-axis will appear. The data in the Y2-axis determines the maximum and minimum values of the axis in the same way that ChartGroup(0) data determines the maximum and minimum values of the Y-axis. Manual settings can be used to force alignment between axes. The picture below shows a chart that contains a Y2-axis.

In order to make the AxisY2 element appear in the left pane of the Chart Properties dialog box you must select a chart type for Data [Group1] in the Complex Types tab from the Gallery element. Also, after selecting a chart type for Data [Group1] you need to add a series to Data [Group1]. For more information see the Complex Types Tab.

The screen shot below represents the name tab for the selected Axis. In the first tab you can specify the title, font, color, and position of the axis. In addition you have the option to make the title for the axis appear on top by selecting the On top check box.


Scale Tab

The Scale tab allows you to set the Minimum, Maximum, Major Unit, Minor Unit, and Origin property. In the example below the auto button was enabled so all the values for each property would be set to their default values. Your axis can also be Reversed and/or Logarithmic by clicking on the box.


Annotation Tab

The Annotation tab allows you to specify whether you would like the AxisX, AxisY, or AxisY2 to be labeled as Values or ValueLabels. If you select ValueLabels from the Method drop-down box, a Labels… button appears. Clicking on the Labels button will enable the ValueLabel Collection Editor dialog box to appear. Here you can add members to your labels. For more information see the ValueLabels Annotation.

If you select Values from the drop-down box a format drop-down box will appear. Here you can select from various types of formats. Also, you can specify the format string in the Format string textbox. For more information see the Values Annotation. For more information about the Format types please see the following topic: FormatEnum Enumeration.


Gridlines Tab

Select Gridlines if you wish to add gridlines to see where the chart falls on a grid. If you would like to see the gridlines, simply check visible in the Major Grid and Minor Grid section. You can specify the spacing between each major or minor grid line by typing the amount in the Spacing text box. Also, you can specify the line style type for each grid line.


Appearance Element

Finally, select Appearance. Here you can create/modify the appearance of the Header, Footer, Legend, ChartArea, and PlotArea in your chart by choosing the selection under Appearance and setting each element's properties.

The Header and Footer contain the same properties: ForeColor, Fill, Border, Font, Position, and Text. The Legend element contains the same properties as the Header and Footer plus an additional Orientation property. The ChartArea element contains the ForeColor, Fill, Border, Font, and an Inverted property. The PlotArea element contains a Fill and Boxed property. Clicking on the Boxed check box will create a box around the plot area in the chart.

Here is an illustration of the appearance for the Legend:

Here is an illustration of the appearance elements for the ChartArea:

In this example, the Fill color property is used for illustration purposes. The gradient style is applied to the Fill color of the ChartArea. You can make the ChartArea inverted by clicking on the Inverted check box.

The next section will explain the hierarchical layout and function of the Data elements of the ChartData object.


Understanding the Chart Data Objects

The 2D Chart displays data supplied in a General Layout. Data gets loaded into the six ChartDataArray objects, which take a type Object. Data can be loaded from pre-filled arrays or can be entered in at design-time.

A General layout is used with every chart type. It contains an X and Y array, along with Y1, Y2, Y3, and Y4 arrays. All of these arrays can take data or can be null. For instance, to plot an XY chart with only one series, only the X and Y arrays would contain data. The other Y arrays would remain empty. In addition, unlike an array layout, each series can have a different number of points, and does not have to have matching X values which allows for charting as in the image below.

For convenience, a PointData property (an array of PointF structures) can also be used to supply X and Y data. The PointF values are not independent of the X and Y arrays, merely another form of data input and output. Changing values in the PointData property changes the X and Y arrays and vice versa.

The important General layout characteristics illustrated above are:

· The points in each series have their own X- and Y-values.

· Each series can contain a different number of points.

The Chart Data Layout

Entering and Modifying Data for the ChartDataArrays

Functions for Plotting Data

Using TrendLines

Using PointStyles

Customizing the ChartDataSeries

Charting Irregular Data

Data Binding


The Chart Data Layout

The C1Chart has a specific hierarchy of data related classes, collections, and properties. This section details each data object individually and provides information on how to access, modify, and create the data for the chart.

The ChartGroup Object

The ChartData Object

The ChartDataSeries Object

The ChartDataArray Object


The ChartGroup Object

Data in a chart is organized into ChartGroups. Each chart contains two ChartGroups (although most charts will only use the first ChartGroup), each of which is treated as a separate entity. ChartGroups allow more than one chart to be displayed in the ChartArea and provide access to many of the chart-specific properties.

In C1Chart, a chart group is represented by a ChartGroup object. The ChartGroup objects are organized into the ChartGroupsCollection, which is accessed through the ChartGroups object. This collection provides access to the ChartGroups through two methods. First the individual chart groups can be accessed through the collection:

· Visual Basic

· C#

· Delphi

Secondly, the Group0 and Group1 properties of the ChartGroup's object return the associated ChartGroup and allow circumvention of the long collection name:

· Visual Basic

· C#

· Delphi

Note: The ChartGroupsCollection accepts usual iteration methods as illustrated below:

· Visual Basic

· C#

· Delphi


The ChartData Object

The ChartGroup object also contains the ChartData object. This object contains the Hole property, the FunctionsList property, the SeriesList property which returns the ChartDataSeriesCollection object, the PointStylesList property, and the TrendsList collection property. The ChartGroup object essentially provides access to all of the data-related objects and properties of the chart:

· Visual Basic

· C#

· Delphi

The FunctionsList collection stores functions to be plotted in the Chart data or plot area. The FunctionsList property gets the FunctionsCollection object associated with the current ChartData object.

PointStyles provide a mechanism to mark specific data points with different visual attributes than other points of the same data series. PointStyles are contained by the PointStylesCollection.

The SeriesList property returns a ChartDataSeriesCollection which is a collection of ChartDataSeries objects. ChartDataSeries objects contain all of the series and data for the chart. Series objects contain the ChartDataArray objects, which hold the chart’s data.

The trend lines supported by chart with TrendLine objects, can be divided into two groups, including regression and non-regression. Regression trend lines are polynomial, exponent, logarithmic, power and Fourier functions that approximate the data which the functions trend.

The ChartData object also provides access to the Hole property. Data Holes are breaks in the continuity of the data set.


The ChartDataSeries Object

One of the more important objects in C1Chart is the ChartDataSeries. The data series contains all of the data to be included in the chart and many important data-related properties.

The ChartDataSeries is contained in the SeriesList collection of the ChartData object, which is an object of the ChartGroup:

· Visual Basic

· C#

· Delphi

The series object is crucial for data and data access for two reasons:

1. First, the number of series in the SeriesList collection of the ChartData object determines the number of data series to be displayed in the chart. If five sets of plots in an X-Y chart are desired, then there should be five series in the SeriesList.

2. Secondly, the number of values specified in the X, Y, and Y1, Y2, Y3 ChartDataArray objects within the series determine how many points that series will have and how it will be charted. If the chart has ten values in both the X and Y array objects for Series 0, and 5 values in both the X and Y arrays for Series 1, then the first series will have ten points and the second series will have five.

Note: The number of points in a series is the number of elements of the longest data array object applicable to the series. For example, an XY-Plot uses X and Y arrays. If X has five elements and Y has three elements, then the number of points is five, and the last two elements of Y are assumed to be data holes. Even if the Y1 array has ten elements, the number of points is five because an XY-Plot does not use the Y1 array. However, if the chart type is changed to HiLo, then X, Y and Y1 are all used and so the number of points would be ten, and both the X and Y arrays would be assumed to contain data holes in the missing elements.


The ChartDataArray Object

Each series contains six ChartDataArray objects. The X, Y, Y1, Y2, Y3 data array objects hold arrays of data corresponding to the X, Y, Y1, Y2, and Y3-axes. The sixth data array object is the PointData object. This object accepts an array of PointF or Point values and is intended to be used as an alternative to the X, Y, Y1, Y2, Y3 data array objects.

Each ChartDataArray is a read-only object that can only be modified through two methods. The CopyDataIn and CopyDataOut methods of the ChartDataArray copy arrays of data into these objects and return arrays of data from these objects.

The X, Y, Y1, Y2, Y3 data array objects accept Object data types. This allows a variety of .Net array types to be entered into the ChartDataArray objects (except for PointData).


Entering and Modifying Data for the ChartDataArrays

Under the ChartDataSeries object, the six ChartDataArray objects hold the arrays of data that the chart is drawn from. The X, Y, Y1, Y2, and Y3 data array objects hold and return the data arrays for the X and Y-axes, while the PointData data array object holds and returns PointF and Point objects for the X and Y-axes.

Copying and Returning Data Array Objects

Using the ChartDataArray Collection Editor to Modify the ChartDataArray elements

String Inputs for ChartDataArrays

Mixing ChartDataArray Inputs

Setting the X and Y Data Arrrays Using PointF Values


Copying and Returning Data Array Objects

CopyDataIn Method

In C1Chart, the X, Y, Y1, Y2, and Y3 data array objects accept Object data types. Therefore, a variety of .Net type arrays may be entered into the ChartDataArray objects (except for PointData). The CopyDataIn method of the ChartDataArray takes an Object data type (which can be an array of various types) and loads it into the data array. A good implementation would be to maintain a set of arrays for the data series and before the chart is to be drawn and update the C1Chart’s data array objects with the arrays of values. This allows full control over the data and provides control over batching the data values. The following shows a brief example of how the arrays can be built and set to the chart’s data array objects:

· Visual Basic

· C#

· Delphi

CopyDataOut Method

While the CopyDataIn method loads the array data into the ChartDataArray objects, the CopyDataOut method extracts data from the array objects. This method returns an Object data type, which contains the data array.

· Visual Basic

· C#

· Delphi

To prevent having to then convert this Object to an array of the correct data type, the CopyDataOut method can also accept a parameter of System.Type, which causes it to then produce an array of the specified type. Because the actual data type is required for the parameter, the code must also include the GetType() function (typeof() in C#) to deliver the correct type. In the following example, the arrays are returned from the chart’s ChartDataArray objects with the CopyDataOut method, but as data arrays of type Single:

· Visual Basic

· C#

· Delphi

C# Note:

For C# users, the CopyDataOut implementation is slightly different. In C# array data types cannot be set to variables of type Object. The array can be set to the Object if the Object is explicitly cast to the correct data type.

· Visual Basic

· C#

· Delphi


Using the ChartDataArray Collection Editor to Modify the ChartDataArray elements

The method of altering individual data elements in the data arrays involves the ChartDataSeries and the ChartDataArray objects.

Design-Time

Setting individual values through the .Net Properties Window is made quite easy by the ChartDataArray Collection Editor. Data array editors exist for the X, Y, Y1, Y2, Y3, and PointData arrays. These editors can be accessed by clicking on the ellipsis next to the appropriate data array in the SeriesList Collection Editor (which is available under the ChartData node of the ChartGroupsCollection Editor). Similar to the .Net collection editors, the ChartDataArray Editor has the array indices in a text box on the left and the array values on the right.

Note: The ChartDataArray Editor also contains functionality for toggling the display between Date, DateTime, and Time display. If the values for the ChartDataArray are of DateTime type, then by clicking on the header above the value column, the values displayed will toggle between DateTime, Date and Time formats.

Run-Time

At run-time the ChartDataArray elements are available like any normal array elements would be. Changing the values in the array objects is as easy as changing the values in an array:

· Visual Basic

· C#

· Delphi

Retrieving the values from the ChartDataArray requires a similar process:

· Visual Basic

· C#

· Delphi


String Inputs for ChartDataArrays

At times, it is very convenient to use string values as annotations along the X or Y axes, and numeric values along the other axis.

For example, suppose a data source contains 2 columns, one with a company name (string), and one with the number of ComponentOne products purchased by that company. To create a bar chart summarizing this data, one might create a series that uses the number of products on the Y axis, and then create an array with counting numbers and use this array for X values. Then, create ValueLabels for the X axis, pairing each company name with a count number, thus producing a chart similar to the following:

Since this situation occurs often, C1Chart accepts ChartDataArray with strings, and automatically enumerates the array values, and automatically creates ValueLabels for the appropriate axis. Using this behavior, it is therefore possible (and very convenient) to set the DataField properties for a ChartDataSeries to the string values directly and get the same results:

· Visual Basic

· C#

· Delphi


Mixing ChartDataArray Inputs

C1Chart allows some ChartDataArrays to be bound, and others to be set using the AutoEnumerate property of the ChartDataSeries, or by using the CopyDataIn() method of the ChartDataArray object. When data bound, the chart uses all of the bound data as its source of data for specified series data, and presents it in graphic form on the surface of the chart as directed by the series and other chart properties. When the AutoEnumerate property is set to True the x values of the ChartDataArrays/series will automatically set to their index value. While being able to set the data series to these different behaviors provides maximum flexibility, it also requires that excess default series are removed.

For example, the bar chart shown above contains only a single series(containing the number of ComponentOne products purchased by a company). So if data binding were used to provide input for C1Chart, then 3 of the 4 default chart series would need to be removed. Removing these series can be done at design time or runtime.


Setting the X and Y Data Arrrays Using PointF Values

For charts that only use the X and Y-axes (XY-Plot, Bar, etc), the PointData property can be a convenient shortcut. The PointData property of the ChartDataSeries object allows the entering of an array of PointF point values. This property is convenient for applications that use point data, but this array will only set the X and Y data arrays. This property cannot change the values in the data arrays for Y1, Y2, or Y3.

The following example builds a PointF array and loads it into a ChartDataSeries:

· Visual Basic

· C#

· Delphi


Functions for Plotting Data

C1Chart has a built-in engine for plotting functions. As there are various types of functions used for different applications. C1Chart provides the various types of functions needed to create many applications.

There are two types of supported functions:

One-variable explicit functions

· One-variable explicit functions are written as y=f(x) (see the YFunction class).

· A few examples include: rational, linear, polynomial, quadratic, logarithmic, and exponential functions.

· Commonly used by scientists and engineers, these functions can be used in many different types of finance, forecasts, performance measurement applications, etc.

Parametric functions

· The function is defined by a pair of equations, such as y=f1(t) and x=f2(t) where t is the variable/coordinate for functions f1 and f2.

· Parametric functions are a special type of function because the x and y coordinates are defined by individual functions of a separate variable.

· They are used to represent various situations in mathematics and engineering, from heat transfer, fluid mechanics, electromagnetic theory, planetary motion and aspects of the theory of relativity, to name a few.

· For more information about the parametric function (see the ParametricFunction class).

C1Chart includes a FunctionBase Collection Editor that can be accessed through C1Chart's properties at design-time. The FunctionBase Collection Editor consists of a windows form which conveniently allows the users to edit/create their functions. Using the editor, the user can add/remove one or many multiple functions, select what type of function (either a Y function or Parametric function), specify the code type and code language, just to name a few.


FunctionBase Collection Editor

The FunctionBase Collection Editor is used for adding or modifying functions for plotting data at design-time.

To Access the FunctionBase Collection Editor

· Expand the ChartGroups node in the .Net Properties Window. Click on the ellipsis button to open the ChartGroupsCollection Editor. Select Group1 in the left pane and expand the ChartData node. Click on the ellipsis button of the FunctionsList. The FunctionBase Collection Editor will appear.

· An alternate method to access the FunctionBase Collection Editor is to expand the ChartGroups node in the .Net Properties Window. Expand the Group0 node and then select the FunctionsList property and click on the ellipsis button. The FunctionBase Collection Editor will appear.

Base parts of the FunctionBase Collection Editor

Using a code string

Determining the Code Type for a Function

Calculating the Value for Functions


Base parts of the FunctionBase Collection Editor

This topic provides a visual tour of the FunctionBase Collection Editor.

The following properties are available for the user in the FunctionBase Collection Editor at design-time or they can be used in the FunctionBase class at run-time:

Code Properties of the FunctionBase Collection Editor

The code properties specify the type and language of the function's code as well as the multi-line presentation for the code. The code properties and their descriptions are listed below:

Property Name | Description
CodeErrors | Gets the string descriptions of any compiler errors.
CodeLanguage | Gets or sets the programming language used for compiling VB or C#. The user can specify which language by clicking on the drop-down button in the Code Language textbox and selecting the language.
CodeLines | Gets or sets the multi-line presentation of the function code. By clicking on the ellipsis button you can enter code into the listbox of the collection string editor.
CodeType | Gets or sets whether the code will be compiled as a formula, method, or as a full compile unit.
CodeValid | Gets whether the function compiles correctly.

Misc Properties of the FunctionBase Collection Editor

The miscellaneous property and their functions are listed below:

Property Name | Description
Label | Gets or sets the label of the function.
LegendEntry | Gets or sets whether the function will be shown in the legend.

Plot Properties of the FunctionBase Collection Editor

The plot properties are used to modify the style or functionality of the chart data series plots used in your function. The plot properties and their descriptions are listed below:

Property Name | Description
AutoMax | Gets or sets whether the maximum X value is calculated automatically.
AutoMin | Gets or sets whether the minimum X value is calculated automatically.
LineStyle | Gets or sets the line style used for plotting the function.
MaxX | Gets or sets the maximum X value of the plotted function.
MinY | Gets or sets the minimum X value of the plotted function.
PlotLinesMethod | Gets or sets the method used for plotting the function.
PlotNumPoints | Gets or sets the number of points used when plotting the function.
PlotOverData | Gets or sets whether the function is plotted over or behind the data series plots.
Visible | Gets or sets whether the function plot is visible.

Using a Code String to Calculate Y Functions and Parametric Functions are defined for C1Chart by providing either an interpretive string containing C# or VB source code, or by providing events, or by implementing a class which supports the C1.Win.C1Chart.ISimpleFunction interface.


Using a code string

When an interpretive code string is used to define a function of a function class (YFunction or ParametricFunction), the string is compiled and the resulting code is dynamically included into the application. Execution speed will be the same as any other compiled code.

This provides a number of advantages which among others include:

· Built-in functions of C# or VB can be used when defining the function

· Functions can be built by simple manipulation of strings.

· Functions are saved as part of the chart layout using the SaveChartToFile() or SaveChartToString() methods, and can be loaded directly into other projects as part of the data.

There are however, disadvantages as well, which among others include:

· time delay when first assigning or changing code text due to pre-compilation

· types of source code limited to C# or VB

For simple, one-variable explicit functions, the YFunction class object is used. This object has one code property, CodeText. For YFunction objects, the independent variable is always assumed to be “x”.

For parametric functions, a pair of equations must be defined using the ParametricFunction class object. This object has two properties, one for each coordinate. The properties, CodeTextX and CodeTextY accept code in which the independent variable is always assumed to be “t”.

For both class objects, the values of the independent variable are assumed to be uniformly distributed from the minimum to the maximum value of the independent variable, using the specified number of data points specified by the PlotNumPoints property.

Depending on complexity of function three types of code are supported for CodeText, CodeTextX and CodeTextY. The code types include Formula, Method and Unit, each of which is described in the immediately following sections.


Determining the Code Type for a Function

Formula

Method

Unit


Formula

For Formula code types, the CodeText property of a function class must contain code that calculates the value of a function using a parameter. The code should fit into a single line and represents the right hand side of an equation.

· Visual Basic

· C#

· Delphi


Method

For Method code types, the CodeText property of a function class must contain the body of a method that calculates the value of function and explicitly returns the value. The expected return value is of type Double. Note that VB syntax requires the inclusion of vbNewLines at the end of each statement in the code.

· Visual Basic

· C#

· Delphi


Unit

For Unit code types, the CodeText property of a function must contain the full compile unit text. The unit must include the class “Calculator” in the UserFunction namespace, and must implement the ISimpleFunction interface.

· Visual Basic

· C#

· Delphi


Calculating the Value for Functions

The following subtopics below explain how to calculate an appropriate function value using either the CalculateX and CalculateY events or the Calculate method of the ISimpleFunction interface.


Using Events to Calculate the Function Value for Yfunctions and Parametric Functions

Instead of adding source code to the CodeText, CodeTextX or CodeTextY properties, an event delegate can be used to specify a event method to calculate the appropriate function value.

When using event delegates, the function value is calculated in event CalculateY for the YFunction class objects. For ParametricFunction class objects, two events, CalculateX and CalculateY must be set, one for each calculated coordinate. Non-null event delegates indicate that the event should be used to calculate the corresponding function value, even if the corresponding CodeText property is also specified in either the YFunction or ParametricFunction class objects. In order to use events, the programmer must provide the appropriate event handlers.

· Visual Basic

· C#

· Delphi


Using the IsimpleFunction.Calculate Method to Calculate the Value for the Functions

As an alternative to the use of either a code string or events, the programmer may specify an instance of an object that implements C1.Win.C1Chart.ISimpleFunction interface. Such an object must inherit from the interface and implement a public function name, Calculate. The method, Calculate takes the independent variable (Double) as a parameter and returns the dependent variable (Double).

For the YFunction class objects, the CustomFunction property must be set to the ISimpleFunction implementation object. For the ParametricFunction class object, the CustomFunctionX and CustomFunctionY properties must be set to appropriate objects implementing the ISimpleFunction interface.

· Visual Basic

· C#

· Delphi


Using TrendLines

The trend lines supported by chart with TrendLine objects, can be divided into two groups, including regression and non-regression. Regression trend lines are polynomial, exponent, logarithmic, power and Fourier functions that approximate the data which the functions trend.

Creating TrendLines at Design Time

Creating TrendLines at Runtime

Regression TrendLines

Custom TrendLine


Creating TrendLines at Design Time

Navigate and expand appropriate ChartData object in the properties dialog and select the TrendsList property.

Next, press the ellipsis next to TrendsList and open the TrendLine collection editor. Using the collection editor, you may add, modify and remove trend lines.


Creating TrendLines at Runtime

Create instance of TrendLine object and set its properties. The TrendLine can be created using its constructor or AddNewTrendLine:TrendLinesCollection() method of TrendLinesCollection.

· Visual Basic

· C#

· Delphi

The graphic below illustrates an example of a trend line that connect the first and last data points


Regression TrendLines

For regression TrendLines there are specific two relevant class objects including RegressionOptions and RegressionStatistics. These objects describe the desired form of the trendline, and sum up the resulting trendline through statistics.


Regression options

The RegressionOption object allows specification of the regression model. The NumTerms property defines the number of coefficients to be used by a regression, and is relevant only for regressions with variable number of terms (polynomial and Fourier). For a polynomial regression, the number of terms is one more than the order of the resulting polynomial. The maximum number of terms for a polynomial is the number of data points, and the minimum number of terms is two (linear).

UseYIntercept property controls whether the first term of polynomial regression is fixed, when UseYIntercept is true the trend line intercept line x=0 at y-coordinate that is defined by Yintercept property.


Regression statistics

The RegressionStatistics property returns a RegressionStatistics object that contains the statistical results of regression model. When a trend line is not regressive or the solution of a regression does not exist for current data, the RegressionStatistics property returns Nothing (VB) or null (C#).


Statistics reference

Definitions:

n – number of points

nt = number of regression coefficients

- x values

- y values

- mean y value

- fitted y values

Name | Description | Formula | Formula(UseYIntercept=true)
Ssr | The sum of squares due to regression |  |
Sse | The sum of squares due to error |  |
Rsq | The coefficient of determination (R-squared) |  |
DF | The degrees of freedome |  |
F | The F-observed(F-statistic) value |  |


Custom TrendLine

To implement a custom trendline a class implementing ICustomTrendLine interface must be created. The instance of this class is assigned to CustomTrendLine:TrendLine property of a TrendLine object. In this case all points of trendline must be fully defined by the class and TrendLineType property setting is not relevant. The following sample code implements a custom TrendLine that corresponds data limits.

· Visual Basic

· C#

· Delphi


Using PointStyles

PointStyles provide a mechanism to mark specific data points with different visual attributes than other points of the same data series. PointStyles are contained by the PointStylesCollection. A PointStyle can be applied to an explicit data point that is selected by series and point indexes or to a data point that meets to specific conditions - e.g. x maximum of series, y maximum of all data, etc. The C1Chart programmer can also specify custom conditions using the Select event. A PointStyle contains the same set of visual properties as ChartDataSeries LineStyle, SymbolStyle and Offset. These properties describe the appearance of a data point that meets the PointStyle condition. A PointStyle can be shown as legend item.


Creating PointStyles at Design Time

Navigate and expand appropriate ChartData object in the properties dialog and select the PointStylesList property.

Next, press the ellipsis of the PointStylesList and open PointStyle Collection Editor. Using the collection editor you may add, modify and remove point styles.


Creating PointStyles At Runtime

The following code creates an instance of PointStyle object and sets its LineStyle and SymbolStyle properties:

· Visual Basic

· C#

· Delphi


Custom PointStyles

To define custom point style condition the user must set Selection property of PointStyle to PointStyleSelectionEnum.Custom and provide event handler for Select event. The following code defines a custom point style:

· Visual Basic

· C#

· Delphi


Customizing the ChartDataSeries

Showing or Excluding a Series

Excluding a Series from the Legend


Showing or Excluding a Series

Suppose there were hundreds of series that needed to be displayed in the chart. Since the chart can only be so large, the displayed series must be managed. The Display property of the ChartDataSeries provides this capability. The Display property accepts a SeriesDisplayEnum enumerated type. Setting this property to its different values allows a series to show, be hidden, or be excluded:

SeriesDisplayEnum.Show | The series is displayed in the ChartArea. This is the default setting.
SeriesDisplayEnum.Hide | The series is not displayed in the ChartArea, but the ChartArea (i.e. Max and Min) is not altered to account for the lost series.
SeriesDisplayEnum.Exclude | The series is not displayed in the ChartArea, but the ChartArea is altered to account for the lost series.
SeriesDisplayEnum.ExcludeHoles | The series is displayed, but the Data Hole values are ignored.


Excluding a Series from the Legend

At times it is convenient to plot shapes, lines and curves that do not represent data, but rather data regions of interest, or error bands, etc. In these instances, additional series may be added to the chart, but should be excluded from the legend. Each ChartDataSeries contains a boolean property called LegendEntry. If set to true, as it is by default, the series will be listed in the legend. If false, however, the series will be charted, but not listed in the legend.


Charting Irregular Data

Datasets, especially when they are dynamically created, can sometimes have irregular attributes that make it difficult for a charting control to handle. Thus, much time can be spent accounting for these inconsistencies before the data reaches the chart. Although C1Chart cannot modify these values automatically, it does accept irregular data and deals with it in a logical and consistent manner.

Irregular Stacked Chart Data

Irregular X-axis Data

Interpolating Y Value Data

Data Holes


Irregular Stacked Chart Data

Stacked charts are charts that have one or more series stacked upon a base series. All of the Y values for the chart are taken as distances from the previous series’ Y value. Stacked charts are a simple issue when data is loaded in an array format where the X values all match and all the series are stacked on top quite neatly.

C1Chart provides more freedom by allowing data to be in a General Layout. General Layout means that not all series must have identical X values. While this freedom allows for charting of more non-standard sets of data, it poses a problem when using stacked charts.


Irregular X-axis Data

Problems arise with the stacked chart if the first series in the data set does not contain points that match up to the Min and the Max points of the other series. If the first series of the chart does not contain the amount of X values as successive series, then these series no longer have a definite starting point as in the image below. C1Chart deals with this irregularity in a logical manner. The data where the Y values for the first series do not exist are taken to be 0. Then each successive series is added onto this creating a discontinuity, best demonstrated by the Stacked Area chart below.


Interpolating Y Value Data

Problems can also arise in a stacked chart if the X values of a successive series do not coincide with the first series. For instance, the first series of the chart could have x values at 2, 4, 6, and 8, while the second series has values at 3, 5, 7, and 9. A problem arises when the chart tries to discern where to place the first point of the second series. The point value that must be added to the Y value of the second series is somewhere between the first two points of the first series and is not explicitly part of the dataset.

Instead of not displaying the data set, C1Chart deals with this irregularity in a logical manner. It interpolates a virtual point in between the first and second point of the first series based on the slope of the line. This interpolated value is added to the second series’ Y value to find the new point for the stacked chart.


Data Holes

When gathered data is charted, it is sometimes necessary to visually provide an indication in the chart that data for a particular value is not available – i.e. indicate that information is missing. A Data Hole is a break in data that are being charted, and is used in the chart to visually indicate that data is missing. In C1Chart, holes are specified by setting the data point to be excluded to a specific, otherwise unused, value in the data arrays. The Hole property of the ChartData object specifies the value to be used. For instance, assuming that the Hole value is set to –1000, and that data is unavailable for the third point of a series, a break or a hole can be introduced into the series plot by setting the Y value of the series point to –1000. The default hole value is Single.MaxValue or float.MaxValue for Visual Basic and C#, respectively. Below is an example of a data hole in a X-Y Plot chart.


Ignoring Data Holes

When data is obtained in arrays of specific length, programming is often simplified when all the arrays can be handled uniformly, even if some of the data points are missing and it is not desired to indicate the missing data. In this case, Data Holes can still be used as values for the missing data and C1Chart can simply ignore them entirely, as if those data array elements containing the Data Hole did not exist at all.

The Display property of the ChartDataSeries sets the display properties for a series. This property accepts a SeriesDisplayEnum enumeration. If the Display property is set to SeriesDisplayEnum.Show, then the Data Hole will be excluded from the plot as in the image above. If this property is set to SeriesDisplayEnum.ExcludeHoles the series will be displayed, but the holes will be ignored. This means that if an XY-Plot is being displayed, the line will continue from the point previous to the Data Hole directly to the point after the Data Hole as in the image below. Notice that although the plot line continues past the Data Hole, the Data Hole point is not charted.

SeriesDisplayEnum.Show

SeriesDisplayEnum.ExcludeHoles


Data Binding

Data binding is a process that allows one or more data consumers to be connected to a data provider in a synchronized manner. If you edit a value that is part of a bound dataset, the C1Chart controls connected to the same data source will change to reflect the new value.

Unlike many bound controls, C1Chart does not make use of currency. When data bound, the chart uses all of the bound data as its source of data for specified series data, and presents it in graphic form on the surface of the chart as directed by the series and other chart properties.

This process requires several simple steps, but requires some knowledge of the chart object model.

First, it is necessary to create a data source. Many data sources are available, including ADO.Net data source objects such as DataTable, DataView, DataSet and DataViewManager. Also, third-party data sources, such as ComponentOne DataObjects components, including C1ExpressTable, C1ExpressVew, C1ExpressConnection, C1DataView, C1DataTableSource and C1DataSet may be used.

For details about creating ADO.Net data source objects, please refer to the .NET Framework documentation.

For details about using ComponentOne DataObjects, see the C1DataObjects documentation included in the ComponentOne Studio for .NET.

The following sections explain how to bind the data to the chart by first setting the data source and then setting the data fields.

Step 1: Setting the DataSource

Step 2: Setting the DataField

Binding the Chart Directly to the Data Source at Run-Time

Functional Program Using Data Binding


Step 1: Setting the DataSource

Once a valid data source has been created, set the C1Chart DataSource property. This can be done at design time or run-time. At design time, you can select the DataSource of the chart in the property sheet:

C1Chart offers two other way of setting its DataSource property using the Chart Wizard dialog.

To access Chart Wizard at design time:

· Right-click on the C1Chart control. Select Chart Wizard from the context menu.

The DataSource property can be set by using the Chart Properties dialog.

The Chart Properties dialog box can be accessed at design time by:

· Right-clicking on the C1Chart control and selecting Chart Properties from its context menu.

At run-time, the Chart DataSource property can be set to the data source object directly.

· Visual Basic

· C#

· Delphi


Step 2: Setting the DataField

Once the C1Chart DataSource has been set, it is necessary to tell C1Chart which columns in the dataset should be applied to each of the ChartDataSeries. In other words, it is necessary to specify which column of the data source should be used to specify the X values, which column specifies the Y values, and depending upon the ChartType, the columns used for Y1, Y2 and Y3 of each ChartDataSeries.

The set of X values, Y values, etc., are held by the ChartDataArray objects of each ChartDataSeries. These objects all have a DataField property which is used to specify the column of data in the data source that applies to the specific ChartDataArray. The DataField property may be set at either design time or runtime.

At design time, and using the Visual Studio .Net property sheet, navigate through the ChartGroups, Group0, ChartData, and SeriesList, and open the SeriesList by double-clicking on the ellipsis button. This opens the ChartDataSeries Collection Editor. Select the first series, and navigate the X property. The X property is a ChartDataArray object. Open the X property. By opening the dropdown, you can select any of the available columns in the data source.

The DataField can be set from both the C1Chart Wizard and C1Chart Properties dialogs as well. In the C1Chart Wizard dialog:

and in the C1Chart Properties dialog:

At runtime, the DataField property is available on each ChartDataArray object of each ChartDataSeries. Note that the DataField property is set to a string value which indicates the name of the data source column.

· Visual Basic

· C#

· Delphi

Please note the syntax of the string. In the above code sample, “QuickStop” is the TableName containing the column, and “ShippedDate” and “SaleAmount” are the column names. Whether or not the TableName appears in the string depends upon the data source itself. In the above case, a DataSet object with multiple tables is used as a data source, so the TableName is required. If a specific table in the DataSet object were used as the data source, then only the column names would be used.


Binding the Chart Directly to the Data Source at Run-Time

In most cases, data needs to be summarized before it can be charted, so there is a layer between the data source and the actual chart. In some cases, however, the data you want to plot may already be available in a DataView or similar data source object. In these cases, you can bind the chart directly to the data source object.

To bind a C1Chart control to a data source, you should start by setting the control's DataSource property to a data source object such as a DataView or DataTable. Then bind individual series to columns on the data source object using the DataSeries.X.DataField and DataSeries.Y.DataField properties.

You can do all this using the chart wizard, but if you prefer to do it in code here is a sample that illustrates the entire process:

· Visual Basic

· C#

· Delphi

The code retrieves the NWind "Products" table, then creates two data series, each bound to a column on the data source.

The most interesting part of the bound table is that it maintains a dynamic connection to the data source. Any changes applied to the data source, including value changes, filters, sorting, new or deleted records, etc, are automatically reflected on the chart.


Functional Program Using Data Binding

The following code, when added to a new project with the C1Chart control added to the form, demonstrates a fully functional program using data binding. Please note that it is also necessary to create and handle the Form_Load event. The database used in this sample is the NorthWind database supplied and used by Microsoft, as well as by ComponentOne Studio for .Net . If the file path does not match your installation, it will be necessary to change the database before execution.

The following sample manipulates the database and C1Chart entirely through code. However, using the Microsoft .Net IDE and its property sheet, the entire setup can be managed at design time. Please note that the use of two DataAdapters with TableMapping allows a single DataSet to be used as the DataSource, with two series charted from the same table.

· Visual Basic

· C#

· Delphi


Understanding the ChartArea Objects

This section details the important ChartArea objects individually and provides information on how to access, modify, and create the appearance for the properties in the ChartArea object.

The properties included in the ChartArea object are shown in the image below:


Using the Axis Properties in the ChartArea Object

The X, Y, and Y2 properties of the ChartArea object returns Axis objects that allow you to customize the appearance of the chart axes. The axes are represented by sub-properties of the ChartArea property: ChartArea.AxisX, ChartArea.AxisY, and ChartArea.AxisY2. Each of these properties returns an Axis object with the following main properties:


Axis Layout and Style properties

The following properties below represent the layout and style of the axes in C1Chart:

Alignment | Gets or sets the text alignment within the axis display. Inherits from the ChartArea.
Compass | Allows you to set the position of the axis. For example, you may want to display the X-axis above the data instead of below.
Font | Sets the font used to display the values along the axis.
ForeColor | Sets the color used to display the axis, tickmarks, and values.
OnTop | Gets or sets whether axis and gridlines appear on top of the chart image.
Reversed | Gets or sets whether the axis is normal or reversed (ascending or descending).
Text | Sets a string to display next to the axis (this is typically used to describe the variable and units being depicted by the axis).
Rotation | Sets the orientation of the Text string.


Using the Compass to Position Axis Annotation

Axis annotation typically appears beside its axis. This may be a problem on charts with an origin that is not at the axis minimum or maximum. The chart can automatically determine where to place annotation in different situations, depending on the chart type. The Compass property can also specify annotation placement for an axis. The Compass value for the X-axis can be set to either North or South, while the value for a Y-axis can be set to either East or West. By default, the X-axis is set to South and the Y-axis is set to West.


Changing Axis Appearance

Alignment

The Alignment property can be set to three different settings: Center, Near, or Far. Setting the alignment to center centers the axis title in comparison to the ChartArea. Setting the alignment to Near places the axis title to the left side of the ChartArea. Setting the alignment to Far places the axis title to the right side of the Chart Area.

Font

The Font size and style for the axis title can be changed by manipulating the Font object of the axis. To access the font properties at design-time click on the ellipsis next to the Font node or expand the Font node under the axis object in the Visual Studio Properties Window. To change the font properties in code manipulate the font object at run-time:

· Visual Basic

· C#

· Delphi

ForeColor

The ForeColor property changes the color of the axis line, tick marks, and title. To change the axis forecolor set the Forecolor:Axis property to a valid color in code, or the property can also be accessed at design-time under the Axis object in the Visual Studio Properties Window.

OnTop

The OnTop property specifies whether the axis grid lines and tick marks are drawn over the chart image or behind it. Setting this property to true will bring the grid lines and the tick marks to the foreground over the chart image, while setting it to false will bring the chart image to the foreground.


Titling Axes and Rotating Axis Elements

Adding a title to an axis clarifies what is charted along that axis. Axis titles can be added to Area, XY-Plot, Bar, HiLo, HiLoOpenClose or Candle charts. The title or the annotation along the axis can also be rotated, as shown below.

Adding an Axis Title

Use the axis Text:Title property to add a title to an axis. To remove the title, delete the text. The Text property is located on the ChartAxes Collection Editor.

Note: An axis title for the Y axis cannot be added to Polar, Radar or Filled Radar charts.

Rotating Axis Title

Use the axis Rotation property to rotate the axis title to either 90, 180, or 270 degrees. 90 and 270-degree rotations are most efficient for vertical axes.


Axis Annotation Properties

The annotation along each axis is an important part of any chart. The 2D chart annotates the axes with numbers based on the data entered into the ChartDataArray objects.

The chart automatically produces the most natural annotation possible, even as chart data changes. Annotation properties can be modified to perfect this process.

The following properties below represent the format for the annotation of the axes in C1Chart:

Property Name | Property Description
AnnoFormat | A set of predefined formats used to format the values displayed next to the axis.
AnnoFormatString | The .NET formatting string used to format the values displayed next to the axis when AnnoFormat is set to “NumericManual” or “DateManual”. If the AnnoFormat is set to either NumericManual or DateManual and the AnnoFormatString is empty, then the chart uses an algorithm to find the “best” formatting available.
AnnoMethod | Determines what values are displayed next to the axis. Options are “Values”, which displays the actual series values, or “ValueLabels”, which displays the elements in the ValueLabels collection.
ValueLabels | A collection of text/value pairs to display next to the axis when AnnoMethod is set to “ValueLabels”. This property is useful when you want to display strings along an axis instead of numeric values (for example, you may be charting product prices and want to display the product names along the X-axis).
AnnotationRotation | Allows you to rotate the values so they take up less space along the axis.

Values Annotation

ValueLabels Annotation

Mixed Annotation

Using the Axis AnnotationRotation Property


Values Annotation

Values Annotation is an implementation where the chart automatically generates numeric annotation based on the data itself. Values Annotation can be used for any axis, with any chart type, and with any data layout. It is controlled by the following properties of the axis:

Property Name | Property Description
AnnoFormat | Gets or sets the axis annotation format.
AnnoFormatString | Gets or set the annotation format string used with manual formats.

Setting the AnnoFormat property to one of the FormatEnum values will format the data entered into the array data into one of .Net’s twenty-two formats. Setting AnnoFormat to either FormatEnum.NumericManual or FormatEnum.DateManual allows a format string to be entered into the AnnoFormatString property. Manual format strings are designated in the .Net framework and below are links to more information:

DateTime Format Strings

The DateTime format strings are divided into two categories:

1. Standard Date Time Format Strings

2. Custom Date Time Format Strings

See also, DateTime format strings for more information.

Custom Numeric format strings

You can also customize your format strings by using the custom numeric format strings.

If AnnoFormat is set to FormatEnum.NumericManual and AnnoFormatString is empty, then the numeric values are formatted the same as FormatEnum.NumericGeneral.

If AnnoFormat is set to FormatEnum.DateManual and AnnoFormatString is empty, then the date and time values are formatted as appropriate for the time span of the axis as defined by the axis maximum and minimum values.

See also, Custom Numeric Format Strings for more information.


ValueLabels Annotation

A very flexible type of annotation, ValueLabels displays text defined at a specific axis coordinate. This annotation is useful in labeling only specific coordinates or when producing annotation in a form that the chart does not provide. ValueLabels annotation can be used for any axis, with any chart type, and with any data layout, with the exception of Pie charts.

If the AnnoMethod property is set to AnnotationMethod.ValueLabels the chart places labels at explicit locations along an axis. The ValueLabels property, which is a ValueLabels collection, supplies this list of strings and their locations. For example, the following code sets chart labels at the locations 1, 2 and 3:

· Visual Basic

· C#

· Delphi

ValueLabels can also be modified at design-time through the ValueLabel Collection Editor. To access the editor expand the X, Y, or Y2-axis node under the ChartArea property, then click on the ellipsis next to the ValueLabels property.

The following properties are available for the user in the ValueLabel Collection Editor at design-time or they can be used in the ValueLabel class at run-time:

Properties of the ValueLabel Collection Editor

The properties specify the label's text, appearance, and values. The value label's properties and their descriptions are listed below:

Property Name | Description
Text | Gets the string descriptions of any compiler errors.
Appearance | Gets or sets the appearance of ValueLabel.
BackColor | Get or sets the background color of ValueLabel.
Color | Gets or sets the color of the ValueLabel.
Gridline | Gets or sets a value indicating whether a grid line is drawn at the ValueLabel.
MarkerSize | Gets or sets the marker size of ValueLabel.
Moveable | Gets or sets a value indicating whether a ValueLabel can be dragged by the user.
DateTimeValue | Gets or sets the axis value to be replaced by the ValueLabel using a DateTime value.
NumericValue | Gets or sets the axis value to be replaced by the ValueLabel using a double value.

The chart below llustrates the Text, Appearance, BackColor, Color, MarkerSize, and Moveable properties from the ValueLabel class.

Notice that label's appearance for the numeric value's 1 and 2 are displayed as an arrow. You can set the appearance property for your label at design-time or run-time.

At design-time you can set the label's appearance property by selecting one of the following label types: Label, Triangle Marker, ArrowMarker, or CustomMarker in the ValueLabel Collection Editor. The appearance property of the label class gets the value of the ValueLabelAppearanceEnum. At run-time you can set the label's appearance property by using the following code:

· Visual Basic

· C#

· Delphi

Note: In the example above the text, vl, represents the variable name of the value label.

The MarkerSize property illustrated below shows how the markers appear when they are set to different sizes. By setting the Moveable property to true for each marker label, you can slide M1 and M2 along the x-axis. This is often useful as an input device for specifying axis values that affect charts with cartesian coordinates. The two grid lines associated with the ValueLabels below help serve as a visual aid for the two markers.

Individual members of the ValueLabels collection can be accessed in one of three ways: by typing in the ValueLabel index (0-based), by referencing the ValueLabel value to be replaced, or by referencing the ValueLabel text value. For instance, the following three lines of code all set the first member of the ValueLabels collection that has a Value of 1 to the text “one”:

· Visual Basic

· C#

· Delphi


Mixed Annotation

A very flexible type of annotation, Mixed includes automatic annotations and value labels. Each type of annotation will result in visible text defined at a specific axis coordinate. This annotation allows superposition of value and value labels.


Using the Axis AnnotationRotation Property

Use the axis AnnotationRotation property to rotate the axis annotation counterclockwise the specified number of degrees. This property is especially useful if the X-axis is crowded with annotation. Rotating the annotations +/- 30 – 60 degrees allows a much larger number of annotations in a confined space on horizontal axes. By utilizing the AnnotationRotation property, the X-axis annotation does not overlap, as shown below:


Axis Scaling, Tickmark, and Gridline properties

The following properties represent the scaling, tickmarks, and gridline styles and function for the axes in C1Chart:

AutoMajor, AutoMinor | Determine whether the spacing between the major and minor tickmarks should be calculated automatically.
AutoMin, AutoMax | Determine whether the minimum and maximum values for the axis should be calculated automatically.
AutoOrigin | Determines whether the X-axis should be automatically positioned with respect to the Y-axis.
Min, Max | Set the minimum and maximum values for the axis (when AutoMin and AutoMax are set to false).
UnitMajor, UnitMinor | Set the spacing between the major and minor tickmarks (when the AutoMajor and AutoMinor properties are set to false).
GridMajor, GridMinor | Returns a ChartGridStyle object with properties that control the appearance of the grid lines drawn perpendicular to major and minor tickmarks.
IsLogarithmic | Gets or sets whether the axis is scaled logarithmically.
Origin | Sets the position of the X-axis with respect to the Y-axis. The X-axis is usually placed at the bottom of the chart. This property allows you to place it so that it crosses the Y-axis at a given coordinate.
Reversed | Allows you to reverse the direction of the axis. For example, you can show Y values going down instead of up.

Axis Ticks and Ticking Increments

Setting Axis Bounds

Logarithmic Axes

Inverting and Reversing Chart Axes


Axis Ticks and Ticking Increments

The chart automatically sets up the axis with both major and minor ticks. Customizing the tick spacing or attributes is as easy as manipulating a set of properties.

The TickMajor and TickMinor properties set the state of the Axis’ tick marks. This property can be set to any of the TickMarksEnum values.

These values set where and if the tick marks will be displayed:

TickMarksEnum.None | No tick marks along axis.
TickMarksEnum.Cross | Tick marks cross over axis.
TickMarksEnum.Outside | Tick marks located outside chart area on axis.
TickMarksEnum.Inside | Tick marks located inside chart area on axis.

The AutoMajor and AutoMinor properties set whether the tick marks are to be automatically configured by the chart. When both these properties are set to true, the chart uses the current data to logically place the major and minor tick marks.

The UnitMajor and UnitMinor properties set the units by which the ticks will be spaced. When the UnitMajor property is set, the UnitMinor property is automatically set by the chart to half the UnitMajor value. Although the chart automatically sets the UnitMinor property, it also can be manually changed to a different value.


Setting Axis Bounds

Normally a graph displays all of the data it contains. However, a specific part of the chart can be displayed by fixing the axis bounds.

The chart determines the extent of each axis by considering the lowest and highest data value and the numbering increment. Setting the Min, Max, AutoMin, and AutoMax properties allows the customization of this process.

Axis Min and Max

Use the Min and Max properties to frame a chart at specific axis values. If the chart has X-axis values ranging from 0 to 100, then setting Min to 0 and Max to 10 will only display the values up to 10.

The chart can also calculate the Min and Max values automatically. If the AutoMax and AutoMin properties are set to True then the chart automatically formats the axis numbering to fit the current data set.

Note: The X-axis cannot be set for Polar charts.


Logarithmic Axes

When data is expected to vary exponentially, it is often convenient to use logarithmic scaling on one or more axes. Each axis can be set to scale logarithmically by setting the axis IsLogarithmic property to true.


Inverting and Reversing Chart Axes

When a data set contains X or Y values which span a large range, sometimes the normal chart setup does not display the information most effectively. Formatting a chart with a vertical Y-axis and axis annotation that begins at the minimum value can sometimes be more visually appealing if the chart could be inverted or the axes reversed. Therefore, C1Chart provides the Inverted property of the ChartArea and the Reversed property of the axis.

Setting the Inverted property of the ChartArea to True will invert the axes. This means that the X-axis will take the place of the Y-axis, and the Y-axis will take the place of the X-axis. Initially the chart is setup with the X-axis displayed horizontally and the Y-axis displayed vertically. This feature is commonly used in Bar Charts.

Note: An Inverted Bar Chart is a standard Bar Chart with the Inverted property set to True. Thus,Inverted Bar Charts do not have a special ChartType.

Setting the Reversed property of the ChartArea to true will reverse the axes. This means that the Max side of the axis will take the place of the Min side of the axis, and the Min side of the axis will take the place of the Max side of the axis. Initially, the chart displays the Minimum value on the left side of the X-axis, and on the bottom side of the Y-axis. Setting the Reversed property of the Axis, however will juxtapose these Maximum and Minimum values.


Using the PlotArea Properties in the ChartArea Object

The data is plotted in the plot area of the chart. In the PlotArea object you can customize or create styles for the PlotArea. For instance you can use the BackColor and BackColor2 to specify the back colors of the plot area. You can also set the ForeColor of the PlotArea by setting the ForeColor property.

The table below shows the Plot area's appearance properties and their functions:

Property Name | Function
AlarmZones | The AlarmZones property gets the AlarmZones Collection object associated with the current PlotArea object.
BackColor | Gets or sets the back color of the PlotArea. Inherits from the ChartArea.
BackColor2 | Gets or sets the second backcolor.
Boxed | Gets or sets whether the PlotArea is enclosed in a box.
ForeColor | Gets or sets the ForeColor of the plot area. Inherits from the ChartArea.
GradientStyle | Gets or sets the type of gradient background filling.
HatchStyle | Gets or sets the type of hatch background filling.
Opaque | Gets or sets whether the PlotArea background is opaque.
Size | Gets the size of the PlotArea in chart control client coordinates.
View3D | Gets the View3D object.
Visible | Gets or sets the PlotArea visibility.

C1Chart includes an AlarmZones Collection Editor that can be accessed through C1Chart's properties at design-time. The AlarmZones Collection Editor consists of a windows form which conveniently allows the users to edit/create AlarmZones. Using the editor, the user can add/remove one or many multiple alarm zones, and modify or set the properties for each alarm zone.


Alarm Zones Collection Editor

The Alarm Zones Collection Editor is used for adding or modifying alarms to the plot area at design-time.

To Access the Alarm Zones Collection Editor

· Expand the ChartArea node in the Properties Window, then expand the PlotArea node, and click on the ellipsis next to the AlarmZones property to bring up the AlarmZones Collection Editor.


Base parts of the AlarmZones Collection Editor

The following properties are available for the user in the AlarmZone Collection Editor at design-time or they can be used in the AlarmZone class at run-time:

Property Name | Description
BackColor | Gets or sets the background color of the AlarmZone. Inherits from PlotArea.
FarExtent | Gets or sets the far extent or the AlarmZone in the X-axis data coordinates.
ForeColor | Gets or sets the foreground color of the AlarmZone. Inherits from the PlotArea.
GroupIndex | Gets or sets the index of the data group of the AlarmZone.
LowerExtent | Gets or set the lower extent of the AlarmZone in the Y-axis data coordinates.
MinHeight | Gets or sets the AlarmZone minimum pixel height.
MinWidth | Gets or sets the AlarmZone minimum pixel width.
Name | Gets or sets the name of the AlarmZone. The name can be used for indexing or simple identification.
NearExtent | Gets or sets the near extent of the AlarmZone in the X-axis data coordinates.
PatternStyle | Gets or sets the pattern style to be used if PatternVisible is true. The PatternStyle is penned in the AlarmZone ForeColor.
PatternVisible | Gets or sets whether the specified PatternStyle should be used to brush the background of the AlarmZone.
Shape | Gets or sets the shape of the AlarmZone.
UpperExtent | Gets or sets the upper extent of the AlarmZone in the Y-axis data coordinates.
Visible | Gets or sets the visibility of the AlarmZone.

The next section explains what an alarm zone is and how it is used in a chart.


Alarm Zones

Alarm Zones are a series of bands or shapes that can be placed behind the plotted data, but in front of the chart background. Generally, Alarm Zones are used in much the same manner as grid lines, but the ability to modify the Alarm Zones allows them to be more useful and visually appealing. Also, Alarm Zones can be used to highlight important y-values in charts. For example, the chart below uses five different alarm zones (A, B, C, D, F) that represent the student's grades. Each Alarm Zone is shown in a different color to aviod confusion with the other Alarm Zones. Notice how the Alarm Zones help in showing the important y-values (in this case, the students accumulated points/grades).

By using the UpperExtent and LowerExtent properties, each Alarm Zone band can be adjusted to specific values. The graphic below displays an Alarm Zone band adjusted to a low y – value of 18.5 and a high y - value of 19.5 by using the LowerExtent and UpperExtent properties.

Note: Alarm Zones are most effectively used with XY-Plot, Bar, Stacking Bar and Candle charts.

You can specify the shape of your alarm zone by using the Shape property. You can set an Alarm Zone to an eliptical, rectangle, or polygon shape. The Shape property can be set at design time in the AlarmZone collection editor, or at run time. In code, you'll use the AlarmZoneShapeEnum property to get the eliptical, rectangle, or polygon shape. The code below creates a rectangular shape for the alarm zone.

· Visual Basic

· C#

· Delphi

The chart below illustrates several alarm zone properties. Notice how the text below states what alarm zone the cursor is pointing to. This technique can be achieved using the AlarmZoneAtCoord method. The AlarmZoneAtCoord method retrieves a reference to the foremost AlarmZone that lies under the specified coordinates. The array and DataSeries are two different source types used for the polygon data. In the chart below the green polygon uses the array source to get the polygon coordinates filled in by the user. The other polygon uses the DataSeries to get the specified series index from the user.

Alarm Zones support the following shapes: rectangle, elliptical, and polygon. When a polygon is used the data for the polygon can an be specified explicitly or by specifying a data series (XY Plots only). This allows for easy filling of specified areas under a curve, just like the polygon in the chart above.


Adding Alarm Zones

Adding an AlarmZone member to the AlarmZonesCollection in code adds an Alarm Zone to the chart:

· Visual Basic

· C#

· Delphi

AlarmZones can also be added at design-time through the AlarmZonesCollection Editor in the Visual Studio Properties Window.

To access the collection editor at design time:

· The ChartArea node in the Properties Window, then expand the PlotArea node, and click on the ellipsis next to the AlarmZones property to bring up the AlarmZones Collection Editor.


Configuring Alarm Zones

Alarm Zones have two basic sets of properties:

· The first set of properties determines the boundaries of the Alarm Zone in reference to the chart’s data values. Setting the NearExtent and FarExtent properties to values within the bounds of the X-axis sets the Left and Right boundaries of the AlarmZone. Conversely, setting the UpperExtent and LowerExtent properties to values within the bounds of the Y-axis sets the Upper and Lower boundaries of the Alarm Zone. For instance, to set the green AlarmZone in the above image the NearExtent would be 2.5, the FarExtent would be 4.5, the LowerExtent would be 8.0, and the UpperExtent would be 14.0.Notice that the names of these properties are UpperExtent, LowerExtent, NearExtent, and FarExtent rather than X, Y, Height, and Width. One important benefit to Alarm Zones is that they are not static, but actually tied to the chart’s data. This means that as the data changes, the Alarm Zones will change in relation to the data and not like one of the chart’s visual attributes. To prevent the AlarmZones from vanishing when the data changes you can set the MinHeight and MinWidth properties. Also, the MinHeight and MinWidth properties allows the placement of an AlarmZone with fixed dimensions.

· The second set of properties determines the style characteristics of the Alarm Zone. The Shape, BackColor and PatternStyle properties can be set for the Alarm Zone. You can choose from three different types of shapes for Alarm Zones: rectangle, ellipse, and polygon. If you create a polygon shaped alarm zone you need to specify the PolygonSource property from the AlarmZone Collection Editor at design-time or at run-time. Setting the ForeColor property sets the color of the pattern specified by the PatternStyle property.


Customizing Chart Elements

When the chart’s data and axes are formatted properly, its elements can be customized to make it look clearer and more professional. The following topics cover tasks that customize the appearance of a chart.

Adding Header and Footer Titles

Formatting the Legend

Setting Line and Symbol Styles for the Series

Using Borders

Choosing Fonts

Setting Colors

Positioning Chart Elements

Using ChartLabels

For Advanced Users


Adding Header and Footer Titles

A chart can have two titles, one called the Header and one called the Footer. A title consists of one or more lines of text with an optional border, both can be customized. Because each title can be positioned above, below, and to the right or left of the chart, it is not necessary to adhere to the traditional concept of Header and Footer at the top and bottom of an object. In addition, the text alignment, positioning, colors, and font used for the Header or Footer can be modified.

Title Text and Alignment

Title Positioning

Title Border

Title Colors

Title Font


Title Text and Alignment

Use the Text property of the Footer or Header object to add, change, or remove text for a title. Text is located in the property editor under corresponding title node (Footer or Header).

Use the HorizontalAlignment and VerticalAlignment of the Header or Footer’s Style property to specify whether to center, left-justify, or right-justify the title. These properties can be accessed at design-time through the Style node in either the Header or Footer node in the Visual Studio property editor.


Title Positioning

Use the Title’s Compass property to specify where to position the Titles relative to the ChartArea. Select from four compass points around the ChartArea.

Use the X and Y properties of the Location object to customize the location of the title. To restore location auto-selection set left or top to -1. These properties can be accessed at design-time through the Location node in either the Header or Footer node in the Visual Studio Properties Window.

Use the Width and Height properties of the Size object to customize the size of the title. To restore auto size selection set width or height to -1. These properties can be accessed at design-time through the Size node in either the Header or Footer node in the Visual Studio Properties Window.

See Positioning Chart Elements for more information.


Title Border

Use the Type and Width border properties to customize the title’s border. These properties can be accessed through the Style node in either the Header or Footer node in the Visual Studio property editor. See Using Borders for more information.


Title Colors

Use the ForeColor and BackColor properties to customize background and text colors of a title. These are located under Style node in either the Header or Footer node in the Visual Studio property editor. See Setting Colors for more information.


Title Font

Use the Font properties to customize the font used for a title. These are located on the Style node in either the Header or Footer node in the Visual Studio property editor. See Choosing Fonts for more information.


Formatting the Legend

The chart automatically generates a Legend whenever data exists in the chart. The chart assigns the name specified in the ChartDataSeries object for the series as the series identifier. The symbols that accompany the series name in the Legend are determined by the LineStyle and SymbolStyle for that series. The positioning, border, colors and font used for the Legend can be customized.

Legend Positioning

Legend Title

Legend Border

Legend Colors

Legend Font


Legend Positioning

Use the Compass property to specify where to position the Legend relative to the ChartArea. Select from four compass points around the ChartArea. Compass can be accessed at design-time under the Legend node of the Visual Studio Properties Window.

By default the chart automatically positions the legend. Use the X and Y Location properties to fine-tune the positioning. These properties can be accessed at design-time through the Location node that is under the Legend node of the Visual Studio Properties Window.

By default the chart automatically calculates size of the Legend. Use the Width and Height size properties to fine-tune the size of Legend. These properties can be accessed under the Size node that is under the Legend node of the Visual Studio Properties Window.

See Positioning Chart Elements for more information.


Legend Title

Use the Text property to specify the legend title. The legend title appears centered at the top of the Legend. The Text property can be accessed at design-time under the Legend node in the Visual Studio Properties Window.


Legend Border

Use the Type and Width border properties to customize the title’s border. These properties can be accessed at design-time under the Style node that is under the Legend node of the Visual Studio Properties Window. See Using Borders for more information.


Legend Colors

Use the BackColor and ForeColor properties to customize background and text colors of the Legend. These can be accessed at design-time through the Style node under the Legend node of the Visual Studio Properties Window. See Setting Colors for more information.


Legend Font

Use the Font properties to customize the font used for the Legend. These can be accessed at design-time through the Style node under the Legend node of the Visual Studio Properties Window. See Choosing Fonts for more information.


Setting Line and Symbol Styles for the Series

The LineStyle and SymbolStyle properties of the ChartDataSeries allow display aspects of each series to be perfected. Not limited to only the lines or symbols of a series line, these properties can change the color of a Pie chart slice, change the color of a Radar chart series, or set the width of a HiLo chart series.

The LineStyle property contains the Color, Pattern, and Thickness properties. Generally these properties set the color, pattern, and thickness attributes for a lines of a series.

The SymbolStyle property contains the Color, Pattern, and Thickness properties. Generally these properties set the color, patter, and thickness attributes for the symbols of a series.

Below is a table that lists how these two properties affect each chart type. Notice that for some chart types these properties have no effect, and for others these properties set the attributes for something other than a line or a symbol:

 | LineStyle Property | SymbolStyle Property
Chart2DTypeEnum.XYPlot | Changes Color, Thickness, and Pattern of the line that connects data points. | Changes Series Symbol Style.
Chart2DTypeEnum.Pie | Changes the BackColor of the series (piece). | No effect.
Chart2DTypeEnum.Bar | Changes the BackColor of the series. | No effect.
Chart2DTypeEnum.Area | Changes the BackColor of the series. | No effect.
Chart2DTypeEnum.Polar | Changes the BackColor, Pattern, and Thickness for Series Line. | Changes the Series Symbol Style, BackColor, and Thickness.
Chart2DTypeEnum.Radar | Changes the BackColor, Pattern, and Thickness for the Series Line. | Changes the Series Symbol Style, BackColor, and Thickness.
Chart2DTypeEnum.HiLo | Changes the BackColor, Style, and Thickness for the Series Line. | No effect.
Chart2DTypeEnum.HiLoOpenClose | Changes the BackColor, Style, and Thickness for the Series Line. | No effect.
Chart2DTypeEnum.Candle | Changes the BackColor for falling stock prices, and the thickness of the candle. | Changes the BackColor for rising stock prices and the thickness of the candle.

A more elaborate method of styling the plot involves the use of a brush instead of only color as specified by the LineStyle and SymbolStyle properties. A brush can provide a richer, more unique appearance than just color -- including hatching, gradients and textures. For more information about using brushes, see Using Custom Brushes for Plotting Data.


Setting Line FitType

For charts that contain plot lines (XY-Plot, Area, Polar, and Radar), the FitType property sets how the line fits to the points of the chart. The property takes a FitTypeEnum enumeration.

FitTypeEnum.Line

The Line fit is the default fit for the plot lines that is where the line travels directly from point to point. The Line fit is illustrated below.

FitTypeEnum.Spline

The Spline fit is where the line is curved to still pass through the plots, but provide a smooth curved plot line nonetheless. Those familiar with how curved lines are created in most drawing applications will likely be familiar with the Spline fit type.

FitTypeEnum.Beziers

The Beziers fit is where the line does not necessarily pass through all data points, but the points act as magnets, pulling the curve in certain directions and influencing the way the curve bends.


Using Borders

Adding a border to part of the chart can help highlight important information, or simply make the chart look more attractive. The border type and width of the following chart elements can be customized:

· Header and Footer titles;

· Legend;

· ChartArea;

· The entire chart.

Valid border types are shown below, though no border can also be specified:

To Change a Border

Use the border Type property to set the type of border and the Width property to set its thickness. These properties are located under the Style nodes, which can be found on the Control, ChartArea, Titles, Legend, and ChartLabels objects in the Visual Studio Properties Window.


Choosing Fonts

Charts can have more impact when fonts are customized for different chart elements. Font size can be adjusted to make an element better suit the overall size of the chart.

To Change Fonts

Use the standard .Net Font Property editor to set the font, style, and size attributes. Font properties are located under the Style nodes of the Visual Studio Properties Window.


Setting Colors

Color can powerfully enhance a chart’s visual impact. Colors can be customized using color names, RGB values, or interactively using a color chooser. Each of the following visual elements in the chart has a background and foreground color that can be customized:

· The entire chart

· Header and Footer titles

· Legend

· ChartArea

· Each ChartLabel added to the chart

Choosing Colors Interactively

Specifying RGB Colors

Using Transparent Colors

To Change a Color


Choosing Colors Interactively

Colors can be selected interactively using .Net’s color dialog that works like the standard Windows color dialog. Choose from Windows basic colors, custom colors, or interactively choose from a full color spectrum.


Specifying RGB Colors

Alternately, a color can be specified by its RGB components, useful for matching another RGB color. RGB color values combine hexadecimal values for the red, green, and blue components of a color. “00” is the smallest value a component can have; “ff” is the largest value. For example, “#ff00ff” specifies magenta (the maximum value of red and blue combined with no green).


Using Transparent Colors

The background and foreground of all elements except the chart itself can be “Transparent”.

When a background or foreground is transparent, the chart uses the color of the element outside it for the background. For example, the header would have the background of the chart itself when its background is set to Transparent.

In other words, if the background color of the element is transparent then its background is not drawn. If the foreground color of the element is transparent, then the foreground (for example the text of a title) is not drawn.

The transparent color options are on the Web tab of the .Net color dialog.


To Change a Color

Use the BackgroundColor and ForegroundColor properties to set background and foreground colors. These properties are located under the Style nodes, found at design-time on the Control, Header, Footer, Legend, ChartArea, and ChartLabels objects in the Visual Studio Properties Window.


Positioning Chart Elements

Each of the main chart elements (Header, Footer, Legend, ChartArea, and ChartLabels) has properties that control its position and size. While the chart can automatically control the positioning of any element except ChartLabels and the size of any element, these properties can also be customized.

When the chart controls positioning, it first allows space for the Header, Footer, and Legend, if they exist (size is determined by contents, border, and font). The ChartArea is sized and positioned to fit into the largest remaining rectangular area. Positioning adjusts when other chart properties change.


To Change or View Location

Use the X property of the Location to specify the number of pixels from the edge of the chart to the left edge of the chart element. Use the Y property of the Location to specify the number of pixels from the edge of the chart to the top of the chart element. Set X and Y to –1 to allow the chart to automatically position the element.

These properties are located on the Location node, found on the ChartArea, Titles, Legend, and ChartLabels nodes of the Visual Studio Properties Window.


To Change Width and Height

Use the Width and Height location properties to specify the width and height of the chart elements. Set these properties to –1 to allow the chart to automatically size the chart elements.

These properties are located and enabled at design-time under the Location nodes of the Visual Studio Properties Window.


Using ChartLabels

A ChartLabel is a label that displays in front of the chart data. The chart does not adjust to fit ChartLabels, since they are completely independent. ChartLabels are useful when highlighting an important data point, but can also be used generally to provide information on data or on the chart.

A Label object defines an independent rectangular region that can be attached to a chart. The LabelsCollection contains all of the chart labels defined for a particular chart.

The index number can be specified in the LabelsCollection in order to access a ChartLabel individually:

· Visual Basic

· C#

· Delphi

To create a Label object, call the AddNewLabel method:

· Visual Basic

· C#

· Delphi

There is no limit to the number of ChartLabels a chart can contain. Each ChartLabel has label, interior color, border and attachment attributes that can be customized.

Attaching and Positioning ChartLabels

Anchoring the Label

Customizing Chart Labels

Programming ChartLabels

Defining the ChartLabel

Attaching the ChartLabel

Setting a DefaultLabelStyle


Attaching and Positioning ChartLabels

When defining a ChartLabel, it is necessary to specify how to attach it to the chart and where to position it relative to its attachment point.

The attachment method chosen depends on what the ChartLabel is going to be used for. The attachment method takes an AttachMethodEnum value and the following illustrates these attachment methods:

· AttachMethodEnum.Coordinate attaches to anywhere on the chart. The number of pixels can be specified between the top-left corners of the chart to the ChartLabel.

· AttachMethodEnum.DataCoordinate attaches to anywhere inside the PlotArea. The data coordinates can be specified. This method is not allowed on Pie charts using PointLabels for the X-axis annotation. If any part of the ChartLabel falls outside of the ChartArea, it is clipped.

· AttachMethodEnum.DataIndex attaches to a specific data point on the chart. The series and point indices, and the ChartGroup can be specified.

· AttachMethodEnum.DataIndexY attaches to a distance above or below a specific data point. The series and point indices, the ChartGroup, and the Y-coordinate can be specified. This is most useful for Bar and Stacking Bar charts.

Use the AttachMethod property of the Label class to set the attachment method, and the properties of the AttachMethodData class to set the attachment point. These properties can be accessed at design-time under the ChartLabels node in the Visual Studio Properties Window.


Anchoring the Label

Once attached to a point on the chart, setting the Compass property sets the anchoring position for the ChartLabel. The property takes an enumeration of type LabelCompassEnum, and the following shows the valid anchoring positions:

The Compass property acts similarly on ChartLabels as it does other objects in .Net. The Label is placed away from the point according to the specified compass direction. The LabelCompassEnum.Radial setting generally applies only to Polar, Radar, and Pie charts. It places the Label out radially from the center of the chart. This can be a convenient feature if a chart, such as a Pie chart, has a multitude of labels to be shown. The LabelCompassEnum.Orthogonal setting places the Label perpendicularly from the path of the series line. For instance, if there was a straight horizontal line as the series plot, then the Orthogonal position would be exactly like the North Compass setting, likewise if there was a straight vertical line as the series plot, then the Orthogonal position would be exactly like the West Compass:Label setting.


Customizing Chart Labels

Rotating ChartLabels

Use the Rotation label property to set or change the rotation of a ChartLabel. Rotation is available at design-time under the Style node of the ChartLabels Collection Editor. This property can also be set in the DefaultLabelStyle node.

ChartLabel Border

Use the BorderStyle and Thickness border properties to customize the title’s ChartLabel. These properties are available at design-time under the Style node of the ChartLabels Collection Editor. This property can also be set in the DefaultLabelStyle node.

ChartLabel Colors

Use the .Net Color properties to set the font for the ChartLabels. The color properties are available at design-time under the Style node of the ChartLabels Collection Editor. See Setting Colors for more information. This property can also be set in the DefaultLabelStyle node.

ChartLabel Font

Use the font properties to customize the font used for a ChartLabel. These are available at design-time under the Style node of the ChartLabels Collection Editor. See Choosing Fonts for more information. This property can also be set in the DefaultLabelStyle node.


Programming ChartLabels

For more information, see Using ChartLabels.

A Label object defines an independent rectangular region that can be attached to a chart. The LabelsCollection contains all of the ChartLabels defined for a particular chart.


Defining the ChartLabel

The Label object provides a number of properties that help define and position the ChartLabel. The most important of these properties are:

· The Compass property specifies the positioning of the label around its anchor. For instance, setting the Compass property to East will place the label to the right of the anchor.

· The AttachMethod property specifies by which method the label will be attached to the chart. It can be attached by Coordinate, DataCoordinate, or by the data point.

· The Text property specifies the text to appear in the ChartLabel.

· The Connected property is a Boolean, which specifies whether a line is to be drawn from the chart label to its attached location. If True, the line is drawn.

· The Offset property specifies the distance, in the anchor direction, from the ChartLabel to its attached location, and is of type Long.

· The DefaultLabelStyle property sets a default style that all the labels will inherit from. For instance, if the BackColor of the default style is set to black, all future labels will have a black backcolor.


Attaching the ChartLabel

ChartLabels can be attached to a chart in one of four ways:

· To a pixel (x,y) coordinate

· To a data (x,y) coordinate in the ChartArea

· To a (series, point) in the ChartArea

· To a (series, point, Y value) in the ChartArea

By Pixel Coordinate

By Data Coordinate

By Data Point

By Data Point and Y Value


By Pixel Coordinate

To attach a ChartLabel to a pixel coordinate, set the AttachMethod property to AttachMethodEnum.Coordinate, and then under the AttachMethodData object set the X and the Y properties to the coordinates at which the ChartLabel is to be attached. For example, the following attaches a ChartLabel to the coordinates specified:

· Visual Basic

· C#

· Delphi


By Data Coordinate

To attach a ChartLabel to a data coordinate on the chart, set the AttachMethod property to AttachMethodEnum.DataCoordinate, and then under the AttachMethodData object set the X and Y properties to the data coordinates at which the ChartLabel is to be attached. For example, the following attaches a ChartLabel to the data coordinate (1.1, 15.8):

· Visual Basic

· C#

· Delphi

ChartLabels can only be attached to a data coordinate if the chart is an Area or XY-Plot. Any part of the ChartLabel that falls outside of the ChartArea is clipped.


By Data Point

To attach a ChartLabel to a data point, set the AttachMethod property to AttachMethodEnum.DataIndex, and then under the AttachMethodData object set the GroupIndex, SeriesIndex, and PointIndex properties. These properties specify the ChartGroup, Series, and Point indices. For example, the following attaches a ChartLabel to the second point in the first data series:

· Visual Basic

· C#

· Delphi


By Data Point and Y Value

The above two methods can be combined so that a ChartLabel is attached to a location whose X-coordinate is specified by a data point and whose Y-coordinate is specified by a chart value. To do this, set the AttachMethod property to AttachMethodEnum.DataIndexY, and then under the AttachMethodData object set the GroupIndex, SeriesIndex, PointIndex, and Y properties as in the following example:

· Visual Basic

· C#

· Delphi

In this example, the ChartLabel location is specified as follows:

· The X-coordinate of the second point in the first data series becomes the X-coordinate of the chart label.

· The Y-coordinate specified by the Y property becomes the Y-coordinate of the chart label.

This method is not supported in Pie charts.


Setting a DefaultLabelStyle

The DefaultLabelStyle property of the ChartLabels object sets a default style for all current and future ChartLabels. This property can be useful in many ways, but two are outlined here.

First, this property sets default style properties that all future Labels will inherit. Secondly, since all labels inherit this default style, if a default style property is changed, all of the ChartLabels will then take on this attribute. For instance, suppose 100 ChartLabels created at design-time should have had green as the BackColor, the following code could be inserted into the application:

· Visual Basic

· C#

· Delphi

If style attributes for individual ChartLabels have to be changed, then these attributes can be set on the specific ChartLabel object manually.


For Advanced Users

Using Custom Brushes for Plotting Data

Creating Hatched Brush

Creating Gradient Brush


Using Custom Brushes for Plotting Data

Whenever a data series is plotted, the DrawDataSeries event of C1Chart fires. This event allows defining the selection of a custom brush during plotting. The event sender object is the C1Chart.ChartDataSeries to be plotted. The event data (DrawDataSeriesEventArgs) have the following properties:

· The Brush property defines the brush that will be used for rendering the data series. You should create your own brush and assign it to this property if want use to a custom brush.

· The DisposeBrush is Boolean value that specifies whether the brush should be disposed after using. If DisposeBrush is set to False then you must dispose the brush yourself.

· The GroupIndex property defines index of chart group.

· The SeriesIndex property defines index of chart group.

· The Bounds property represents rectangle area in which data will be plotted. This rectangle will be useful when creating gradient brushes.


Creating Hatched Brush

The following sample code represents the handler that creates hatched brush.

Please note that the given code snippet shows the initial declarations of some objects using their full namespace. In subsequent use of those and related objects, the namespace is omitted for brevity.

· Visual Basic

· C#

· Delphi


Creating Gradient Brush

The following sample code represents the handler that creates linear gradient brush.

Please note that the given code snippet shows the initial declarations of some objects using their full namespace. In subsequent use of those and related objects, the namespace is omitted for brevity.

· Visual Basic

· C#

· Delphi


Loading and Saving Charts, Data, and Images

In C1Chart each chart can be loaded from and saved to an external XML file. In addition, the chart can be saved to any number of image files, which allows more flexibility in archiving, accessing data, and creating images of the chart.

There are two different methods that can be used to save the chart to an XML file by either saving chart’s formatting or by saving the chart’s data. When the entire chart is saved, all of the formatting of the axis, the titles, and the chart area is saved to an XML file. When only the chart’s data is saved, the external file is smaller in size, but when this file is loaded back into the chart, only the data will be restored.


Loading and Saving to a String

In addition to loading and saving to an XML file, the chart has the ability to save to a string value. This string can then be saved in an application and retrieved at a future time.

The SaveChartToString and LoadChartFromString methods allow the saving of a copy of the chart to a string value in the application. This string value contains all the set properties, methods, and events for the chart, in essence, its formatting. The chart can save to this file, and then if the structure remains intact, load a chart from this file.

To save the chart to a string at run-time, call the SaveChartToString method, which takes no parameters and returns the string value:

· Visual Basic

· C#

· Delphi

To load the chart from a string value at run-time, call the LoadChartFromString method, which takes the saved chart string as its only parameter:

· Visual Basic

· C#

· Delphi


Loading and Saving Chart Data

To save the chart’s data to XML at design-time, right-click on the chart control. This will bring up the chart’s context menu. Conveniently provided on the context menu are the SaveDataToFile and LoadDataFromFile methods of the ChartData object.

To save just the chart’s data to XML, call the SaveDataToFile method, which takes the file’s path as a parameter:

· Visual Basic

· C#

· Delphi

To load the chart’s data back from XML, call the LoadDataFromFile method, which takes the file’s path as a parameter:

· Visual Basic

· C#

· Delphi

An in-depth discussion of the structure of the XML file is not covered here, but the file can be opened as a text file and easily dissected.


Saving Chart Images

The C1Chart provides the ability to save the current chart as an image. By calling the SaveImage method, all of the items within the chart bounds can be saved to the clipboard, a byte array, a stream, or to an image file.

The SaveImage method can save to four different output types by using one of eight different overloaded parameter sets. For each output type, there is an option to save the chart image as it appears on the screen, or to save the chart image as a specified size.

To save the chart image to the clipboard, simply specify an image format, the size parameter is not specified here:

· Visual Basic

· C#

· Delphi

To save the chart image to an image file, simply specify the pathname for the new image and an image format, the size parameter is not specified here:

· Visual Basic

· C#

· Delphi

To save the chart image to a stream, simply specify the stream object and an image format, the size parameter is not specified here:

· Visual Basic

· C#

· Delphi

To save the chart image as a byte array, simply specify the byte array, and an image format, the size parameter is not specified here:

· Visual Basic

· C#

· Delphi

See also, ImageFormat for more information.


Chart Interaction

There are many operations that can be performed on the chart which are not covered in this documentation. Each user of the chart component has different requirements for functionality and features. One way in which to accommodate the many requests for functionality is to provide a set of tools to create functionality not currently in the component.

In C1Chart there is a set of tools provided which help customize and further develop applications. Chart conversion methods allow the handling of instances where the end user’s cursor travels over the chart and performs an action. The first set of methods return associated chart areas from specified pixel coordinates, and a second set of methods return chart data points and coordinates from specified pixel coordinates.

Coordinate Conversion Methods

Determining Chart Areas from Pixel Coordinates

Determining Data Points or Coordinates from Pixel Coordinates

Converting from Chart Coordinate Values

Converting To Chart Coordinate Values

Rotating, Scaling, Translating and Zooming


Coordinate Conversion Methods

Events such as the MouseMove event report coordinate values and provide pixel coordinates from the chart area. This is useful to a degree, but it does not report to the application anything about the underlying data coordinates, data points, or chart areas. The coordinate conversion methods of the chart help to provide this information from the pixel coordinates alone. When used in conjunction with .Net’s MouseMove event these tools allow for creation of interesting application-specific features like handling a double-click in the Legend and chart Tooltips.


Determining Chart Areas from Pixel Coordinates

The MouseMove event of .Net reports the coordinates of the user’s cursor as it is dragged over the chart to get constantly updating data on where the user’s cursor is located.


SeriesFromCoord

In the C1Chart Legend, series are represented by the series name and a symbol containing a sample of the SymbolStyle or LineStyle. The SeriesFromCoord method of the Legend returns the nearest associated series from a pixel coordinate value located in the legend. For instance, suppose that the user clicks on the symbol for the first series in the Legend, the pixel coordinates of the user’s mouse at this moment when input into the SeriesFromCoord method would return group and series values for in the Group and Series parameters. The following is an example of this:

· Visual Basic

· C#

· Delphi


Determining Data Points or Coordinates from Pixel Coordinates

C1Chart also allows conversion of pixel coordinate values into their associated Data Coordinate or Data Index and vice versa. The CoordToDataCoord, CoordToDataIndex, DataCoordToCoord, and DataIndexToCoord are methods which convert pixel coordinates into these values and vice versa. The below graphic illustrates which areas of C1Chart is governed by the pixel coordinates, and which area is governed by the data coordinates (PlotArea):


Converting from Chart Coordinate Values

The two methods that convert pixel coordinate values into chart data coordinates and data indices are the CoordToDataCoord and CoordToDataIndex methods of the ChartGroup object. Both of these methods take a coordinate value, presumably from a MouseMove event, and return a PlotArea coordinate or the nearest data point.

The CoordtoDataCoord method takes four parameters. The first two parameters (e.X and e.Y in the example below) are the pixel coordinates from the MouseMove event. The second two parameters are integer values that the method will fill with the X and Y Data Coordinate data. Following is an example of this method in the MouseMove event:

· Visual Basic

· C#

· Delphi

The CoordToDataIndex method takes six parameters. The first two parameters (e.X and e.Y in the example below) are the pixel coordinates from the MouseMove Event. The third parameter is a CoordinateFocusEnum value. This is an enumeration that specifies which axis to focus on when determining which data point is closer and its distance from the pixel coordinate. For instance, if X is selected as the focus, then it will return the nearest point that has the closest X-coordinate, regardless of the value of the Y-coordinate. The fourth and fifth parameters are integer values that the method will fill with the appropriate Series and Point indices. The sixth parameter is an integer value that the method fills with the distance from the pixel coordinate specified to the data point in pixels. Following is an example of this method in the MouseMove event:

· Visual Basic

· C#

· Delphi


Converting To Chart Coordinate Values

The two methods that convert either data coordinates or data indices into pixel coordinates are the DataIndexToCoord and DataCoordToCoord methods of the ChartGroup object. The DataIndexToCoord method takes a series and point index and returns the associated pixel coordinate. The DataCoordToCoord method takes a set of data coordinates and returns a pixel coordinate. These methods are quite similar to the other conversion methods.

The DataIndexToCoord method takes four parameters, and returns a pixel coordinate as seen in the following example:

· Visual Basic

· C#

· Delphi

The DataCoordToCoord method takes four parameters, and returns a pixel coordinate as seen in the following example:

· Visual Basic

· C#

· Delphi


Rotating, Scaling, Translating and Zooming

C1Chart contains built in tools that simplify the implementation of interactive behaviors for the end user. The end user can explore, rotate and zoom chart using combinations of mouse and shift keys.


Customizing Actions

C1Chart contains built in tools that simplify the implementation of interactive behaviors for the end user. The end user can explore, rotate and zoom chart using combinations of mouse and shift keys.

The control center for interactive features is Interaction property of C1Chart. The Interaction object has a number of properties that allow customization of the interface. All of the properties can be set or changed at both design-time and runtime.

· The IsDefault property is Boolean value that indicates whether the action settings are default. To restore defaults, set the IsDefault property to true.

· The Enabled property switches on/off interaction. Note that by default interaction is disabled.

· The Actions property contains a collection of actions that are available for chart.

The supported actions include:

· "Rotate" action allows changing viewing angle. This action is available only for chart with 3D effects.

· "Scale" action increases or decreases the scale of chart along the selected axis or axes.

· "Translate" action provides the opportunity to scroll through plot area.

· "Zoom" action allows the user to select rectangular area for viewing.

The scaling, translation and zooming are available only for chart with Cartesian axes.

Each Action object provides set of properties that help to customize behavior of action.

· The Axis property specifies what axis will be involved. It is possible to use only one axis for the action. For example, scaling or translation can be applied in horizontal (x-axis) or vertical (y-axis) direction.

· The MouseButton and Modifier properties specify the mouse button and key (ALT, CONTROL or SHIFT) combination that will invoke the execution of the action.


Using Properties

1. In the Properties dialog, expand the Interaction node.

2. Press the ellipsis next to Actions to display the Action collection editor.

3. Modify properties as desired.


Controlling Transformation

The transformations applied to the chart can be tuned by using Transform event of C1Chart. When scaling, rotating or zooming occurs, the Transform event fires. Adding handler to this event allows adjusting limits of axes or to cancel the action.

The following example limits the range of x-axis from -10 to 10 by canceling action when axis minimum or maximum is beyond the range.

· Visual Basic

· C#

· Delphi


C1Chart Samples

Please be advised that this ComponentOne software title is accompanied by various sample projects and/or demos, which may or not make use of other ComponentOne development tools. While the sample projects and/or demos included with the software are used to demonstrate and highlight the product’s features, and how the control may be integrated with the rest of the ComponentOne product line, some of the controls used in the demo/sample project may not be included with the purchase of certain individual products.

The ComponentOne Samples are also available at http://helpcentral.componentone.com/ProductResources.aspx.


Visual Basic and C# Samples

Alarmz

Shows a 2D Scatter chart with AlarmZones. This sample uses the C1Chart control.

AlarmZoneShapes

Shows a an XY chart with various styles of AlarmZones.The sample creates a default XY chart with various types of AlarmZones include rectangles, ellipse and polygons. Also included in the use ValueLabels in Mixed mode, and marker characteristics.

AutoArrangement

Shows an XY plot with labels that can be automatically arranged without collision.The sample creates an XY plot and demonstrates automatic placement of chart labels that avoid label overlap.

Box

Shows a Box-and-Whisker chart. This sample uses the C1Chart control.

Bubbles

Shows a Bubble chart. This sample uses the C1Chart control.

CandyBox

Shows an Area chart and plays a game. This sample uses the C1Chart control.

Chlabels

Shows a horizontal bar chart with mouse tracking. This sample uses the C1Chart control.

ChartLoader

Shows various load and save operations for both 2D and 3D charts using XML and allows editing using the Chart Properties Dialog, the Chart Wizard Dialog, or a basic Property Grid. After editing, the chart can be saved as XML to files or clipboard, or chart images can be generated and saved.

This sample is also a useful utility for manipulating chart XML files at runtime and storing the chart state.

CpuUsage

Shows CPU usage and history. This sample uses the C1Chart control.

CustomBrushes

Shows charts using custom brushes and textures for lines and fill. This sample uses the C1Chart control.

CustomDraw

The sample creates a 2D XYPlot with a single series in the form of a spiral. By using the ChartDataSeries Draw event, the spiral is draw using two colors. Extreme customizations of a series can be performed using this event.

DataBoundChart

Shows a 2D Horizontal Bar Chart using data from a database. This sample uses the C1Chart control.

DataChart

Shows a 2D Horizontal Bar Chart using data from a database. This sample uses the C1Chart control.

DataStyl

Shows various 2D charts and allows interactive variance of style. This sample uses the C1Chart control.

Demo2D

Explores all 2D chart types and their properties. This sample uses the C1Chart control.

DiskSpace

Shows disk space usage with pie charts and effects. This sample uses the C1Chart control.

Donut

Shows a doughnut chart with various functions, including alpha-blending, tooltips and series highlighting.The sample creates a doughnut chart and demonstrates the use of tooltips, and series highlighting. A doughnut chart is simply a pie chart with an inner radius specifying the hole size. This sample uses the C1Chart control.

ErrorBar

Shows an XY Plot with error bars. This sample uses the C1Chart control.

FExplorer

Creates and plots different groups of explicit and parametric functions. This sample uses the C1Chart control.

FloatBar

Shows a floating bar chart. This sample uses the C1Chart control.

Function2d

Shows XYPlot and Polar charts of specified functions. This sample uses the C1Chart control.

HLCandle

Show various price/stock charts. This sample uses the C1Chart control.

Histogram

Shows a histogram chart giving the distribution of distances of each point in a 2D scatter chart from a specified location. The sample creates a 2D scatter chart with random data, and in a second ChartGroup, develops a histogram based on the distances from each of the data points to a set of crosshairs. The crosshairs are generated using moveable ValueLabels with markers (arrows) and gridlines. This sample uses the C1Chart control.

HistTemp

Shows how to generate histogram data using one of the C1Chart GenerateHistogramData method overloads and displaying that data in a bar chart. The sample creates an XY plot of seasonal average mean temperatures in Kansas City, Mo., USA. In a second chart, a bar chart containing histogram data is generated showing the distribution of the difference from average mean temperatures through the years. Statistics are calculated by the chart for each data series and presented in an accompanying text box.

Interview

Shows a radar chart with various effects. This sample uses the C1Chart control.

Multi

Show multiple concurrent charts and print techniques. This sample uses the C1Chart control.

PieStuff

Show a pie chart with labels and effects. This sample uses the C1Chart control.

PointStyles

Creates point style with different options and applies it to bar and scatter chart data points. This sample uses the C1Chart control.

PrintIt2D

Loads both 2D and 3D persisted from and generates images or prints them. This sample uses the C1Chart and C1Chart3D controls.

Radar

Shows a radar chart and demonstrates stacked and filled radar options. This sample uses the C1Chart control.

RtfTitle

The sample creates a simple 2D XYPlot, and adds headers and footers with RFT formatting. A simple RTF editor using a RichTextBox control is part of the sample to allow modifications of the header and footer.

Scatter

Shows a scatter chart and demonstrates mouse tracking with a game. This sample uses the C1Chart control.

SelectSeries

The sample creates an inverted XYPlot with multiple series and an axis scrollbar resulting in a strip chart like appearance and function. Individual series can be selected with a mouse-click and the selected series is highlighted.

StepChart

Shows a step chart, both 2D with symbols, and with 3D effects. The sample creates a step chart and demonstrates the use of tooltips, and the effects of change 3D elevations and rotations for step charts with 3D effects. Mouse tracking for the step chart is also demonstrated.

StockChart

Shows a basic hi-lo-open-close stock chart with volumes. This sample uses the C1Chart2D control.

ToolTip

The sample creates a 2D XYPlot chart and demonstrates the use of the chart tooltip functions, properties and events.

TrendAndError

The sample creates two charts; the top chart represents random data with polynomial trend line. The bottom chart shows regression errors for each point on the first chart. This sample uses the C1Chart control.

TrendLines

Creates pseudo-random data using various models and plots it with different types of trend lines. This sample uses the C1Chart control.


C1Chart Task-Based Help

Creating Specific Chart Types

Using 2D Chart Properties

Using the ChartDataSeries Collection Editor

2D Chart Frequently Asked Questions


Creating Specific Chart Types

There are many different types of charts that you can create with C1Chart. Most of them are basic and can be created using the wizard or chart properties. This section will list the many types of charts and what properties you can set to achieve the resulting chart. To find out more details about the specific chart type, click on the chart image. The chart type will be displayed with more details about each of the chart properties.

Line Charts

Scatter Plot Charts

Bar Charts

Area Charts

Pie Charts

Stock Charts

Polar / Radar Charts


Line Charts

There are six line chart sub-types included in the line chart type, which follow:

X-Y Axis Line Chart | Stacked X-Y Axis Line Chart
X-Y Axis Line Chart Using Symbols | Stacked X-Y Axis Line Chart Using Symbols
3D X-Y Axis Line Chart | Stacked 3D X-Y Axis Line Chart

X-Y Axis Line Chart

Stacked X-Y Axis Line Chart

X-Y Axis Line Chart Using Symbols

Stacked X-Y Axis Line Chart Using Symbols

3D X-Y Axis Line Chart

Stacked 3D X-Y Axis Line Chart


X-Y Axis Line Chart

Demonstrates a standard line chart with a basic X-Y axis. X-Y charts represent connected points of data. To create a simple X-Y line chart, the following properties can be set under the ChartGroup Class:

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked X-Y Axis Line Chart

Demonstrates a stacked line chart. Stacking charts represent the data by stacking the values for each series on top of the values from the previous series. This is easy to do by setting the following properties under ChartGroup class:

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend,Visible property is also set to false, which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


X-Y Axis Line Chart Using Symbols

Demonstrates a line chart using symbols. The only difference between this type of chart and the standard line charts is that the data displays using symbols to represent certain points on the chart. The following properties are used to create a standard line chart.

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

For more information on how to add symbols, see Using the ChartDataSeries Collection Editor.


Stacked X-Y Axis Line Chart Using Symbols

Demonstrates a stacked line chart using symbols. To create a basic stacked X-Y axis line chart with symbols, set these following properties:

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend,Visible property is also set to false, which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

For more information on how to add symbols to your chart, see Using the ChartDataSeries Collection Editor.


3D X-Y Axis Line Chart

Demonstrates a basic 3D line chart. This chart type uses the basic settings for a standard line chart, however, the Use3D property changes to True. Here are the property settings for a 3D line chart:

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend,Visible property is also set to false, which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each segment of the 3D line or ribbon is outlined in the PlotArea ForeColor, adding indications of data point positions and perspective.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked 3D X-Y Axis Line Chart

Demonstrates a stacked 3D line chart. To create a basic stacked 3D X-Y axis line chart, set these following properties:

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend,Visible property is also set to false, which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each segment of the 3D line or ribbon is outlined in the PlotArea ForeColor, adding indications of data point positions and perspective.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Scatter Plot Charts

The Scatter Plot has seven sub-types to choose from when selecting the type of chart. Choose sub-type 6 or sub-type 7 if a Bubble Chart is desired.

X-Y Axis Scatter Chart Using Symbols | X-Y Axis Scatter Chart Using Smooth Lines
X-Y Axis Scatter Chart Using Lines | X-Y Axis Scatter Chart Using Smooth Lines and Symbols
X-Y Axis Scatter Chart Using Lines and Symbols | Bubble Chart
Bubble Chart with Lines |

X-Y Axis Scatter Chart Using Symbols

X-Y Axis Scatter Chart Using Lines

X-Y Axis Scatter Chart Using Lines and Symbols

X-Y Axis Scatter Chart Using Smooth Lines

X-Y Axis Scatter Chart Using Smooth Lines and Symbols

Bubble Chart

Bubble Chart with Lines


X-Y Axis Scatter Chart Using Symbols

Demonstrates a standard scatter chart. The properties for the standard scatter plot have the same settings for the line chart.

ChartType | Controls the style of the chart. Set this property to XYPlot to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

The only difference is that the LineStyle property is set to none in the SeriesList Property of the ChartData class. You can remove the linestyles either by code or by Using the ChartDataSeries Collection Editor. To do this, set the LineStyle Property equal to None.


X-Y Axis Scatter Chart Using Lines

Demonstrates a basic scatter chart using lines. This chart is identical to the standard line chart. For more information on the property settings for this chart, see X-Y Axis Line Chart.


X-Y Axis Scatter Chart Using Lines and Symbols

Demonstrates a basic scatter chart using lines and symbols. This chart is identical to the standard line chart using lines and symbols. For more information on the property settings for this chart type, see X-Y Axis Line Chart Using Symbols.


X-Y Axis Scatter Chart Using Smooth Lines

Demonstrates a scatter chart using smooth lines. To create a basic scatter chart using smooth lines, use the same property settings as the standard line chart. For more information on these properties, see X-Y Axis Line Chart. For each series, set the FitType Property from the ChartDataSeries Class to Spline. You can also specify this in the ChartDataSeries Collection Editor. See the following image for an example:


X-Y Axis Scatter Chart Using Smooth Lines and Symbols

Demonstrates a scatter chart using smooth lines and symbols. To create a basic scatter chart using smooth lines and symbols, use the same property settings as the X-Y Axis Scatter Chart Using Smooth Lines. In addition, data displays using symbols to represent certain points on the chart. See Using the ChartDataSeries Collection Editor for how to add symbols to your chart.


Bubble Chart

To create a basic bubble chart, several things will need to be specified. The X-axis and y-axis settings display the location of the bubble on the chart. In addition to these, a y1-axis will also need to be specified. The y1-axis determines the size of the bubble. Set the following properties to create a bubble chart:

ChartType | Controls the style of the chart. Set this property to Bubble to create a bubble chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

In addition to these general properties, these properties from the ChartDataSeries Class.

LineStyle | Controls the line style of the series, including color, thickness and pattern. Set the Pattern property to none.
SymbolStyle | Controls the symbol style of the series, include color, size and shape. In this example, set the Shape, Color, and Size properties to the desired settings for your data series.


Bubble Chart with Lines

Demonstrates a standard bubble chart with lines. To create a chart of this type, use the same settings as the simple bubble chart. See Bubble Chart for more information. The only difference with this chart is you will need to change the following property in the ChartDataSeries class:

LineStyle

Controls the line style of the series, including color, thickness and pattern. Set the Pattern property to Line.


Bar Charts

The bar chart consists of twelve sub-types in the bar chart type. They are split up in the wizard by Column and Bar. The column charts represent vertical bar charts and the Bar charts represents horizontal bar charts.

Vertical (Column) Bar Charts

Vertical Bar Chart | Stacked Vertical Bar Chart
100% Stacked Vertical Bar Chart | Vertical 3D Bar Chart
Stacked Vertical 3D Bar Chart | 100% Stacked Vertical 3D Bar Chart

Horizontal Bar Charts

Horizontal Bar Chart | Stacked Horizontal Bar Chart
100% Stacked Horizontal Bar Chart | Horizontal 3D Bar Chart
Stacked Horizontal 3D Bar Chart | 100% Stacked Horizontal 3D Bar Chart

Vertical Bar Chart

Stacked Vertical Bar Chart

100% Stacked Vertical Bar Chart

Vertical 3D Bar Chart

Stacked Vertical 3D Bar Chart

100% Stacked Vertical 3D Bar Chart

Horizontal Bar Chart

Stacked Horizontal Bar Chart

100% Stacked Horizontal Bar Chart

Horizontal 3D Bar Chart

Stacked Horizontal 3D Bar Chart

100% Stacked Horizontal 3D Bar Chart


Vertical Bar Chart

Demonstrates a standard vertical bar chart. This type of chart is a common way to display a series of simple values with a X and Y axis. To create a simple bar chart, the following properties can be set under ChartGroup Class:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each bar is outlined in the PlotArea ForeColor. If this property is set to False, each bar is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked Vertical Bar Chart

Demonstrates a stacked vertical bar chart. A Stacking Bar chart draws each series as a portion of a stacked bar cluster. To create a stacked vertical bar chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this to property True, each bar segment is outlined in the PlotArea ForeColor. If this property is set to False, each bar segment is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to True.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


100% Stacked Vertical Bar Chart

Demonstrates a 100% stacked vertical bar chart. To create this type of chart, simply set the Is100Percent property equal to true, which will cause the ChartGroup to take up 100 percent of the chart.

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to true.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each bar segment is outlined in the PlotArea ForeColor. If this property is set to False, each bar segment is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to True.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Vertical 3D Bar Chart

Demonstrates a 3D vertical bar chart. To create a vertical 3D bar chart, change the Use3D property to true:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to true. By setting this property to True, each block of the 3D bars is outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each block is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked Vertical 3D Bar Chart

Demonstrates a stacked 3D vertical bar chart. To create a stacked vertical 3D chart, change the Stacked property equal to true:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each block of the 3D bars is outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each block is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to True.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


100% Stacked Vertical 3D Bar Chart

To create a 100% stacked vertical 3D bar chart, change the Is100Percent property equal to true:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to true.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each block of the 3D bars is outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each block is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to True.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Horizontal Bar Chart

Demonstrates a standard horizontal bar chart. Set the Inverted Property of the Area Class equal to true. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property. To create this type of chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each bar is outlined in the PlotArea ForeColor. If this property is set to False, each bar is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked Horizontal Bar Chart

To create a stacked horizontal bar chart, set the Stacked property equal to true. Set the Inverted Property of the Area Class equal to true. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property.

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each bar segment is outlined in the PlotArea ForeColor. If this property is set to False, each bar segment is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


100% Stacked Horizontal Bar Chart

To create a 100% stacked horizontal bar chart, set the Is100Percent property equal to true, which will make the chart display on 100% of the chart area. Set the Inverted Property of the Area Class equal to true. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property.

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to true.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each bar segment is outlined in the PlotArea ForeColor. If this property is set to False, each bar segment is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Horizontal 3D Bar Chart

To create a 3D horizontal bar chart, set the Use3D property to true. Set the Inverted Property of the Area Class equal to true. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property.

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each block of the 3D bars is outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each block is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to False.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked Horizontal 3D Bar Chart

Set the Inverted Property of the Area Class equal to true. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property. To create a stacked 3D Bar Chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each block of the 3D bars is outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each block is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


100% Stacked Horizontal 3D Bar Chart

Demonstrates a 100% stacked horizontal 3D bar chart. Set the Inverted Property of the Area Class equal to true. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property. To create a 100% stacked 3D bar chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Bar to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to true.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each block of the 3D bars is outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each block is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Area Charts

There are six area chart types that can be used to display chart data. Click on the chart image for more detailed information regarding the specific chart type.

Area Chart | 3D Area Chart
Stacked Area Chart | Stacked 3D Area Chart
100% Stacked Area Chart | 100% Stacked 3D Area Chart

Area Chart

Stacked Area Chart

100% Stacked Area Chart

3D Area Chart

Stacked 3D Area Chart

100% Stacked 3D Area Chart


Area Chart

Demonstrates a standard area chart. An Area chart draws each series as connected points of data which are then filled below the points. To create a standard area chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Area to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each area is outlined in the PlotArea ForeColor. If this property is set to False, each area is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked Area Chart

Demonstrates a stacked area chart. Stacked area charts represent the data by stacking the values for each series on top of the values from the previous series. To create a stacked area chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Area to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each area is outlined in the PlotArea ForeColor. If this property is set to False, each area is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


100% Stacked Area Chart

Demonstrates a 100% stacked area chart. To create a 100% stacked area chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Area to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to true.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each area is outlined in the PlotArea ForeColor. If this property is set to False, each area is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


3D Area Chart

Demonstrates a 3D Area Chart. C1Chart's 3D effects can be used with area charts or stacking area charts to create the illusion of depth with each data series. To create a 3D area chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Area to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each 3D area outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each 3D area is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Stacked 3D Area Chart

To create a stacked 3D area chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Area to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to false.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each 3D area outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each 3D area is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


100% Stacked 3D Area Chart

To create a 100% stacked 3D area chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Area to create a standard line chart.
Is100Percent | Controls whether a stacked ChartGroup is 100 percent of the chart. In this example, the Is100Percent property is set to true.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each 3D area outlined in the PlotArea ForeColor, adding indications of data values and perspective. If this property is set to False, each 3D area is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to true.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Pie Charts

The Pie chart type includes four sub-types to choose from. The four types follow:

Pie Chart | 3D Pie Chart
Sliced Pie Chart | 3D Sliced Pie Chart

Pie Chart

Sliced Pie Chart

3D Pie Chart

3D Sliced Pie Chart


Pie Chart

Demonstrates the pie chart type used to display chart data. A Pie chart draws each series as a slice in a pie. To create a standard pie chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Pie to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each slice outlined in the PlotArea ForeColor. If this property is set to False, each slice is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


Sliced Pie Chart

Demonstrates a sliced pie chart. A slice of a Pie chart can be emphasized by exploding it, which extrudes the slice from the rest of the pie. To create a sliced pie chart, use the same settings as the standard pie chart:

ChartType | Controls the style of the chart. Set this property to Pie to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each slice outlined in the PlotArea ForeColor. If this property is set to False, each slice is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

In addition to these property settings, use the Offset property of the series to set the exploded slice’s offset from the center of the pie. The offset is measured as a percentage of the radius of the pie. You can set this by code, see Special Pie Chart Properties for more details or you can set this using the ChartDataSeries Collection Editor. To open this collection editor, select the ellipses (…) next to the SeriesList property.

Select the Offset property and set the offset number to the desired space needed.


3D Pie Chart

To create a 3D pie chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to Pie to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each slice outlined in the PlotArea ForeColor, adding perspective. If this property is set to False, each slice is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.


3D Sliced Pie Chart

To create a sliced 3D pie chart, use the same property settings as the 3D pie chart:

ChartType | Controls the style of the chart. Set this property to Pie to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True. By setting this property to True, each slice outlined in the PlotArea ForeColor, adding perspective. If this property is set to False, each slice is drawn with pure color and without an outline.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to true.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

Also, you will need to set the Offset property of the series to set the exploded slice’s offset from the center of the pie. See Special Pie Chart Properties for more details on how to do this by using code. See Sliced Pie Chart for more details on how to do this using the ChartDataSeries Collection Editor.


Stock Charts

Three sub-types are available if a stock chart type is chosen. Choose sub-type 1 for a HiLo Chart, sub-type 2 for a HiLoOpenClose Chart, or sub-type 3 for a Candle Chart.

Hi-Lo Chart | Hi-Low-Open-Close Chart
Candle Chart |


Hi-Lo Chart

Demonstrates a hi-lo chart. A HiLo chart combines two independent values to supply high and low data for each point in a series. To create this type of chart, set the following properties:

ChartType | Controls the style of the chart. Set this property to HiLo to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

For more information, see HiLo Charts.


Hi-Low-Open-Close Chart

Demonstrates a Hi-Lo-Open-Close Chart. HiLoOpenClose charts are similar to HiLo charts except that they combine four independent values to supply high, low, open and close data for a point in a series. To create this chart type, set the following properties:

ChartType | Controls the style of the chart. Set this property to HiLoOpenClose to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

In addition to these properties, the HiLoData Property settings will need to be set to the following:

FillFalling | Determines whether filled candles represent falling values (true) or rising values (false). Set this property equal to true in this example.
FillTransparent | Determines whether open candles are transparent (true) or filled with the series symbol color (false). Set this property equal to true in this example.
FullWidth | Gets or sets whether the opening and closing values of a Hi-Lo-Open-Close chart are represented by a horizontal line on both sides of the Hi-Lo bar. Set this property equal to false in this example.
ShowClose | Determines whether the closing value is shown in a Hi-Lo-Open-Close chart. In this example, set this property equal to true.
ShowOpen | Determines whether the opening value is shown in a Hi-Lo-Open-Close chart. Set this property equal to true for this example.

For more information, see HiLoOpenClose Charts.


Candle Chart

Demonstrates a candle chart. A candle chart is a special type of HiLo chart that is used to display financial information in a specific way. To create a candle chart, set the following properties.

ChartType | Controls the style of the chart. Set this property to Candle to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

For more information, see Candle Charts in the Chart Basics section.


Polar / Radar Charts

If Polar/Radar is selected as Chart type, six sub-types are available. Choose sub-type 1, sub-type 2, or sub-type 3 for a Polar Chart. Choose sub-type 4, sub-type 5, or sub-type 6 for a Radar Chart.

Polar Chart Using Symbols | Radar Chart Using Lines
Polar Chart Using Lines | Radar Chart Using Lines and Symbols
Polar Chart Using Lines and Symbols | Filled Radar Chart

Polar Chart Using Symbols

Polar Chart Using Lines

Polar Chart Using Lines and Symbols

Radar Chart Using Lines

Radar Chart Using Lines and Symbols

Filled Radar Chart


Polar Chart Using Symbols

Demonstrates a polar chart using symbols. A Polar chart draws the x and y coordinates in each series as (theta,r), where theta is amount of rotation from the origin and r is the distance from the origin. theta may be specified in either degrees (default) or radians. Since the X-axis is a circle, the X-axis maximum and minimum values are fixed. To create a polar chart with the use of symbols, set the following properties:

ChartType | Controls the style of the chart. Set this property to Polar to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

This example uses data between the values of 1 and 5, therefore the Degrees property should be set to false. This will cause the data to be displayed in radians. For more information, see Special Polar Chart Properties. Set the following Polar Class properties:

Degrees | Determines whether the X data values and Start value reflect angles in degrees (true) or radians (false) for Polar charts. Set this property equal to false.
PiRatioAnnotations | Determines whether polar charts measured in radians should be annotated with Pi rations. Set this property equal to true.
Start | Determines the starting angle of Polar charts. This example has the starting angle set to 0.

To add symbols to the data points on the polar chart, modify the ChartData’s SeriesList Property. You can do this in code, or you can use the ChartDataSeries Collection Editor, see Using the ChartDataSeries Collection Editor, for more information.


Polar Chart Using Lines

Demonstrates a standard polar chart using lines. The settings for this chart type are exactly as the Polar Chart Using Symbols. To add the lines to the polar chart, set the LineStyle property and the SymbolStyle property to the desired look. For more information on how to modify these properties, see Using the ChartDataSeries Collection Editor.


Polar Chart Using Lines and Symbols

Demonstrates a standard polar chart using lines and symbols. The settings for this chart type are exactly as the Polar Chart Using Symbols. To add the lines and symbols to the polar chart, set the LineStyle property and the SymbolStyle property to the desired look. For more information on how to modify these properties, see Using the ChartDataSeries Collection Editor.


Radar Chart Using Lines

Demonstrates a radar chart using lines. A Radar chart draws the y value in each data set along a radar line (the x value is ignored except for labels). The settings for the radar chart are similar to the polar chart, however a few properties have different settings. Set the following properties to obtain the result of a radar chart.

ChartType | Controls the style of the chart. Set this property to Radar to create a standard line chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the legend. By setting this to false, the legend will be ordered by the default. If it is set to true, the order of the legend items will be reversed. In this sample, the LegendReversed property is set to false, however the Legend.Visible property is also set to false which means it will not be displayed at this time.
ShowOutline | Determines whether figures drawn should be outlined in the PlotArea ForeColor. In this case, we set this property equal to True.
Stacked | Determines whether the chart should stack the data. Set the Stacked property to false.
Use3D | Determines whether 3D effects are used for charting the data in the ChartGroup. In this example, this property will be set to false.
Visible | Determines whether the ChartGroup is visible. Set this property to true so that the chart data will be displayed in the plot area of the chart.

Set the following Radar Class properties:

Degrees | Determines whether the Start value reflects angles in degrees (true) or radians (false) for Radar charts. Set this property to true.
Filled | Determines whether Radar charts should be filled. Set this property to false.
Start | Determines the starting angle of Radar charts. This example has the starting angle set to 0.

The LineStyle can be modified by using code or using the ChartDataSeries collection editor. For more information on how to modify these properties, see Using the ChartDataSeries Collection Editor.


Radar Chart Using Lines and Symbols

Demonstrates a radar chart using lines and symbols. The settings for this type of radar chart are the same as the radar chart using lines. The only difference is that the SymbolStyle property is set to display symbols. For more information on how to modify this properties, see Using the ChartDataSeries Collection Editor.


Filled Radar Chart

Demonstrates a filled radar chart. Filled Radar charts are the same as Radar charts, except that the area between the origin and the points is filled and symbols are not present. To create a Filled Radar chart, set the Filled property of the Radar class to True.


Using 2D Chart Properties

Accessing Axis Properties

Accessing ChartGroups

Modifying Header and Footer Titles

Modifying the Legend

Modifying ChartArea

Modifying PlotArea

Modifying ChartLabels

Adding AlarmZones


Accessing Axis Properties

Using Properties

1. In the Properties dialog, expand the ChartArea node.

2. Press the ellipsis next to the Axes node to display the ChartAxesCollectionEditor.

3. Modify the properties as desired. For more information, see Using the Axis Properties in the ChartArea Object.


Accessing ChartGroups

ChartGroups are organized into the ChartGroupsCollection, which is accessed through the ChartGroups object.

Using Code

The ChartGroupsCollection provides access to the ChartGroups through two methods. First, the individual ChartGroups can be accessed through the collection:

· Visual Basic

· C#

· Delphi

Secondly, the Group0 and Group1 properties of the ChartGroups object return the associated ChartGroup and allow circumvention of the long collection name:

· Visual Basic

· C#

· Delphi

Using Properties

1. In the Properties dialog, expand the ChartGroups node.

2. Press the ellipsis next to ChartGroupsCollection to display the ChartGroupReadOnlyCollectionEditor.

3. Modify properties as desired. For more information, see The ChartGroup Object or ChartGroups.


Modifying Header and Footer Titles

A chart can have two titles, one called the Header and one called the Footer. Because each title can be positioned above, below, and to the right or left of the chart, it is not necessary to adhere to the traditional concept of Header and Footer at the top and bottom of an object.

Notes:

· When changing a location, it is necessary to replace the entire Point, not just an X or Y value. This is true of all Controls in .Net.

· A value of –1 for an X or Y value for the location of a chart element means that the element should be automatically positioned with that coordinate. In the sample below, the Y values of the Header and Footer locations are both –1. The Y coordinate of each is determined automatically by the chart, which is based upon the Compass property setting.


Using Code

The sample code below shows an example of the Header positioned at the top of the chart. This position is approximately 20 pixels from the left edge. The Footer is positioned at the chart bottom right, 120 pixels from the chart right edge. By default, the Header and Footer would be centered at the top and bottom, respectively.

· Visual Basic

· C#

· Delphi


Using Properties

1. In the Properties dialog, expand the Footer and Header nodes.

2. Modify properties as desired. For more information, see Adding Header and Footer Titles.


Modifying the Legend

Whenever data exists in the chart, a Legend is automatically generated. The chart assigns the name specified in the ChartDataSeries object for the series as the series identifier. LineStyle and SymbolStyle determine the symbols that accompany the series name in the Legend. The positioning, border, colors and font used for the Legend can be customized.


Using Code

Sample property settings are listed below:

· Visual Basic

· C#

· Delphi

Note: In VB.Net, it is still possible to use the With and End statement that may make it easier to show repeated use of the same object. The code above would look as follows using this method:

· Visual Basic

· C#

· Delphi


Using Properties

1. In the Properties dialog, expand the Legend node.

2. Modify Properties as desired. For more information, see Formatting the Legend.


Modifying ChartArea

ChartArea contains properties that control position, appearance, and size of the chart.


Using Properties

1. In the Properties dialog, expand ChartArea node.

2. Modify properties as desired. For more information, see Using the Axis Properties in the ChartArea Object.


Modifying PlotArea

Using Properties


Using Properties

1. In the Properties dialog, expand the ChartArea node.

2. Expand the PlotArea node.

3. Modify the properties as desired. For more information, see Customizing Chart Elements.


Modifying ChartLabels

ChartLabels are used to highlight an important data point, but can also be used generally to provide information on data or on the chart.


Using Code

The Label object provides a number of properties that help define and position the chart label. The most important of these properties are:

· The Compass property specifies the positioning of the label around its anchor. For instance, setting the Compass property to East will place the label to the right of the anchor.

· The AttachMethod property specifies by which method the label will be attached to the chart. It can be attached by Coordinate, DataCoordinate, or by the data point.

· The Text property specifies the text to appear in the chart label.

· The IsConnected:Label property is a Boolean, which specifies whether a line is to be drawn from the chart label to its attached location. If True, the line is drawn.

· The Offset property specifies the distance, in the anchor direction, from the chart label to its attached location, and is of type Long.

· The DefaultLabelStyle property sets a default style that all the labels will inherit from. For instance, if the BackColor of the default style is set to black, all future labels will have a black backcolor.

The following code sets the above properties:

· Visual Basic

· C#

· Delphi

The above code calls the LabelsCollection AddNewLabel() method, which creates a new Label and returns it. Since the return value is an object, it is possible to use the With and End statement on the returned result. Using this method makes working with the Chart objects-- even newly created ones -- much easier, since it is not necessary to Dim up a new variable.

· Visual Basic

· C#

· Delphi

Note: When creating variables that reference chart objects, it is usually best to use the fully qualified name, which includes the chart namespace. This is especially true for objects with the same name as other commonly used controls and objects like “Label”.

If the label already exists in the collection, and it is desired to change an existing property value, then the label can be accessed by either its index or its name from either the ChartLabelsCollection or the ChartLabels object directly.

· Visual Basic

· C#

· Delphi

The code below may also be used:

· Visual Basic

· C#

· Delphi


Using Properties

1. In the Properties dialog, expand the ChartLabels node.

2. Press the ellipsis next to LabelsCollection to display the LabelCollectionEditor.

3. Modify properties as desired. For more information, see Using ChartLabels.


Adding AlarmZones

AlarmZones are a series of bands that can be placed behind the plotted data, but in front of the chart background. Generally, AlarmZones are used in much the same manner as grid lines, but the ability to modify the AlarmZones allows them to be more visually appealing.


Using Code

Adding an alarm zone member to the AlarmZonesCollection in code adds an alarm zone to the chart:

· Visual Basic

· C#

· Delphi

See also:

· Visual Basic

· C#

· Delphi


Using Properties

1. In the Properties dialog, expand the ChartArea node.

2. Expand the PlotArea node.

3. Press the ellipsis next to the AlarmZones property to bring up the AlarmZonesCollectionEditor.

4. Add, remove, or modify alarm zones as desired. For more information, see Alarm Zones.


Using the ChartDataSeries Collection Editor

To add symbols to the data points on your chart, simply modify the ChartData’s SeriesList Property. You can do this in code, or you can use the ChartDataSeries Collection Editor. To use this editor, select SeriesList in the chart properties. The editor screen will open up and you can modify the line style and symbol style. Here is what the editor looks like:

In the editor, you can set the LineStyle of the data or the SymbolStyle of the data in the chart. To add or remove the lines from the chart display, modify the LineStyle property. Select None as the pattern type from the drop down box to remove the line, or select the line type (Solid, Dash, Dot, DashDot, or DashDotDot) from the drop down to add a line to the chart.


2D Chart Frequently Asked Questions

How do I change chart type?

How do I change the way chart data is plotted?

How do I change colors displayed in the chart?

How do I change placement of the Legend?

How do I add or modify a Border?


How do I change chart type?

1. In the Properties dialog, expand the ChartGroups node.

2. Press the ellipsis button next to the ChartGroupsCollection to display the ChartGroupsCollectionEditor.

3. Select the desired chart type from the ChartType property drop-down menu.

Note: When using 2D Chart, the following chart types will be available:

· XY-Plot

· Pie

· Area

· Polar

· Radar

· Bubble

· HiLo

· HiLoOpenClose

· Candle

For more information about chart types, see Choosing the 2DChart Type.


How do I change the way chart data is plotted?

1. In the Properties dialog, expand the ChartArea node in Properties.

2. Expand the node of appropriate axis.

3. In Grid Minor, set Max and Min (maximum and minimum interval to display on axis) and set UnitMajor (numerical interval on axis).

For example: If Max is set to 20, Min is set to 0, and UnitMajor is set to 5, every fifth number will display 0, 5, 10, 15, and 20 on the axis.

For more information, see Setting Axis Bounds.


How do I change colors displayed in the chart?

To change series color

1. Right-click on the chart control.

2. Select Chart Properties.

3. Choose Data.

4. Expand SymbolStyle node.

5. Select desired color from Color drop-down menu.

To change chart area color

1. In the properties dialog, expand the ChartArea node.

2. Expand Style node.

3. Select desired color from BackColor drop-down menu.

To change axis color

1. In the Properties dialog, expand the ChartArea node.

2. Expand Style node.

3. Expand Font node.

4. Select desired color from ForeColor drop-down menu.

For more information, see Changing Axis Appearance.


How do I change placement of the Legend?

1. In the Properties dialog, expand the Legend node.

2. Select East, West, North, or South from Compass drop-down menu.

For more information, see Formatting the Legend.


How do I add or modify a Border?

1. In the Properties dialog, expand the ChartArea node.

2. Expand Style node.

3. Expand Border node.

4. Select style type from the BorderStyle drop-down menu.

5. Select desired color from the Color drop-down menu.

6. Increase number of Thickness property to make border more prominent or decrease number to make border less prominent.

For more information, see Using Borders.


C1Chart 2D Reference

Action Class

ActionCollection Class

AlarmZone Class

AlarmZonesCollection Class

Area Class

AttachMethodData Class

AutoLabelArrangement Class

AxesCollection Class

Axis Class

AxisScrollBar Class

AxisScrollBar.ScaleMenuItem Class

AxisScrollBar.ScaleMenuItemCollection Class

Bar Class

Border Class

Bubble Class

C1Chart Class

CalculateFunctionEventArgs Class

ChartData Class

ChartDataArray Class

ChartDataSeries Class

ChartDataSeriesCollection Class

ChartGridStyle Class

ChartGroup Class

ChartGroups Class

ChartGroupsCollection Class

ChartHistogram Class

ChartLabels Class

ChartLineStyle Class

ChartSymbolStyle Class

ChartToolTip Class

DataHighlight Class

DataLabel Class

DrawDataSeriesEventArgs Class

DrawLegendEntryEventArgs Class

FillStyle Class

FunctionBase Class

FunctionsCollection Class

Gantt Class

HighlightChangedEventArgs Class

HiLoData Class

Histogram Class

Interaction Class

ICustomTrendLine Interface

ISimpleFunction Interface

Label Class

LabelsCollection Class

Legend Class

Margin Class

ParametricFunction Class

Pie Class

PointStyle Class

PointStylesCollection Class

PointStyleSelectEventArgs Class

Polar Class

PlotArea Class

PolygonData Class

PostDrawSeriesEventArgs Class

Radar Class

RegressionOptions Class

RegressionStatistics Class

Rounding Class

StatisticalData Class

StatisticalData.ConfidenceInterval Class

Style Class

Title Class

TransformEventArgs Class

TrendLine Class

TrendLinesCollection Class

ValueLabel Class

ValueLabelsCollection Class

View3D Class

Yfunction Class

C1Chart 2D Enumeration Reference


Action Class

Represents interactive action.

Syntax

C1.Win.C1Chart.Action


Action All Members

Action Properties

Axis | Gets or sets the axis or axes that will be used in the transformation action.
Modifier | Gets or sets the key modifier that will be used to start the action.
MouseButton | Gets or sets the mouse button that will be used to start the action.
Name | Gets the action name.


Action Properties

Axis Property

Modifier Property

MouseButton Property

Name Property


Axis Property

Axis Property

Gets or sets the axis or axes that will be used in the transformation action.

Syntax

[VB]

Public Property Axis As AxisFlagEnum

[C#]

public AxisFlagEnum Axis { get; set; }

[Delphi]

property Axis: AxisFlagEnum;

See Also

Action Class


Modifier Property

Modifier Property

Gets or sets the key modifier that will be used to start the action.

Syntax

[VB]

Public Property Modifier As Keys

[C#]

public Keys Modifier { get; set; }

[Delphi]

property Modifier: Keys;

Remarks

This property allows bitwise combination of SHIFT, CONTROL, and ALT keys.

See Also

Action Class


MouseButton Property

MouseButton Property

Gets or sets the mouse button that will be used to start the action.

Syntax

[VB]

Public Property MouseButton As MouseButtons

[C#]

public MouseButtons MouseButton { get; set; }

[Delphi]

property MouseButton: MouseButtons;

See Also

Action Class


Name Property

Name Property

Gets the action name.

Syntax

[VB]

Public Readonly Property Name As String

[C#]

public string Name { get; }

[Delphi]

property Name: string;

See Also

Action Class


ActionCollection Class

Represents the collection of action objects.


ActionCollection Class Members

ActionCollection Class Properties

Count | Gets the item count of the collection.
Item | Gets the specified Action from the collection by numeric index or by name.

ActionCollection Class Methods

Contains | Determines whether the specified Action exists in the collection.
CopyTo | Copies the collection Actions beginning with the specified index to an array of Action objects.
IndexOf | Gets the current index of the specified Action in the collection.


ActionCollection Class Properties

Count Property

Item Property


Count Property

Count Property

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

ActionCollection Class


Item Property

Item Property

Gets the specified Action from the collection by numeric index or by name.

Syntax

[VB]

Default Public ReadOnly Property Item(index as Integer) As Action

Default Public ReadOnly Property Item(name as String) As Action

[C#]

public Action this[int index] { get; }

public Action this[string name] { get; }

[Delphi]

property Item(index: Integer): Action;

property Item(index: string): Action;

See Also

ActionCollection Class


ActionCollection Class Methods

Contains Method

CopyTo Method

IndexOf Method


Contains Method

Contains Method

Determines whether the specified Action exists in the collection.

Syntax

[VB]

Public Function Contains(act As Action) As Boolean

[C#]

public bool Contains(Action act);

[Delphi]

function Contains(act: Action): Integer;

Return Value

A boolean indicating whether the specified action is contained in the collection.

See Also

ActionCollection Class


CopyTo Method

CopyTo Method

Copies the collection of Actions beginning with the specified index to the specified array of Action objects.

Syntax

[VB]

Public Function CopyTo(actions As Action(), index as Integer)

[C#]

public void CopyTo(Action actions[], int index);

[Delphi]

procedure CopyTo(actions: Action; index: Integer);

See Also

ActionCollection Class


IndexOf Method

IndexOf Method

Gets the current index of the specified Action in the collection.

Syntax

[VB]

Public Function IndexOf(act As Action) As Integer

[C#]

public int IndexOf(Action act);

[Delphi]

function IndexOf(act: Action): Integer;

Return Value

Returns an integer indicating the element of the specified Action within the collection. If the Action is not foundthe return value is –1.

See Also

ActionCollection Class


AlarmZone Class

Syntax

C1.Win.C1Chart.AlarmZone


AlarmZone All Members

AlarmZone Properties

BackColor Supported by the .NET Compact Framework. | Gets or sets the background color of the AlarmZone.
FarExtent Supported by the .NET Compact Framework. | Gets or sets the far extent of the AlarmZone in X-axis data coordinates.
ForeColor Supported by the .NET Compact Framework. | Gets or sets the foreground color of the AlarmZone.
GroupIndex | Gets or sets the index of the data group of the AlarmZone.
LowerExtent Supported by the .NET Compact Framework. | Gets or sets the lower extent of the AlarmZone in Y-axis data coordinates.
MinHeight | Gets or sets the AlarmZone minimum pixel height.
MinWidth | Gets or sets the AlarmZone minimum pixel width.
Name Supported by the .NET Compact Framework. | Gets or sets the name of the AlarmZone.
NearExtent Supported by the .NET Compact Framework. | Gets or sets the near extent of the AlarmZone in X-axis data coordinates.
PolygonData | Gets the PolygonData object for the AlarmZone.
PatternStyle | Gets or sets the pattern style to be used if PatternVisible is true.
PatternVisible | Gets or sets whether the specified PatternStyle should be used to brush the background of the AlarmZone.
Shape | Gets or sets the shape of the AlarmZone.
UpperExtent Supported by the .NET Compact Framework. | Gets or sets the upper extent of the AlarmZone in Y-axis data coordinates.
Visible Supported by the .NET Compact Framework. | Gets or sets the visibility of the AlarmZone.

AlarmZone Methods

IsInsideZone

Returns true if the specified client coordinate lies within the shape of the AlarmZone.


AlarmZone Properties

BackColor Property (AlarmZone)

FarExtent Property

ForeColor Property (AlarmZone)

GroupIndex Property (AlarmZone)

LowerExtent Property

MinHeight Property (AlarmZone)

MinWidth Property (AlarmZone)

Name Property (AlarmZone)

NearExtent Property

PatternStyle Property (AlarmZone)

PatternVisible Property (AlarmZone)

PolygonData Property (AlarmZone)

Shape Property (AlarmZone)

UpperExtent Property

Visible Property (AlarmZone)


BackColor Property (AlarmZone)

BackColor Property (AlarmZone)

Gets or sets the background color of the AlarmZone.

Syntax

[VB]

Public Property BackColor As Color

[C#]

public Color BackColor { get; set; }

[Delphi]

property BackColor: Color;

Remarks

Inherits from PlotArea. An AlarmZone always displays the BackColor when showing the zone. If a Pattern is used, the ForeColor is also used to draw the pattern lines.

See Also

AlarmZone Class


FarExtent Property

FarExtent Property

Gets or sets the far extent of the AlarmZone in X-axis data coordinates.

Syntax

[VB]

Public Property FarExtent As Double

[C#]

public double FarExtent { get; set; }

[Delphi]

property FarExtent: Double;

Remarks

Typically, the FarExtent is the larger X value in data coordinates that the AlarmZone extends. If the FarExtent and NearExtent are both zero, then both are assumed to be the Max and Min values of the X-axis, respectively.

See Also

AlarmZone Class


ForeColor Property (AlarmZone)

ForeColor Property (AlarmZone)

Gets or sets the foreground color of the AlarmZone.

Syntax

[VB]

Public Property ForeColor As Color

[C#]

public Color ForeColor { get; set; }

[Delphi]

property ForeColor: Color;

Remarks

Inherits from PlotArea. An AlarmZone always displays the BackColor when showing the zone. If a Pattern is used, the ForeColor is also used to draw the pattern lines.

See Also

AlarmZone Class


GroupIndex Property (AlarmZone)

GroupIndex Property (AlarmZone)

Gets or sets the index of the data group of the AlarmZone.

Syntax

[VB]

Public Property GroupIndex As Integer

[C#]

public int GroupIndex { get; set; }

[Delphi]

property GroupIndex: Integer;

Remarks

The group index indicates the ChartGroup for which the AlarmZone extents specify the data coordinates of the AlarmZone. If the group index specifies a non-existant ChartGroup, the AlarmZone is not drawn.

See Also

AlarmZone Class


LowerExtent Property

LowerExtent Property

Gets or sets the lower extent of the AlarmZone in Y-axis data coordinates.

Syntax

[VB]

Public Property LowerExtent As Double

[C#]

public double LowerExtent { get; set; }

[Delphi]

property LowerExtent: Double;

Remarks

Typically, the LowerExtent is the smaller Y value in data coordinates that the AlarmZone extends. If the UpperExtent and LowerExtent are both zero, then both are assumed to be the Max and Min values of the Y-axis, respectively.

See Also

AlarmZone Class


MinHeight Property (AlarmZone)

MinHeight Property (AlarmZone)

Gets or sets the AlarmZone minimum pixel height.

Syntax

[VB]

Public Property MinHeight As Integer

[C#]

public int MinHeight { get; set; }

[Delphi]

property MinHeight: Integer;

Remarks

If the height of the AlarmZone is less than the specified value in pixels, the AlarmZone is drawn with the specified height. Applicable only for cartestian charts and rectanglular or ellipical shaped AlarmZones.

See Also

AlarmZone Class


MinWidth Property (AlarmZone)

MinWidth Property (AlarmZone)

Gets or sets the AlarmZone minimum pixel width.

Syntax

[VB]

Public Property MinWidth As Integer

[C#]

public int MinWidth { get; set; }

[Delphi]

property MinWidth: Integer;

Remarks

If the width of the AlarmZone is less than the specified value in pixels, the AlarmZone is drawn with the specified width. Applicable only for cartestian charts and rectanglular or ellipical shaped AlarmZones

See Also

AlarmZone Class


Name Property (AlarmZone)

Name Property (AlarmZone)

Gets or sets the name of the AlarmZone.

Syntax

[VB]

Public Property Name As String

[C#]

public String Name { get; set; }

[Delphi]

property Name: string;

Remarks

The name can be used for indexing or simple identification.

See Also

AlarmZone Class


NearExtent Property

NearExtent Property

Gets or sets the near extent of the AlarmZone in X-axis data coordinates.

Syntax

[VB]

Public Property NearExtent As Double

[C#]

public double NearExtent { get; set; }

[Delphi]

property NearExtent: Double;

Remarks

Typically, the NearExtent is the smaller X value in data coordinates that the AlarmZone extends. If the FarExtent and NearExtent are both zero, then both are assumed to be the Max and Min values of the X-axis, respectively.

See Also

AlarmZone Class


PatternStyle Property (AlarmZone)

PatternStyle Property (AlarmZone)

Gets or sets the pattern style to be used if PatternVisible is true.

Syntax

[VB]

Public Property PatternStyle As HatchStyle

[C#]

public HatchStyle PatternStyle { get; set; }

[Delphi]

property PatternStyle: HatchStyle;

Remarks

The PatternStyle is penned in the AlarmZone ForeColor.

See Also

AlarmZone Class


PatternVisible Property (AlarmZone)

PatternVisible Property (AlarmZone)

Gets or sets whether the specified PatternStyle should be used to brush the background of the AlarmZone.

Syntax

[VB]

Public Property PatternVisible As Boolean

[C#]

public bool PatternVisible { get; set; }

[Delphi]

property PatternVisible: Boolean;

See Also

AlarmZone Class


PolygonData Property (AlarmZone)

PolygonData Property (AlarmZone)

Gets the PolygonData object for the AlarmZone.

Syntax

[VB]

Public Property PolygonData As PolygonData

[C#]

public PolygonData PolygonData { get; }

[Delphi]

property PolygonData: PolygonData;

Remarks

If the AlarmZone is polygon shaped, then this object is used to specify the polygon coordinates using arrays or data series specification. Applicable only for cartestian charts and polygon shaped AlarmZones.

See Also

AlarmZone Class


Shape Property (AlarmZone)

Shape Property (AlarmZone)

Gets or sets the shape of the AlarmZone.

Syntax

[VB]

Public Property Shape As AlarmZoneShapeEnum

[C#]

public AlarmZoneShapeEnum Shape { get; }

[Delphi]

property Shape: AlarmZoneShapeEnum;

Remarks

An AlarmZone of rectangle shape is specified by the rectangle bounded by the the data coordinates specified by the extents of the AlarmZone. An AlarmZone of ellipical shape is specified by the rectangle bounded by the the data coordinates specified by the extents of the AlarmZone.

An AlarmZone of polygon shape is specified by the data specified of the PolygonData and bounded by the data coordinates specified by the extents of the AlarmZone. Applicable only for cartestian charts.

See Also

AlarmZone Class


UpperExtent Property

UpperExtent Property

Gets or sets the upper extent of the AlarmZone in Y-axis data coordinates.

Syntax

[VB]

Public Property UpperExtent As Double

[C#]

public double UpperExtent { get; set; }

[Delphi]

property UpperExtent: Double;

Remarks

Typically, the UpperExtent is the larger Y value in data coordinates that the AlarmZone extends. If the UpperExtent and LowerExtent are both zero, then both are assumed to be the Max and Min values of the Y-axis, respectively.

See Also

AlarmZone Class


Visible Property (AlarmZone)

Visible Property (AlarmZone)

Gets or sets the visibility of the AlarmZone.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

AlarmZone Class


AlarmZone Methods

IsInsideZone Method


IsInsideZone Method

IsInsideZone Method

Returns true if the specified client coordinate lies within the shape of the AlarmZone.

Syntax

[VB]

Public Sub IsInsideZone (XCoord As Integer, YCoord As Integer)

[C#]

public Boolean IsInsideZone (int XCoord, int YCoord);

[Delphi]

function IsInsideZone (XCoord: Integer; YCoord: Integer);

Remarks

AlarmZones may overlap, with one more AlarmZones on top of others. This method returns true as long as the coordinate is within the bounds of the AlarmZone, regardless of whether the AlarmZone is covered by another at the specified coordinate.

See Also

AlarmZonesCollection Class


AlarmZonesCollection Class

Syntax

C1.Win.C1Chart.AlarmZonesCollection


AlarmZonesCollection All Members

AlarmZonesCollection Properties

Count Supported by the .NET Compact Framework. | Gets the specified AlarmZone count from the collection.
Item Supported by the .NET Compact Framework. | Gets the specified AlarmZone from the collection by numeric index or by name.

AlarmZonesCollection Methods

Add Supported by the .NET Compact Framework. | Adds the specified AlarmZone to the collection.
AddNewZone Supported by the .NET Compact Framework. | Creates a new AlarmZone and appends it to the collection.
AlarmZoneAtCoord | Retrieves a reference to the foremost AlarmZone that lies under the specified client coordinates: Xcoord - The X client coordinate to test. Ycoord - The Y client coordinate to test.
Insert Supported by the .NET Compact Framework. | Inserts the specified AlarmZone at the specified index.
InsertNewZone Supported by the .NET Compact Framework. | Creates a new AlarmZone and inserts it at the specified index of the collection.
OnInsert Supported by the .NET Compact Framework. | Called after an AlarmZone is inserted into the collection.
Remove Supported by the .NET Compact Framework. | Removes the specified AlarmZone from the collection.


AlarmZonesCollection Properties

Count Property (AlarmZonesCollection)

Item Property (AlarmZonesCollection)


Count Property (AlarmZonesCollection)

Count Property (AlarmZonesCollection)

Gets the specified AlarmZone count from the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

AlarmZonesCollection Class


Item Property (AlarmZonesCollection)

Item Property (AlarmZonesCollection)

Gets the specified AlarmZone from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As AlarmZone

Default Public ReadOnly Property Item(name As String) As AlarmZone

[C#]

public AlarmZone this[int index]{ get; }

public AlarmZone this[string name] { get; }

[Delphi]

property Item(index: Integer): AlarmZone;

property Item(index: string): AlarmZone;

See Also

AlarmZonesCollection Class


AlarmZonesCollection Methods

Add Method (AlarmZonesCollection)

AddNewZone Method

AlarmZoneAtCoord Method

Insert Method (AlarmZonesCollection)

InsertNewZone Method

OnInsert Method (AlarmZonesCollection)

Remove Method (AlarmZonesCollection)


Add Method (AlarmZonesCollection)

Add Method (AlarmZonesCollection)

Adds the specified AlarmZone to the collection.

Syntax

[VB]

Public Function Add (azone As AlarmZone) As Integer

[C#]

public int Add(AlarmZone azone);

[Delphi]

function Add(azone: AlarmZone): Integer;

Return Value

An integer indicating the index of the collection to which the AlarmZone was added.

See Also

AlarmZonesCollection Class


AddNewZone Method

AddNewZone Method

Creates a new AlarmZone and appends it to the collection.

Syntax

[VB]

Public Function AddNewZone () As AlarmZone

[C#]

public AlarmZone AddNewZone();

[Delphi]

function AddNewZone AlarmZone;

Return Value

A reference to the newly created AlarmZone.

Remarks

The new AlarmZone is returned. A name unique to the collection is given to the added AlarmZone. An AlarmZone object can be set to the return value, making it very easy to initialize the newly added AlarmZone. For example:

· Visual Basic

· C#

· Delphi

See Also

AlarmZonesCollection Class


AlarmZoneAtCoord Method

AlarmZoneAtCoord Method

Retrieves a reference to the foremost AlarmZone that lies under the specified client coordinates:

· Xcoord - The X client coordinate to test.

· Ycoord - The Y client coordinate to test.

Syntax

[VB]

Public Function AlarmZoneAtCoord (XCoord As Integer, Ycoord As Integer) As AlarmZone

[C#]

public AlarmZone AlarmZoneAtCoord (int XCoord, int YCoord);

[Delphi]

function AlarmZoneAtCoord (XCoord: Integer; Ycoord: Integer): AlarmZone;

Remarks

AlarmZones can overlap the same space in the plot area. If multiple AlarmZones lie under the specified point, this method returns a reference to the foremost AlarmZone (i.e. - on top). To obtain a list of all AlarmZones that lie under the specified coordinate, enumerate all AlarmZones in the collection and test each one using the AlarmZone.IsInsideZone method.

Return Value

A reference to the AlarmZone that is foremost at the specified client coordinate.

See Also

AlarmZonesCollection Class


Insert Method (AlarmZonesCollection)

Insert Method (AlarmZonesCollection)

Inserts the specified AlarmZone at the specified index.

Syntax

[VB]

Public Sub Insert (index As Integer, azone As AlarmZone)

[C#]

public void Insert (int index, AlarmZone azone);

[Delphi]

function Insert(index: Integer; azone: AlarmZone);

See Also

AlarmZonesCollection Class


InsertNewZone Method

InsertNewZone Method

Creates a new AlarmZone and inserts it at the specified index of the collection.

Syntax

[VB]

Public Function InsertNewZone (index As Integer) As AlarmZone

[C#]

public AlarmZone InsertNewZone (int index);

[Delphi]

function InsertNewZone(index: Integer) AlarmZone;

Return Value

A reference to the newly created AlarmZone.

Remarks

The new AlarmZone is returned. A name unique to the collection is given to the added AlarmZone. An AlarmZone object can be set to the return value, making it very easy to initialize the newly added AlarmZone. For example:

· Visual Basic

· C#

· Delphi

See Also

AlarmZonesCollection Class


OnInsert Method (AlarmZonesCollection)

OnInsert Method (AlarmZonesCollection)

Called after an AlarmZone is inserted into the collection.

Syntax

[VB]

Public Sub OnInsert (index As Integer, value As Object)

[C#]

public void OnInsert (int index, Object value);

[Delphi]

procedure OnInsert(index: Integer; value: Object);

Remarks

The index specifies the index of the inserted AlarmZone and the value is the inserted AlarmZone. The inserted AlarmZone may be modified.

See Also

AlarmZonesCollection Class


Remove Method (AlarmZonesCollection)

Remove Method (AlarmZonesCollection)

Removes the specified AlarmZone from the collection.

Syntax

[VB]

Public Sub Remove (azone As AlarmZone)

[C#]

public void Remove (AlarmZone azone);

[Delphi]

procedure Remove(azone: AlarmZone);

See Also

AlarmZonesCollection Class


Area Class

Syntax

C1.Win.C1Chart.Area

Remarks

The Area class describes the ChartArea of the chart. This area includes all axes and the charted data.


Area All Members

Area Properties

Axes Supported by the .NET Compact Framework. | Gets the axes collection.
AxisX Supported by the .NET Compact Framework. | Gets the primary X-axis object.
AxisY Supported by the .NET Compact Framework. | Gets the primary Y-axis object.
AxisY2 Supported by the .NET Compact Framework. | Gets the primary Y2 axis object.
Inverted Supported by the .NET Compact Framework. | Gets or sets whether the chart area is inverted.
Location Supported by the .NET Compact Framework. | Gets or sets the location of the ChartArea in chart control client coordinates.
LocationDefault Supported by the .NET Compact Framework. | Gets or sets the default location of the ChartArea.
Margins Supported by the .NET Compact Framework. | Gets or sets the size of the Chart Area margins.
PlotArea Supported by the .NET Compact Framework. | Gets the ChartPlot object, which describes the region where data is charted.
Size Supported by the .NET Compact Framework. | Gets or sets the size of the ChartArea in chart control client coordinates.
SizeDefault Supported by the .NET Compact Framework. | Gets or sets the default size of the ChartArea.
Style Supported by the .NET Compact Framework. | Gets the ChartArea style.
Visible Supported by the .NET Compact Framework. | Gets or sets the ChartArea visibility.

Area Methods

ResetLocationDefault | Resets the Area location so it is calculated automatically.
ResetSizeDefault | Resets Area size so it is calculated automatically.
ResetStyle | Resets Area style inheritance state.
ShouldSerializeLocationDefault | Returns true if the ChartArea LocationDefault property is not in the default state.
ShouldSerializeMargins | Returns true if the ChartArea margins are not set to their default values.
ShouldSerializeSizeDefault | Returns true if the ChartArea SizeDefault property is not in the default state.
ShouldSerializeStyle | Returns true if the ChartArea style property is not in the default state.


Area Properties

Axes Property (Area)

AxisX Property (Area)

AxisY Property (Area)

AxisY2 Property

Inverted Property

Location Property (Area)

LocationDefault Property (Area)

Margins Property

PlotArea Property

Size Property (Area)

SizeDefault Property (Area)

Style Property (Area)

Visible Property (Area)


Axes Property (Area)

Axes Property (Area)

Gets the axes collection.

Syntax

[VB]

Public ReadOnly Property Axes As AxesCollection

[C#]

public AxesCollection Axes { get; }

[Delphi]

property Axes: AxesCollection;

Remarks

This collection contains the X, Y and Y2 axes. The Axes collection is provided to allow the convenience of iterating on each axis in the collection while setting properties. The elements of the collection are the same objects as exposed by the Area AxisX, AxisY and AxisY2 properties. The number of elements in the Axes collection cannot be changed.

See Also

Area Class


AxisX Property (Area)

AxisX Property (Area)

Gets the primary X-axis object.

Syntax

[VB]

Public ReadOnly Property AxisX As Axis

[C#]

public Axis AxisX { get; }

[Delphi]

property AxisX: Axis;

See Also

Area Class


AxisY Property (Area)

AxisY Property (Area)

Gets the primary Y-axis object.

Syntax

[VB]

Public ReadOnly Property AxisY As Axis

[C#]

public Axis AxisY { get; }

[Delphi]

property AxisY: Axis;

See Also

Area Class


AxisY2 Property

AxisY2 Property

Gets the primary Y2 axis object.

Syntax

[VB]

Public ReadOnly Property AxisY2 As Axis

[C#]

public Axis AxisY2 { get; }

[Delphi]

property AxisY2: Axis;

See Also

Area Class


Inverted Property

Inverted Property

Gets or sets whether the chart area is inverted.

Syntax

[VB]

Public Property Inverted As Boolean

[C#]

public bool Inverted { get; set; }

[Delphi]

property Inverted: Boolean;

Remarks

This property is necessary for Inverted Bar Charts. Setting Inverted to True will invert the Axes, to reverse the Minimum and Maximum values of the Axis, use the Reversed property.

See Also

Area Class


Location Property (Area)

Location Property (Area)

Gets or sets the location of the ChartArea in chart control client coordinates.

Syntax

[VB]

Public Property Location As Point

[C#]

public Point Location { get; set; }

[Delphi]

property Location: Point;

Remarks

The Location property always returns the actual location of the upper, left corner of the chart element it describes whether or not the element placement is manual or automatic.

Modifying this value will change LocationDefault.

See Also

Area Class


LocationDefault Property (Area)

LocationDefault Property (Area)

Gets or sets the default location of the ChartArea.

Syntax

[VB]

Public Property LocationDefault As Point

[C#]

public Point LocationDefault { get; set; }

[Delphi]

property LocationDefault: Point;

Remarks

The LocationDefault property specifies the location of the upper, left corner of the chart element it describes. Non-negative values indicate the explicit position in chart client coordinates to place the chart element. Negative values will allow auto-positioning.

See Also

Area Class


Margins Property

Margins Property

Gets or sets the size of the Chart Area margins.

Syntax

[VB]

Public Property Margins As Margin

[C#]

public Margin Margins { get; set; }

[Delphi]

property Margins: Margin;

Remarks

The four margin values (Bottom, Top, Left, and Right) are each C1Chart Margin objects. Each object takes an integer value, and setting its value to –1 will allow for margin auto-positioning.

See Also

Area Class


PlotArea Property

PlotArea Property

Gets the ChartPlot object that describes the region where data is charted.

Syntax

[VB]

Public ReadOnly Property PlotArea As PlotArea

[C#]

public PlotArea PlotArea { get; }

[Delphi]

property PlotArea: PlotArea;

See Also

Area Class


Size Property (Area)

Size Property (Area)

Gets or sets the size of the ChartArea in chart control client coordinates.

Syntax

[VB]

Public Property Size As Size

[C#]

public Size Size { get; set; }

[Delphi]

property Size: Size;

Remarks

The Size property always returns the actual size of the chart element it describes whether or not the element placement is manual or automatic.

Modifying this value will change SizeDefault.

See Also

Area Class


SizeDefault Property (Area)

SizeDefault Property (Area)

Gets or sets the default size of the ChartArea.

Syntax

[VB]

Public Property SizeDefault As Size

[C#]

public Size SizeDefault { get; set; }

[Delphi]

property SizeDefault: Size;

Remarks

The SizeDefault property specifies the size of the chart element it describes. Non-negative values indicate the explicit width and height in chart client coordinates to place the chart element. Negative values will allow auto-positioning.

See Also

Area Class


Style Property (Area)

Style Property (Area)

Gets the ChartArea style.

Syntax

[VB]

Public ReadOnly Property Style As Style

[C#]

public Style Style { get; }

[Delphi]

property Style: Style;

Remarks

Inherits from the C1Chart style. The chart elements included within the ChartArea area, including Axes and PlotArea inherit their styles from the ChartArea style.

See Also

Area Class


Visible Property (Area)

Visible Property (Area)

Gets or sets the ChartArea visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

Remarks

If this property is false, the ChartArea and all objects included in the ChartArea, include Axes and PlotArea are not visible.

See Also

Area Class


Area Methods

ResetLocationDefault Method (Area)

ResetSizeDefault Method (Area)

ResetStyle Method (Area)

ShouldSerializeLocationDefault Method (Area)

ShouldSerializeMargins Method (Area)

ShouldSerializeSizeDefault Method (Area)

ShouldSerializeStyle Method (Area)


ResetLocationDefault Method (Area)

ResetLocationDefault Method (Area)

Resets the Area location so it is calculated automatically.

Syntax

[VB]

Public Sub ResetLocationDefault()

[C#]

public void ResetLocationDefault();

[Delphi]

procedure ResetLocationDefault;

See Also

Area Class


ResetSizeDefault Method (Area)

ResetSizeDefault Method (Area)

Resets Area size so it is calculated automatically.

Syntax

[VB]

Public Sub ResetSizeDefault()

[C#]

public void ResetSizeDefault();

[Delphi]

procedure ResetSizeDefault;

See Also

Area Class


ResetStyle Method (Area)

ResetStyle Method (Area)

Resets Area style inheritance state.

Syntax

[VB]

Public Sub ResetStyle()

[C#]

public void ResetStyle();

[Delphi]

procedure ResetStyle;

See Also

Area Class


ShouldSerializeLocationDefault Method (Area)

ShouldSerializeLocationDefault Method (Area)

Returns true if the ChartArea LocationDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeLocationDefault() As Boolean

[C#]

public bool ShouldSerializeLocationDefault ( )

[Delphi]

function ShouldSerializeLocationDefault: Boolean;

Remarks

The default state is LocationDefault.X = -1, LocationDefault.Y = -1, which results in automatic placement of the ChartArea.

See Also

Area Class


ShouldSerializeMargins Method (Area)

ShouldSerializeMargins Method (Area)

Returns true if the ChartArea margins are not set to their default values.

Syntax

[VB]

Public Function ShouldSerializeMargins() As Boolean

[C#]

public bool ShouldSerializeMargins ( )

[Delphi]

function ShouldSerializeMargins: Boolean;

Remarks

The default for all margins is 0.

See Also

Area Class


ShouldSerializeSizeDefault Method (Area)

ShouldSerializeSizeDefault Method (Area)

Returns true if the ChartArea SizeDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeSizeDefault() As Boolean

[C#]

public System.Boolean ShouldSerializeSizeDefault ( )

[Delphi]

function ShouldSerializeSizeDefault: Boolean;

Remarks

The default state is SizeDefault.Width = -1, SizeDefault.Height = -1, which results in automatic sizing of the ChartArea.

See Also

Area Class


ShouldSerializeStyle Method (Area)

ShouldSerializeStyle Method (Area)

Returns true if the ChartArea style property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeStyle() As Boolean

[C#]

public bool ShouldSerializeStyle ( )

[Delphi]

function ShouldSerializeStyle: Boolean;

Remarks

The default state is to inherit the style from the parent C1Chart object.

See Also

Area Class


AttachMethodData Class

Syntax

C1.Win.C1Chart.AttachMethodData

Remarks

The AttachMethodData Class is used by chart Label objects in conjunction with the Label object AttachMethod property to identify how the Label is placed or attached to the chart. Each of the AttachMethodData object properties are meaning only in the context of the AttachMethod value.


AttachMethodData All Members

AttachMethodData Properties

GroupIndex Supported by the .NET Compact Framework. | Gets or sets the group index of the data point to attach a label when the label AttachMethod property specifies DataIndex attachment.
PointIndex Supported by the .NET Compact Framework. | Gets or sets the point index of the data point to attach a label when the label AttachMethod property specifies DataIndex attachment.
SeriesIndex Supported by the .NET Compact Framework. | Gets or sets the series index of the data point to attach a label when the label AttachMethod property specifies DataIndex attachment.
X Supported by the .NET Compact Framework. | Gets or sets the X coordinate (data or client) when the label AttachMethod property specifies Coordinate or DataCoordinate attachment.
Y Supported by the .NET Compact Framework. | Gets or sets the Y coordinate (data or client) when the label AttachMethod property species Coordinate or DataCoordinate attachment.


AttachMethodData Properties

GroupIndex Property

PointIndex Property

SeriesIndex Property (AttachMethodData)

X Property (AttachMethodData)

Y Property (AttachMethodData)


GroupIndex Property

GroupIndex Property

Gets or sets the group index of the data point to attach a label when the label AttachMethod property specifies DataIndex attachment.

Syntax

[VB]

Public Property GroupIndex As Integer

[C#]

public int GroupIndex { get; set; }

[Delphi]

property GroupIndex: Integer;

See Also

AttachMethodData Class


PointIndex Property

PointIndex Property

Gets or sets the point index of the data point to attach a label when the label AttachMethod property specifies DataIndex attachment.

Syntax

[VB]

Public Property PointIndex As Integer

[C#]

public int PointIndex { get; set; }

[Delphi]

property PointIndex: Integer;

See Also

AttachMethodData Class


SeriesIndex Property (AttachMethodData)

SeriesIndex Property (AttachMethodData)

Gets or sets the series index of the data point to attach a label when the label AttachMethod property specifies DataIndex attachment.

Syntax

[VB]

Public Property SeriesIndex As Integer

[C#]

public int SeriesIndex { get; set; }

[Delphi]

property SeriesIndex: Integer;

See Also

AttachMethodData Class


X Property (AttachMethodData)

X Property (AttachMethodData)

Gets or sets the X coordinate (data or client) when the label AttachMethod property specifies Coordinate or DataCoordinate attachment.

Syntax

[VB]

Public Property X As Double

[C#]

public double X { get; set; }

[Delphi]

property X: Double;

See Also

AttachMethodData Class


Y Property (AttachMethodData)

Y Property (AttachMethodData)

Gets or sets the Y coordinate (data or client) when the label AttachMethod property species Coordinate or DataCoordinate attachment.

Syntax

[VB]

Public Property Y As Double

[C#]

public double Y { get; set; }

[Delphi]

property Y: Double;

See Also

AttachMethodData Class


AutoLabelArrangement Class

Represents the setting of the label auto-arrangement.

Syntax

C1.Win.C1Chart.AutoLabelArrangement


AutoLabelArrangement All Members

AutoLabelArrangement Properties

MaxIterations | Gets or sets the maximum number of iterations.
Method | Gets or sets the method of label arrangement.
Offset | Gets or sets the maximum offset distance in pixels from an associated point.
Options | Gets or sets the options of label arrangement.


AutoLabelArrangement Properties

MaxIterations Property (AutoLabelArrangement)

Method Property (AutoLabelArrangement)

Options Property (AutoLabelArrangement)

Offset Property (AutoLabelArrangement)


MaxIterations Property (AutoLabelArrangement)

MaxIterations Property (AutoLabelArrangement)

Gets or sets the method of label arrangement.

Syntax

[VB]

Public Property MaxIterations As Integer

[C#]

public int MaxIterations { get; set; }

[Delphi]

property MaxIterations: Integer;

Remarks

Only for AutoLabelArrangementMethodEnum.FindingOptimum.

See Also

AutoLabelArrangement Class


Method Property (AutoLabelArrangement)

Method Property (AutoLabelArrangement)

Gets or sets the method of label arrangement.

Syntax

[VB]

Public Property Method As AutoLabelArrangementMethodEnum

[C#]

public AutoLabelArrangementMethodEnum Method { get; set; }

[Delphi]

property Method: AutoLabelArrangementMethodEnum;

Remarks

Setting the Bottom property of the Margin to –1 will result in an automatic calculation for the Bottom value.

See Also

AutoLabelArrangement Class


Options Property (AutoLabelArrangement)

Options Property (AutoLabelArrangement)

Gets or sets the options of label arrangement.

Syntax

[VB]

Public Property Options As AutoLabelArrangementOptions

[C#]

public AutoLabelArrangementOptions Options { get; set; }

[Delphi]

property Options: AutoLabelArrangementOptions;

Remarks

The options are a bitwise combination of AutoLabelArrangementOptions enum elements.

See Also

AutoLabelArrangement Class


Offset Property (AutoLabelArrangement)

Offset Property (AutoLabelArrangement)

Gets or sets the maximum offset distance in pixels from an associated point.

Syntax

[VB]

Public Property Offset As Integer

[C#]

public int Offset { get; set; }

[Delphi]

property Offset: Integer;

See Also

AutoLabelArrangement Class


AxesCollection Class

Syntax

C1.Win.C1Chart.AxesCollection


AxesCollection All Members

AxesCollection Properties

Count | Gets the item count of the collection.
Item Supported by the .NET Compact Framework. | Gets the specified Axis from the collection.


AxesCollection Properties

Count Property (AxesCollection)

Item Property (AxesCollection)


Count Property (AxesCollection)

Count Property (AxesCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

AxesCollection Class


Item Property (AxesCollection)

Item Property (AxesCollection)

Gets the specified Axis from the collection by numeric index or by name.

Syntax

[VB]

Default Public ReadOnly Property Item(index as Integer) As Axis

Default Public ReadOnly Property Item(name as String) As Axis

[C#]

public Axis this[int index] { get; }

public Axis this[string name] { get; }

[Delphi]

property Item(index: Integer): Axis;

property Item(index: string): Axis;

See Also

AxesCollection Class


Axis Class

Syntax

C1.Win.C1Chart.Axis


Axis All Members

Axis Properties

Alignment Supported by the .NET Compact Framework. | Gets or sets the text alignment within the axis display.
AnnoFormat Supported by the .NET Compact Framework. | Gets or sets the annotation format.
AnnoFormatString Supported by the .NET Compact Framework. | Gets or sets the annotation format string used with manual formats.
AnnoMethod Supported by the .NET Compact Framework. | Gets or sets the annotation method used.
AnnotationRotation | Gets or sets the clockwise angle of rotation for the axis annotations.
AutoMajor Supported by the .NET Compact Framework. | Gets or sets whether major tick mark values are calculated automatically.
AutoMax Supported by the .NET Compact Framework. | Gets or sets whether the axis maximum value is calculated automatically.
AutoMin Supported by the .NET Compact Framework. | Gets or sets whether the axis minimum value is calculated automatically.
AutoMinor Supported by the .NET Compact Framework. | Gets or sets whether minor tick mark values are calculated automatically.
AutoOrigin | Gets or sets whether the axis origin is selected automatically.
Compass Supported by the .NET Compact Framework. | Gets or sets the general positioning of the axis.
Font Supported by the .NET Compact Framework. | Gets or sets the font object.
ForeColor Supported by the .NET Compact Framework. | Gets or sets the forecolor.
GridMajor Supported by the .NET Compact Framework. | Gets or sets the major grid lines object.
GridMinor Supported by the .NET Compact Framework. | Gets or sets the minor grid lines object.
IsLogarithmic Supported by the .NET Compact Framework. | Gets or sets whether the axis is scaled logarithmically.
LogarithmicBase | Gets or sets the base of the logarithmic scale used when IsLogarithmic property of the axis is set to true.
Max Supported by the .NET Compact Framework. | Gets or sets the maximum value of the axis.
Min Supported by the .NET Compact Framework. | Gets or sets the minimum value of the axis.
Name Supported by the .NET Compact Framework. | Gets the axis name.
OnTop Supported by the .NET Compact Framework. | Gets or sets whether axis and gridlines appear on top of the chart image.
Origin | Gets or sets the axis origin, the value on axis where the perpendicular axis is rendered.
Reversed Supported by the .NET Compact Framework. | Gets or sets whether the axis is normal or reversed (ascending or descending).
Rotation | Gets or sets the clockwise angle of rotation for the axis annotations.
ScrollBar | Gets the Axis scroll bar.
Text Supported by the .NET Compact Framework. | Gets or sets the textual caption of the axis.
Thickness Supported by the .NET Compact Framework. | Gets or sets the line thickness of the axis in pixels.
TickLabels Supported by the .NET Compact Framework. | Gets or sets the axis annotation position (not fully implemented).
TickMajor Supported by the .NET Compact Framework. | Gets or sets the type of major tick mark.
TickMinor Supported by the .NET Compact Framework. | Gets or sets the type of minor tick mark.
UnitMajor Supported by the .NET Compact Framework. | Gets or sets the units between major tick marks.
UnitMinor Supported by the .NET Compact Framework. | Gets or sets the units between minor tick marks.
ValueLabels Supported by the .NET Compact Framework. | Gets the ValueLabelsCollection.
Visible Supported by the .NET Compact Framework. | Gets or sets the axis visibility.

Axis Methods

GetMax | Gets the current Axis maximum value as an object.
GetMin | Gets the current Axis minimum value as an object.
ResetFont | Resets the inheritance state of the axis font.
ResetForeColor | Resets the inheritance state of the axis forecolor.
SetMinMax | Sets one or both the values of the Axis Min and Axis Max properties at the same time.
ShouldSerializeFont | Returns true if the Axis Font property is not in the default state.
ShouldSerializeForeColor | Returns true if the Axis ForeColor property is not in the default state.


Axis Properties

Alignment Property

AnnoFormat Property

AnnoFormatString Property

AnnoMethod Property

AnnotationRotation Property

AutoMajor Property

AutoMax Property

AutoMin Property

AutoMinor Property

AutoOrigin Property

Compass Property (Axis)

Font Property (Axis)

ForeColor Property (Axis)

GridMajor Property

GridMinor Property

IsLogarithmic Property

LogarithmicBase Property

Max Property

Min Property

Name Property (Axis)

OnTop Property

Origin Property

Reversed Property

Rotation Property (Axis)

ScrollBar Property (Axis)

Text Property (Axis)

Thickness Property (Axis)

TickLabels Property

TickMajor Property

TickMinor Property

UnitMajor Property

UnitMinor Property

ValueLabels Property

Visible Property (Axis)


Alignment Property

Alignment Property

Gets or sets the text alignment within the axis display.

Syntax

[VB]

Public Property Alignment As System.Drawing.StringAlignment

[C#]

public System.Drawing.StringAlignment Alignment { get; set; }

[Delphi]

property Alignment: StringAlignment;

See Also

Axis Class


AnnoFormat Property

AnnoFormat Property

Gets or sets the annotation format for the axis.

Syntax

[VB]

Public Property AnnoFormat As FormatEnum

[C#]

public FormatEnum AnnoFormat { get; set; }

[Delphi]

property AnnoFormat: FormatEnum;

Remarks

The AnnoFormat property allow specification of numeric and time formats using enumerated values.

For numeric values, each of the enumerations specify formatting similar to that specified by the .Net NumberFormatInfo class, including Currency, General, Exponential, Percentage, Roundtrip and Hexadecimal. NumericManual is used in conjunction with the AnnoFormatString property to specify a custom format string.

For date/time values, each of the enumerations specify formatting similar to that specified by the .Net DateTimeFormatInfo class, including combinations of long and short dates and times, and universional time representations. DateManual is used in conjunction with the AnnoFormatString property to specify a custom format string.

See Also

Axis Class


AnnoFormatString Property

AnnoFormatString Property

Gets or sets the annotation format string used with manual formats.

Syntax

[VB]

Public Property AnnoFormatString As String

[C#]

public String AnnoFormatString { get; set; }

[Delphi]

property AnnoFormatString: string;

Remarks

Only used when AnnoFormat property is NumericManual or DateManual.The AnnoFormatString property specifies a custom string for formatting the annotations along the axis.

When the AnnoFormat property is NumericManual, the AnnoFormatString property can be set to format strings as described by the .Net double.ToString(AnnoFormatString) method call. Custom numeric format strings are described in detail by the .Net documentation under “Custom Numeric Format Strings”. If the AnnoFormatString property is empty, then “g” or General is used.

When the AnnoFormat property is DateManual, the AnnoFormatString property can be set to format string as described by the .Net DateTime.ToString(AnnoFormatSTring) method call. Custom DateTime format strings are described in detail by the .Net documentation under “Date and Time Format Strings”. If the AnnoFormatString property is empty, then C1Chart selects a format string appropriate for the time span defined by the axis maximum and minimum values.

See Also

Axis Class


AnnoMethod Property

AnnoMethod Property

Gets or sets the annotation method used.

Syntax

[VB]

Public Property AnnoMethod As AnnotationMethodEnum

[C#]

public AnnotationMethodEnum AnnoMethod { get; set; }

[Delphi]

property AnnoMethod: AnnotationMethodEnum;

Remarks

AnnotationMethodEnum has two possible values, ValueLabels or Values. Values annotation can be used with any chart type in any instance. ValueLablels annotation cannot be used on the X-axis and the Y-axis for Pie charts.

See Also

Axis Class


AnnotationRotation Property

AnnotationRotation Property

Gets or sets the clockwise angle of rotation for the axis annotations.

Syntax

[VB]

Public Property AnnotationRotation As Integer

[C#]

public int AnnotationRotation { get; set; }

[Delphi]

property AnnotationRotation: Integer;

Remarks

The angle of rotation is always specified in degrees. Rotations between +/- 30 to +/- 60 degrees are ideal for X-axis annotation when a large number of labels are desired.

See Also

Axis Class


AutoMajor Property

AutoMajor Property

Gets or sets whether major tick mark values are calculated automatically.

Syntax

[VB]

Public Property AutoMajor As Boolean

[C#]

public bool AutoMajor { get; set; }

[Delphi]

property AutoMajor: Boolean;

Remarks

Setting the UnitMajor property automatically sets AutoMajor to false.

See Also

Axis Class


AutoMax Property

AutoMax Property

Gets or sets whether the axis maximum value is calculated automatically.

Syntax

[VB]

Public Property AutoMax As Boolean

[C#]

public bool AutoMax { get; set; }

[Delphi]

property AutoMax: Boolean;

Remarks

Setting the Max property automatically sets AutoMax to false.

See Also

Axis Class


AutoMin Property

AutoMin Property

Gets or sets whether the axis minimum value is calculated automatically.

Syntax

[VB]

Public Property AutoMin As Boolean

[C#]

public bool AutoMin { get; set; }

[Delphi]

property AutoMin: Boolean;

Remarks

Setting the Min property automatically sets AutoMin to false.

See Also

Axis Class


AutoMinor Property

AutoMinor Property

Gets or sets whether minor tick mark values are calculated automatically.

Syntax

[VB]

Public Property AutoMinor As Boolean

[C#]

public bool AutoMinor { get; set; }

[Delphi]

property AutoMinor: Boolean;

Remarks

Setting the UnitMinor property automatically sets AutoMinor to false.

See Also

Axis Class


AutoOrigin Property

AutoOrigin Property

Gets or sets whether the axis origin is selected automatically.

Syntax

[VB]

Public Property AutoOrigin As Boolean

[C#]

public bool AutoOrigin { get; set; }

[Delphi]

property AutoOrigin: Boolean;

See Also

Axis Class


Compass Property (Axis)

Compass Property (Axis)

Gets or sets the general positioning of the axis.

Syntax

[VB]

Public Property Compass As CompassEnum

[C#]

public CompassEnum Compass { get; set; }

[Delphi]

property Compass: CompassEnum;

Remarks

X may be set to North/South, Y and Y2 may be set to East/West.

See Also

Axis Class


Font Property (Axis)

Font Property (Axis)

Gets or sets the font object.

Syntax

[VB]

Public Property Font As Font

[C#]

public Font Font { get; set; }

[Delphi]

property Font: Font;

Remarks

Inherits from the ChartArea.

Associated with the Font Property, is the ResetFont() method. This method restores the inheritance state for the axis font. If a font is explicitly set for an axis, it no longer inherits from the ChartArea; so changing the ChartArea font no longer affects or changes the axis value. Calling ResetFont() restores the inherited state so changes to the ChartArea font will once again change the axis font.

See Also

Axis Class


ForeColor Property (Axis)

ForeColor Property (Axis)

Gets or sets the forecolor.

Syntax

[VB]

Public Property ForeColor As Color

[C#]

public Color ForeColor { get; set; }

[Delphi]

property ForeColor: Color;

Remarks

Inherits from the ChartArea. The ForeColor is used to set the color of the axis line and annotations.

Associated with the ForeColor Property, is the ResetForeColor() method. This method restores the inheritance state for the axis forecolor. If a forecolor is explicitly set for an axis, it no longer inherits from the ChartArea, so changing the ChartArea forecolor no longer affects or changes the axis value. Calling ResetForecolor () restores the inherited state so changes to the ChartArea font will once again change the axis forecolor.

See Also

Axis Class


GridMajor Property

GridMajor Property

Gets or sets the major grid lines object.

Syntax

[VB]

Public Property GridMajor As ChartGridStyle

[C#]

public ChartGridStyle GridMajor { get; set; }

[Delphi]

property GridMajor: ChartGridStyle;

Remarks

Major grids are placed coincident with major tick marks at UnitMajor intervals. The GridMajor property is used to set the grid line appearance.

See Also

Axis Class


GridMinor Property

GridMinor Property

Gets or sets the minor grid lines object.

Syntax

[VB]

Public Property GridMinor As ChartGridStyle

[C#]

public ChartGridStyle GridMinor { get; set; }

[Delphi]

property GridMinor: ChartGridStyle;

Remarks

Minor grids are placed coincident with minor tick marks at UnitMinor intervals. The GridMinor property is used to set the grid line appearance.

See Also

Axis Class


IsLogarithmic Property

IsLogarithmic Property

Gets or sets when the axis is scaled logarithmically.

Syntax

[VB]

Public Property IsLogarithmic As Boolean

[C#]

public bool IsLogarithmic { get; set; }

[Delphi]

property IsLogarithmic: Boolean;

Remarks

Logarithmic scaling does not make mathematical sense when values are less than or equal to zero. Therefore, negative and zero values are not plotted against axes that have the IsLogarithmic property set to true.

See Also

Axis Class


LogarithmicBase Property

LogarithmicBase Property

Gets or sets the base of the logarithmic scale used when IsLogarithmic property of the axis is set to true.

Syntax

[VB]

Public Property LogarithmicBase As Double

[C#]

public double LogarithmicBase { get; set; }

[Delphi]

property LogarithmicBase : Double;

Remarks

Set the LogarithmicBase property when applying a logarithmic scale to the axis by setting the IsLogarithmic property to true, and a base other than the default value of 10 is desired. If a natural log scale is desired, set the LogarithmicBase to a value less than or equal to 1. Please note that LogarithmicBase is of Double datatype and therefore can be set to non-integer values.

The LogarithmicBase property will accept any non-negative Double value, and has a default value of 10.0.

See Also

Axis Class


Max Property

Max Property

Gets or sets the maximum value of the axis.

Syntax

[VB]

Public Property Max As Double

[C#]

public double Max { get; set; }

[Delphi]

property Max: Double;

Remarks

Setting the Max property automatically changes AutoMax to false. If the Max value is set to a new value, which is less than the current value of the Min property, then the Min property is also reset to a new value, which maintains the same difference between the current Max and Min values.

See Also

Axis Class


Min Property

Min Property

Gets or sets the minimum value of the axis.

Syntax

[VB]

Public Property Min As Double

[C#]

public double Min { get; set; }

[Delphi]

property Min: Double;

Remarks

Setting the Min property automatically changes AutoMin to false. If the Min value is set to a new value, which is greater than the current value of the Max property, then the Max property is also reset to a new value, which maintains the same difference between the current Max and Min values.

See Also

Axis Class


Name Property (Axis)

Name Property (Axis)

Gets the axis name.

Syntax

[VB]

Public ReadOnly Property Name As String

[C#]

public String Name { get; }

[Delphi]

property Name: string;

See Also

Axis Class


OnTop Property

OnTop Property

Gets or sets whether axis and gridlines appear on top of the chart image.

Syntax

[VB]

Public Property OnTop As Boolean

[C#]

public bool OnTop { get; set; }

[Delphi]

property OnTop: Boolean;

See Also

Axis Class


Origin Property

Origin Property

Gets or sets the axis origin, the value on axis where the perpendicular axis is rendered.

Syntax

[VB]

Public Property Origin As Double

[C#]

public double Origin { get; set; }

[Delphi]

property Origin: Double;

See Also

Axis Class


Reversed Property

Reversed Property

Gets or sets whether the axis is normal or reversed (ascending or descending).

Syntax

[VB]

Public Property Reversed As Boolean

[C#]

public bool Reversed { get; set; }

[Delphi]

property Reversed: Boolean;

See Also

Axis Class


Rotation Property (Axis)

Rotation Property (Axis)

Gets or sets the rotational orientation of the textual caption of the axis.

Syntax

[VB]

Public Property Rotation As RotationEnum

[C#]

public RotationEnum Rotation { get; set; }

[Delphi]

property Rotation: RotationEnum;

See Also

Axis Class


ScrollBar Property (Axis)

ScrollBar Property (Axis)

Gets the axis scrollbar.

Syntax

[VB]

Public ReadOnly Property ScrollBar As AxisScrollBar

[C#]

public AxisScrollBar ScrollBar { get; }

[Delphi]

property ScrollBar: AxisScrollBar;

See Also

Axis Class


Text Property (Axis)

Text Property (Axis)

Gets or sets the textual caption of the axis.

Syntax

[VB]

Public Property Text As String

[C#]

public String Text { get; set; }

[Delphi]

property Text: string;

See Also

Axis Class


Thickness Property (Axis)

Thickness Property (Axis)

Gets or sets the line thickness of the axis in pixels.

Syntax

[VB]

Public Property Thickness As Integer

[C#]

public int Thickness { get; set; }

[Delphi]

property Thickness: Integer;

See Also

Axis Class


TickLabels Property

TickLabels Property

Gets or sets the position of Axis annotations.

Syntax

[VB]

Public Property TickLabels As TickLabelsEnum

[C#]

public TickLabelsEnum TickLabels { get; set; }

[Delphi]

property TickLabels: TickLabelsEnum;

Remarks

Axis annotations can be placed on the chart in several positions or not at all. See the TickLabelsEnum Enumeration for details. Note: not fully implemented.

See Also

Axis Class


TickMajor Property

TickMajor Property

Gets or sets the type of major tick mark.

Syntax

[VB]

Public Property TickMajor As TickMarksEnum

[C#]

public TickMarksEnum TickMajor { get; set; }

[Delphi]

property TickMajor: TickMarksEnum;

Remarks

Tick marks can be place on either side or both sides of the axis line. Note that if the TickMajor property is set to TickMarksEnum.None then major tick marks are not drawn.

See Also

Axis Class


TickMinor Property

TickMinor Property

Gets or sets the type of minor tick mark.

Syntax

[VB]

Public Property TickMinor As TickMarksEnum

[C#]

public TickMarksEnum TickMinor { get; set; }

[Delphi]

property TickMinor: TickMarksEnum;

Remarks

Tick marks can be placed on either side or both sides of the axis line. Note that if the TickMinor property is set to TickMarksEnum.None, then minor tick marks are not drawn.

See Also

Axis Class


UnitMajor Property

UnitMajor Property

Gets or sets the units between major tick marks.

Syntax

[VB]

Public Property UnitMajor As Double

[C#]

public double UnitMajor { get; set; }

[Delphi]

property UnitMajor: Double;

Remarks

Setting this value automatically changes AutoMajor to false.

See Also

Axis Class


UnitMinor Property

UnitMinor Property

Gets or sets the units between minor tick marks.

Syntax

[VB]

Public Property UnitMinor As Double

[C#]

public double UnitMinor { get; set; }

[Delphi]

property UnitMinor: Double;

Remarks

Setting this value automatically changes AutoMinor to false.

See Also

Axis Class


ValueLabels Property

ValueLabels Property

Gets the ValueLabelsCollection object.

Syntax

[VB]

Public ReadOnly Property ValueLabels As ValueLabelsCollection

[C#]

public ValueLabelsCollection ValueLabels { get; }

[Delphi]

property ValueLabels: ValueLabelsCollection;

See Also

Axis Class


Visible Property (Axis)

Visible Property (Axis)

Gets or sets the axis visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

Axis Class


Axis Methods

GetMax Method

GetMin Method

ResetFont Method

ResetForeColor Method

SetMinMax Method

ShouldSerializeFont Method (Axis)

ShouldSerializeForeColor Method (Axis)


GetMax Method

GetMax Method

Gets the current value of the Axis Max property as an object. The type of the object is dependent upon the method overload used and/or the datatype of the first series coordinate plotted.

Syntax

[VB]

Public Function GetMax() As Object

Public Function GetMax(t As Type) As Object

[C#]

public object GetMax();

public object GetMax(Type t);

[Delphi]

procedure GetMax : Object;

procedure GetMax(t: System.Type) : Object;

Remarks

This method retrieves current value of the Axis maximum. If the first overload retrieves the value as an object of the same type as the appropriate coordinate data for the first series. The second overload retrieves the value as an object of the specified datatype.

See Also

Axis Class


GetMin Method

GetMin Method

Gets the current value of the Axis Min property as an object. The type of the object is dependent upon the method overload used and/or the datatype of the first series coordinate plotted.

Syntax

[VB]

Public Function GetMin() As Object

Public Function GetMin(t As Type) As Object

[C#]

public object GetMin();

public object GetMin(Type t);

[Delphi]

procedure GetMin : Object;

procedure GetMin(t: System.Type) : Object;

Remarks

This method retrieves current value of the Axis minimum. If the first overload retrieves the value as an object of the same type as the appropriate coordinate data for the first series. The second overload retrieves the value as an object of the specified datatype.

See Also

Axis Class


ResetFont Method

ResetFont Method

Resets the inheritance state of the axis font.

Syntax

[VB]

Public Sub ResetFont()

[C#]

public void ResetFont();

[Delphi]

procedure ResetFont;

Remarks

This method resets the inheritance state of the axis font. By default, the font used for the axis is that specified by the ChartArea style. In the inherited state, any changes to the ChartArea style are reflected in the axis font. However, if the font for the axis is explicitly changed, changing the ChartArea style font no longer affects the axis style. Calling ResetFont() restores the inherited state, so once again the font used by the axis will be the same as that specified by the ChartArea style.

See Also

Axis Class

C1Chart Class


ResetForeColor Method

ResetForeColor Method

Resets the inheritance state of the axis forecolor.

Syntax

[VB]

Public Sub ResetForeColor()

[C#]

public void ResetForeColor();

[Delphi]

procedure ResetForeColor;

Remarks

This method resets the inheritance state of the axis forecolor. By default, the forecolor used for the axis is that specified by the ChartArea style. In the inherited state, any changes to the ChartArea style are reflected in the axis forecolor. However, if the forecolor for the axis is explicitly changed, changing the ChartArea style forecolor no longer affects the axis style. Calling ResetForecolor() restores the inherited state, so once again the forecolor used by the axis will be the same as that specified by the ChartArea style.

See Also

Axis Class

C1Chart Class


SetMinMax Method

SetMinMax Method

Sets one or both the values of the Axis Min and Axis Max properties at the same time. If the specified Min value is less than the specified Max value, the values are swapped.

Syntax

[VB]

Public Sub SetMinMax(newMin As Object, newMax As Object)

[C#]

public void SetMinMax(object newMin, object newMax);

[Delphi]

procedure SetMinMax(newMin: Object; newMax: Object);

Remarks

This method can be used to set one or both Min and Max values. Since the parameters are of type object, the value specified can be of the most convenient datatype, and the chart will perform the necessary conversion. If setting only one of the values is desired, then set the other value to Nothing (VB), null (C#) or nil (Delphi).

See Also

Axis Class


ShouldSerializeFont Method (Axis)

ShouldSerializeFont Method (Axis)

Returns true if the Axis Font property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeFont() As Boolean

[C#]

public bool ShouldSerializeFont ( )

[Delphi]

function ShouldSerializeFont: Boolean;

Remarks

The default state is to inherit the font from the ChartArea object.

See Also

Axis Class


ShouldSerializeForeColor Method (Axis)

ShouldSerializeForeColor Method (Axis)

Returns true if the Axis ForeColor property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeForeColor() As Boolean

[C#]

public bool ShouldSerializeForeColor ( )

[Delphi]

function ShouldSerializeForeColor: Boolean;

Remarks

The default state is to inherit the ForeColor from the ChartArea object.

See Also

Axis Class


AxisScrollBar Class

Syntax

C1.Win.C1Chart.AxisScrollBar


AxisScrollBar All Members

AxisScrollBar Properties

Alignment | Gets or sets the alignment of the scroll bar relative to the plot area.
Appearance | Gets or sets the appearance of the scroll bar.
Buttons | Gets or sets the presence and function of the scroll bar buttons.
Max | Gets or sets the maximum value of the scroll bar position.
Min | Gets or sets the minimum value of the scroll bar position.
Scale | Gets or sets the scale of the scroll bar.
ScaleMenu | Gets or sets the custom context menu that will be shown when the scale button is pressed.
ScaleMenuItems | Gets the collection of AxisScrollBar.ScaleMenuItem items.
ScrollKeys | Gets or sets the keys to which the scroll bar will respond.
Size | Gets or sets the size of the scroll bar.
Step | Gets or sets the step of the scroll bar position change.
Value | Gets or sets the value that represents the current relative position of the thumb on the scroll bar.
Visible | Gets or sets the scroll bar visibility.

Axis Methods

Scroll

Performs axis scrolling as specified by the method argument.


AxisScrollBar Properties

Alignment Property (AxisScrollBar)

Appearance Property (AxisScrollBar)

Buttons Property (AxisScrollBar)

Max Property (AxisScrollBar)

Min Property (AxisScrollBar)

Scale Property (AxisScrollBar)

ScaleMenu Property (AxisScrollBar)

ScaleMenuItems Property (AxisScrollBar)

ScrollKeys Property (AxisScrollBar)

Size Property (AxisScrollBar)

Step Property (AxisScrollBar)

Value Property (AxisScrollBar)

Visible Property (AxisScrollBar)


Alignment Property (AxisScrollBar)

Alignment Property (AxisScrollBar)

Gets or sets the alignment of the scroll bar relative to the plot area.

Syntax

[VB]

Public Property Alignment As System.Drawing.StringAlignment

[C#]

public System.Drawing.StringAlignment Alignment { get; set; }

[Delphi]

property Alignment: StringAlignment;

See Also

AxisScrollBar Class


Appearance Property (AxisScrollBar)

Appearance Property (AxisScrollBar)

Gets or sets the appearance of the scroll bar.

Syntax

[VB]

Public Property Appearance As ScrollBarAppearanceEnum

[C#]

public ScrollBarAppearanceEnum Appearance { get; set; }

[Delphi]

property Appearance: ScrollBarAppearanceEnum;

See Also

AxisScrollBar Class


Buttons Property (AxisScrollBar)

Buttons Property (AxisScrollBar)

Gets or sets the presence and function of the scroll bar buttons.

Syntax

[VB]

Public Property Buttons As AxisScrollBarButtonFlags

[C#]

public AxisScrollBarButtonFlags Buttons { get; set; }

[Delphi]

property Buttons: AxisScrollBarButtonFlags;

See Also

AxisScrollBar Class


Max Property (AxisScrollBar)

Max Property (AxisScrollBar)

Gets or sets the maximum value of the axis scroll bar position.

Syntax

[VB]

Public Property Max As Double

[C#]

public double Max { get; set; }

[Delphi]

property Max: Double;

Remarks

When the scroll bar is visible, the axis maximum cannot be less than the Max property of the axis scroll bar.

See Also

AxisScrollBar Class


Min Property (AxisScrollBar)

Min Property (AxisScrollBar)

Gets or sets the minimum value of the axis scroll bar position.

Syntax

[VB]

Public Property Min As Double

[C#]

public double Min { get; set; }

[Delphi]

property Min: Double;

Remarks

When the scroll bar is visible, the axis minimum cannot be less than the Min property of the axis scroll bar.

See Also

AxisScrollBar Class


Scale Property (AxisScrollBar)

Scale Property (AxisScrollBar)

Gets or sets the scale of the axis scroll bar.

Syntax

[VB]

Public Property Scale As Double

[C#]

public double Scale { get; set; }

[Delphi]

property Scale: Double;

Remarks

The scale must be in the range from 0 to 1. If Scale is 1, then the entire range from the axis minumum to the axis maximum in shown..

See Also

AxisScrollBar Class


ScaleMenu Property (AxisScrollBar)

ScaleMenu Property (AxisScrollBar)

Gets or sets the custom context menu that will be shown when the scale button is pressed.

Syntax

[VB]

Public Property ScaleMenu As ContextMenu

[C#]

public ContextMenu ScaleMenu { get; set; }

[Delphi]

property ScaleMenu: ContextMenu;

Remarks

If scale menu is Nothing (VB) or null (C#, Delphi), the standard menu which consists of AxisScrollBar.ScaleMenuItem elements is shown.

See Also

AxisScrollBar Class


ScaleMenuItems Property (AxisScrollBar)

ScaleMenuItems Property (AxisScrollBar)

Gets the collection of ScaleMenu items.

Syntax

[VB]

Public ReadOnly Property ScaleMenuItems As AxisScrollBar.ScaleMenuItemsCollection

[C#]

public AxisScrollBar.ScaleMenuItemsCollection ScaleMenuItems { get; }

[Delphi]

property ScaleMenuItems: AxisScrollBar.ScaleMenuItemsCollection;

See Also

AxisScrollBar Class


ScrollKeys Property (AxisScrollBar)

ScrollKeys Property (AxisScrollBar)

Gets or sets the keys to which the scroll bar will respond.

Syntax

[VB]

Public Property ScrollKeys As ScrollKeyFlags

[C#]

public ScrollKeyFlags ScrollKeys { get; set; }

[Delphi]

property ScrollKeys: ScrollKeyFlags;

See Also

AxisScrollBar Class


Size Property (AxisScrollBar)

Size Property (AxisScrollBar)

Gets or sets the size of the axis scroll bar.

Syntax

[VB]

Public Property Size As Integer

[C#]

public int Size { get; set; }

[Delphi]

property Size: Integer;

Remarks

The Size represents the height for the horizontal scroll bar and the width for the vertical scroll bars.

See Also

AxisScrollBar Class


Step Property (AxisScrollBar)

Step Property (AxisScrollBar)

Gets or sets the step of the scroll bar position change.

Syntax

[VB]

Public Property Step As Double

[C#]

public double Step { get; set; }

[Delphi]

property Step: Double;

See Also

AxisScrollBar Class


Value Property (AxisScrollBar)

Value Property (AxisScrollBar)

Gets or sets the value that represents the current relative position of the thumb on the scroll bar.

Syntax

[VB]

Public Property Value As Double

[C#]

public double Value { get; set; }

[Delphi]

property Value: Double;

Remarks

The value must be in the range from 0 to 1. If the value is zero, the minimum value is visible. If the value is 1, then the maximum value is visible.

See Also

AxisScrollBar Class


Visible Property (AxisScrollBar)

Visible Property (AxisScrollBar)

Gets or sets the scroll bar visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

AxisScrollBar Class


AxisScrollBar Methods

Scroll Method (AxisScrollBar)


Scroll Method (AxisScrollBar)

Scroll Method (AxisScrollBar)

Performs axis scrolling as specified by the method argument.

Syntax

[VB]

Public Sub Scroll (seType As System.Windows.Forms.ScrollEventType)

[C#]

public void Scroll(seType System.Windows.Forms.ScrollEventType);

[Delphi]

function Scroll(seType: System.Windows.Forms.ScrollEventType);

See Also

AxisScrollBar Class


AxisScrollBar.ScaleMenuItem Class

Syntax

C1.Win.C1Chart.AxisScrollBar.ScaleMenuItem


AxisScrollBar.ScaleMenuItem All Members

AxisScrollBar.ScaleMenuItem Properties

Scale | Gets or sets the scroll bar scale that corresponds to the menu.
Text | Gets or sets the text of the menu item.
Value | Gets or sets the scroll bar value that corresponds to the menu item.


AxisScrollBar.ScaleMenuItem Properties

Scale Property (AxisScrollBar.ScaleMenuItem)

Text Property (AxisScrollBar.ScaleMenuItem)

Value Property (AxisScrollBar.ScaleMenuItem)


Scale Property (AxisScrollBar.ScaleMenuItem)

Scale Property (AxisScrollBar.ScaleMenuItem)

Gets or sets the scroll bar scale that corresponds to the menu item.

Syntax

[VB]

Public Property Scale As Double

[C#]

public double Scale { get; set; }

[Delphi]

property Scale: Double;

See Also

AxisScrollBar.ScaleMenuItem Class


Text Property (AxisScrollBar.ScaleMenuItem)

Text Property (AxisScrollBar.ScaleMenuItem)

Gets or sets the text of the menu item.

Syntax

[VB]

Public Property Text As String

[C#]

public string Text { get; set; }

[Delphi]

property Text: String;

See Also

AxisScrollBar.ScaleMenuItem Class


Value Property (AxisScrollBar.ScaleMenuItem)

Value Property (AxisScrollBar.ScaleMenuItem)

Gets or sets the scroll bar value that corresponds to the menu item.

Syntax

[VB]

Public Property Value As Double

[C#]

public double Value { get; set; }

[Delphi]

property Value: Double;

See Also

AxisScrollBar.ScaleMenuItem Class


AxisScrollBar.ScaleMenuItemCollection Class

Syntax

C1.Win.C1Chart.AxisScrollBar.ScaleMenuItemCollection


AxisScrollBar.ScaleMenuItemCollection All Members

AxisScrollBar.ScaleMenuItemCollection Properties

Count | Gets the item count of the collection.
Item | Gets the specified AxisScrollBar.ScaleMenuItem from the collection by numeric index.

AxisScrollBar.ScaleMenuItemCollection Methods

Add | Adds the specified AxisScrollBar.ScaleMenuItem to the collection.
Insert | Inserts the specified AxisScrollBar.ScaleMenuItem at the specified index.
Remove | Removes the specified AxisScrollBar.ScaleMenuItem from the collection.


AxisScrollBar.ScaleMenuItemCollection Properties

Count Property (AxisScrollBar.ScaleMenuItemCollection)

Item Property (AxisScrollBar.ScaleMenuItemCollection)


Count Property (AxisScrollBar.ScaleMenuItemCollection)

Count Property (AxisScrollBar.ScaleMenuItemCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

AxisScrollBar.ScaleMenuItemCollection Class


Item Property (AxisScrollBar.ScaleMenuItemCollection)

Item Property (AxisScrollBar.ScaleMenuItemCollection)

Gets the specified AxisScrollBar.ScaleMenuItem from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As AxisScrollBar.ScaleMenuItem

[C#]

public AxisScrollBar.ScaleMenuItem this[int index]{ get; }

[Delphi]

property Item(index: Integer): AxisScrollBar.ScaleMenuItem;

See Also

AxisScrollBar.ScaleMenuItemCollection Class


AxisScrollBar.ScaleMenuItemCollection Methods

Add Method (AxisScrollBar.ScaleMenuItemCollection)

Insert Method (AxisScrollBar.ScaleMenuItemCollection)

Remove Method (AxisScrollBar.ScaleMenuItemCollection)


Add Method (AxisScrollBar.ScaleMenuItemCollection)

Add Method (AxisScrollBar.ScaleMenuItemCollection)

Adds the specified AxisScrollBar.ScaleMenuItem to the collection.

Syntax

[VB]

Public Function Add (smi As AxisScrollBar.ScaleMenuItem) As Integer

Public Function Add (scale As Double, text As String) As Integer

[C#]

public int Add(AxisScrollBar.ScaleMenuItem smi);

public int Add(double scale, string text);

[Delphi]

function Add(smi: AxisScrollBar.ScaleMenuItem): Integer;

function Add(scale: Double; text: String): Integer;

Return Value

An integer indicating the index of the collection to which the AxisScrollBar.ScaleMenuItem was added.

See Also

AxisScrollBar.ScaleMenuItemCollection Class


Insert Method (AxisScrollBar.ScaleMenuItemCollection)

Insert Method (AxisScrollBar.ScaleMenuItemCollection)

Inserts the specified AxisScrollBar.ScaleMenuItem at the specified index.

Syntax

[VB]

Public Sub Insert (index As Integer, smi As AxisScrollBar.ScaleMenuItem)

[C#]

public void Insert (int index, AxisScrollBar.ScaleMenuItem smi);

[Delphi]

function Insert(index: Integer; smi: AxisScrollBar.ScaleMenuItem);

See Also

AxisScrollBar.ScaleMenuItemCollection Class


Remove Method (AxisScrollBar.ScaleMenuItemCollection)

Remove Method (AxisScrollBar.ScaleMenuItemCollection)

Removes the specified AxisScrollBar.ScaleMenuItem from the collection.

Syntax

[VB]

Public Sub Remove (smi As AxisScrollBar.ScaleMenuItem)

[C#]

public void Remove (AxisScrollBar.ScaleMenuItem smi);

[Delphi]

procedure Remove(smi: AxisScrollBar.ScaleMenuItem);

See Also

AxisScrollBar.ScaleMenuItemCollection Class


Bar Class

Syntax

C1.Win.C1Chart.Bar

Remarks

The Bar class and its properties are only used for bar charts. It is returned by the Bar property of a ChartGroup.


Bar All Members

Bar Properties

ClusterOverlap Supported by the .NET Compact Framework. | Gets or sets the percentage that bar elements in the same cluster overlap.
ClusterWidth Supported by the .NET Compact Framework. | Gets or sets the percentage that each bar cluster occupies.


Bar Properties

ClusterOverlap Property

ClusterWidth Property


ClusterOverlap Property

ClusterOverlap Property

Gets or sets the percentage that bar elements in the same cluster overlap.

Syntax

[VB]

Public Property ClusterOverlap As Integer

[C#]

public int ClusterOverlap { get; set; }

[Delphi]

property ClusterOverlap: Integer;

See Also

Bar Class


ClusterWidth Property

ClusterWidth Property

Gets or sets the percentage that each bar cluster occupies.

Syntax

[VB]

Public Property ClusterWidth As Integer

[C#]

public int ClusterWidth { get; set; }

[Delphi]

property ClusterWidth: Integer;

Remarks

The percentage applies to the closest clusters.

See Also

Bar Class


Border Class

Syntax

C1.Win.C1Chart.Border

Remarks

The Border class is used to describe the border appearance of various elements of the chart, including the chart itself, the ChartArea, the Legend, the Header, the Footer and Labels.


Border All Members

Border Properties

BorderStyle Supported by the .NET Compact Framework. | Gets or sets the border style.
Color Supported by the .NET Compact Framework. | Gets or sets the border color.
Rounding | Gets the Rounding object that controls the rounding of corners.
Thickness Supported by the .NET Compact Framework. | Gets or sets the border thickness.

Border Methods

ShouldSerializeColor

Returns true if the Border Color property is not in the default state.


Border Properties

BorderStyle Property

Color Property (Border)

Rounding Property

Thickness Property (Border)


BorderStyle Property

BorderStyle Property

Gets or sets the border style.

Syntax

[VB]

Public Property BorderStyle As BorderStyleEnum

[C#]

public BorderStyleEnum BorderStyle { get; set; }

[Delphi]

property BorderStyle: BorderStyleEnum;

See Also

Border Class


Color Property (Border)

Color Property (Border)

Gets or sets the border color.

Syntax

[VB]

Public Property Color As Color

[C#]

public Color Color { get; set; }

[Delphi]

property Color: Color;

See Also

Border Class


Rounding Property

Rounding Property

Gets the Rounding object that controls the rounding of corners.

Syntax

[VB]

Public ReadOnly Property Rounding As Rounding

[C#]

public Rounding Rounding { get; }

[Delphi]

property Rounding: Rounding;

See Also

Border Class


Thickness Property (Border)

Thickness Property (Border)

Gets or sets the border thickness.

Syntax

[VB]

Public Property Thickness As Integer

[C#]

public int Thickness { get; set; }

[Delphi]

property Thickness: Integer;

Remarks

Some BorderStyles have a fixed thickness. In these cases the Thickness property has no effect.

See Also

Border Class


Border Methods

ShouldSerializeColor Method (Border)


ShouldSerializeColor Method (Border)

ShouldSerializeColor Method (Border)

Returns true if the Border Color property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeColor() As Boolean

[C#]

public bool ShouldSerializeColor ( )

[Delphi]

function ShouldSerializeColor: Boolean;

Remarks

The default state is to use Color.Transparent and use the BackColor of the parent Style as the basis for the border color.

See Also

Border Class


Bubble Class

Syntax

C1.Win.C1Chart.Bubble

Remarks

The Bubble class and its properties are only used for bubble charts. It is returned by the Bubble property of a ChartGroup.


Bubble All Members

Bubble Properties

EncodingMethod Supported by the .NET Compact Framework. | Gets or sets the method used for calculating bubble size in a bubble chart.
MaximumSize Supported by the .NET Compact Framework. | Gets or sets the maximum bubble size in a bubble chart.
MinimumSize Supported by the .NET Compact Framework. | Gets or sets the minimum bubble size in a bubble chart.


Bubble Properties

EncodingMethod Property

MaximumSize Property

MinimumSize Property


EncodingMethod Property

EncodingMethod Property

Gets or sets the method used for calculating bubble size in a bubble chart.

Syntax

[VB]

Public Property EncodingMethod As BubbleMethod

[C#]

public BubbleMethod EncodingMethod { get; set; }

[Delphi]

property EncodingMethod: BubbleMethod;

Remarks

The maximum and minimum bubble sizes represent the percentage of the diameter or area of the plot area, depending upon the value of the EncodingMethod property.

Note: At this time the Bubble Method is always based on the diameter.

See Also

Bubble Class


MaximumSize Property

MaximumSize Property

Gets or sets the maximum bubble size in a bubble chart.

Syntax

[VB]

Public Property MaximumSize As Single

[C#]

public float MaximumSize { get; set; }

[Delphi]

property MaximumSize: single;

Remarks

The maximum bubble size represents the percentage of the diameter (or area) of the plot area.

See Also

Bubble Class


MinimumSize Property

MinimumSize Property

Gets or sets the minimum bubble size in a bubble chart.

Syntax

[VB]

Public Property MinimumSize As Single

[C#]

public float MinimumSize { get; set; }

[Delphi]

property MinimumSize: single;

Remarks

The minimum bubble size represents the percentage of the diameter (or area) of the plot area.

See Also

Bubble Class


C1Chart Class

Syntax

C1.Win.C1Chart.C1Chart

C1Chart All Members

C1Chart Properties

C1Chart Methods

C1Chart Events

C1Chart Delegates


C1Chart All Members

C1Chart Properties

AssemblyFileVersionString Supported by the .NET Compact Framework. | Gets the control’s assembly file version as a string.
AssemblyVersionString Supported by the .NET Compact Framework. | Gets the control’s assembly version as a string.
BackColor Supported by the .NET Compact Framework. | The background color used to display text and graphics in the control.
BackgroundImage | The background image used for the control.
ChartArea Supported by the .NET Compact Framework. | Gets the control’s Chart Area Area object.
ChartGroups Supported by the .NET Compact Framework. | Gets the control ChartGroups object.
ChartLabels Supported by the .NET Compact Framework. | Gets the control ChartLabels object.
DataSource | Gets or sets the data source object that is bound to the chart.
Font Supported by the .NET Compact Framework. | The font used to display text in the control.
Footer Supported by the .NET Compact Framework. | Gets the control footer object.
ForeColor Supported by the .NET Compact Framework. | The foreground color used to display text and graphics in the control.
Header Supported by the .NET Compact Framework. | Gets the control header object.
Interaction | Gets the control interaction object.
Legend Supported by the .NET Compact Framework. | Gets the control ChartGroups object.
PrintDialogUsage | Determines whether the print dialog is popped up when using the PrintChart method.
Repaint Supported by the .NET Compact Framework. | Determines whether the chart is repainted when its properties change.
Style Supported by the .NET Compact Framework. | Gets or sets the chart style.
Tooltip | Gets the ChartTooltip object.
UseAntiAlias | Gets or sets a value indicating whether to use anti-aliasing when displaying the chart.
UseDoubleBuffer | Gets or sets a value indicating whether to use double buffering methods when repainting the chart.
Visible | Determines whether the control is visible or hidden.

C1Chart Methods

ChartRegionFromCoord Supported by the .NET Compact Framework. | Return the enumerated value indicating the topmost displayed region at the specified.
Dispose Supported by the .NET Compact Framework. | Readies the chart object for garbage collection.
Draw Supported by the .NET Compact Framework. | Draws the chart on the specified drawing surface.
GenerateHistogramData | Generates histogram data from an array of raw data and the specified interval boundaries.
GetImage Supported by the .NET Compact Framework. | Obtains an image of the current chart display.
GetMetaFile | Extracts C1Chart as a metafile.
LoadChartFromFile Supported by the .NET Compact Framework. | Reads the all of the new contents of the control from the specified file, including data.
LoadChartFromString Supported by the .NET Compact Framework. | Load chart description from the string.
PageSetup | Raises the PageSetup dialog to manage the page settings.
PrintChart | Prints the control using default scaling within the margins of the printer page.
PrintSetup | Raises the PrintSetup dialog to manage the printer settings.
Reset Supported by the .NET Compact Framework. | Clears the chart of all data and settings.
SaveChartToFile Supported by the .NET Compact Framework. | Saves the all of the contents of the control to the specified file, including data.
SaveChartToString Supported by the .NET Compact Framework. | Save chart description to the string.
SaveImage | Saves the chart image to the clipboard, file, Byte array or Stream, in various formats and sizes.
ShowProperties | Raises the properties dialog at runtime using specified dialog version.
ShowWizard | Raises the wizard dialog at runtime using specified dialog version.

C1Chart Events

DataSourceChanged | Fires when the DataSource property is changed.
DrawDataSeries | Fires when the data series is about to be drawn. This event allows changes to the brush that will be used for data series plotting, including the addition of hatching, gradients and textures.
DrawLegendEntry | Fires when the chart legend is about to be drawn.
HighlightChanged | Fires when highlighted data element has been changed.
LayoutLabels | Fires before rendering labels and allows repositioning of labels relative to positions of other chart elements or using data mapping methods.
PaintPlotArea | Fires when the chart plot area is about to be drawn.
Transform | Fires when interactive action is about to occur. This event permits additional control over the parameters of user interactions. It possible to change axes limits or cancel transformation.
ShowToolTip | Fires before a chart tooltip is shown. This event allows the user to specify custom tooltip text.

C1Chart Delegates

DrawDataSeriesEventHandler | Represents the method that will handle the DrawDataSeries event of a C1Chart class.
DrawLegendEntryEventHandler | Represents the method that will handle the DrawLegendEntry event of a C1Chart class.
TransformEventHandler | Represents the method that will handle the Transform event of a C1Chart class.


C1Chart Properties

AssemblyFileVersionString Property

AssemblyVersionString Property

BackColor Property (C1Chart)

BackgroundImage Property (C1Chart)

ChartArea Property

ChartGroups Property (C1Chart)

ChartLabels Property (C1Chart)

DataSource Property

Font Property (C1Chart)

Footer Property

ForeColor Property (C1Chart)

Header Property

Interaction Property

Legend Property (C1Chart)

PrintDialogUsage Property

Repaint Property

Style Property (C1Chart)

ToolTip Property (C1Chart)

UseAntiAlias Property

UseDoubleBuffer Property

Visible Property (C1Chart)


AssemblyFileVersionString Property

AssemblyFileVersionString Property

Gets the control’s AssemblyFileVersion as a string. The AssemblyFileVersion is also viewable from the properties dialog of the control assembly dll.

Syntax

[VB]

Public ReadOnly Property AssemblyFileVersionString As String

[C#]

public String AssemblyFileVersionString { get; }

[Delphi]

property AssemblyFileVersionString: string;

Remarks

The AssemblyFileVersion is different from the AssemblyVersion. The AssemblyFileVersion is viewable from the properties dialog of the control assembly dll. The AssemblyVersion is also listed in the properties dialog, but only in the “other version information” section. When viewing the Global Assembly Cache (GAC) in Windows Explorer, the AssemblyVersion is shown as a standard column.

The AssemblyFileVersion will always change with each separate release of the Chart control, including internal changes. The AssemblyVersion will only change when the object model has been changed.

See Also

C1Chart Class


AssemblyVersionString Property

AssemblyVersionString Property

Gets the control’s AssemblyVersion as a string. The AssemblyVersion is also viewable from the properties dialog of the control assembly dll, but only in the “other version information” section.

Syntax

[VB]

Public ReadOnly Property AssemblyVersionString As String

[C#]

public String AssemblyVersionString { get; }

[Delphi]

property AssemblyVersionString: string;

Remarks

The AssemblyFileVersion is different from the AssemblyVersion. The AssemblyFileVersion is viewable from the properties dialog of the control assembly dll. The AssemblyVersion is also listed in the properties dialog, but only in the “other version information” section. When viewing the Global Assembly Cache (GAC) in Windows Explorer, the AssemblyVersion is shown as a standard column.

The AssemblyFileVersion will always change with each separate release of the Chart control, including internal changes. The AssemblyVersion will only change when the object model has been changed.

See Also

C1Chart Class


BackColor Property (C1Chart)

BackColor Property (C1Chart)

The background color used to display text and graphics in the control.

Syntax

[VB]

Public Property BackColor As Color

[C#]

public Color BackColor { get; set; }

[Delphi]

property Backcolor: Color;

Remarks

Changing the BackColor also changes the BackColor of the chart’s style object, and visa versa.

See Also

C1Chart Class


BackgroundImage Property (C1Chart)

BackgroundImage Property (C1Chart)

The background image used for the control.

Syntax

[VB]

Public Property BackgroundImage As Image

[C#]

public Image BackgroundImage { get; set; }

[Delphi]

property BackgroundImage: Image;

See Also

C1Chart Class


ChartArea Property

ChartArea Property

Gets the control ChartArea object.

Syntax

[VB]

Public ReadOnly Property ChartArea As Area

[C#]

public Area ChartArea { get; }

[Delphi]

property ChartArea: Area;

Remarks

The ChartArea is that region of the chart that contains axes and charted data. Its Style inherits directly from the parent C1Chart.

See Also

C1Chart Class


ChartGroups Property (C1Chart)

ChartGroups Property (C1Chart)

Gets the control ChartGroups object.

Syntax

[VB]

Public ReadOnly Property ChartGroups As ChartGroups

[C#]

public ChartGroups ChartGroups { get; }

[Delphi]

property ChartGroups: ChartGroups;

Remarks

Each ChartGroup contains information related to data values and related appearance.

See Also

C1Chart Class


ChartLabels Property (C1Chart)

ChartLabels Property (C1Chart)

Gets the control ChartLabels object.

Syntax

[VB]

Public ReadOnly Property ChartLabels As ChartLabels

[C#]

public ChartLabels ChartLabels { get; }

[Delphi]

property ChartLabels: ChartLabels;

See Also

C1Chart Class


DataSource Property

DataSource Property

Gets or sets the data source object that is bound to the chart.

Syntax

[VB]

Public Property DataSource as Object

[C#]

public Object DataSource { get; set; }

[Delphi]

property DataSource: Object;

See Also

C1Chart Class


Font Property (C1Chart)

Font Property (C1Chart)

The font used to display text in the control.

Syntax

[VB]

Public Property Font As Font

[C#]

public Font Font { get; set; }

[Delphi]

property Font: Font;

See Also

C1Chart Class


Footer Property

Footer Property

Gets the control footer object.

Syntax

[VB]

Public ReadOnly Property Footer As Title

[C#]

public Title Footer { get; }

[Delphi]

property Footer: Title;

Remarks

The Title class for the 2D (C1.Win.C1Chart.Title) and 3D (C1.Win.C1Chart3D.Title) chart contain similar properties.

See Also

C1Chart Class


ForeColor Property (C1Chart)

ForeColor Property (C1Chart)

The foreground color used to display text and graphics in the control.

Syntax

[VB]

Public Property ForeColor As Color

[C#]

public Color ForeColor { get; set; }

[Delphi]

property ForeColor: Color;

See Also

C1Chart Class


Header Property

Header Property

Gets the control header object.

Syntax

[VB]

Public ReadOnly Property Header As Title

[C#]

public Title Header { get; }

[Delphi]

property Header: Title;

Remarks

The Title class for the 2D (C1.Win.C1Chart.Title) and 3D (C1.Win.C1Chart3D.Title) chart contain similar properties.

See Also

C1Chart Class


Interaction Property

Interaction Property

Gets the control interaction object.

Syntax

[VB]

Public Readonly Property Interaction As Interaction

[C#]

public Interaction Interaction { get; }

[Delphi]

property Interaction: Interaction;

Remark

The Interaction object controls the automated interactive features of the chart, including mouse driven rotation, scaling, translating and zooming.

See Also

C1Chart Class


Legend Property (C1Chart)

Legend Property (C1Chart)

Gets the control ChartGroups object.

Syntax

[VB]

Public ReadOnly Property Legend As Legend

[C#]

public Legend Legend { get; }

[Delphi]

property Legend: Legend;

See Also

C1Chart Class


PrintDialogUsage Property

PrintDialogUsage Property

Gets or sets a value indicating whether the print dialog pops up when the PrintChart method is called.

Syntax

[VB]

Public Property PrintDialogUsage As Boolean

[C#]

public bool PrintDialogUsage { get; set; }

[Delphi]

property PrintDialogUsage: Boolean;

See Also

C1Chart Class


Repaint Property

Repaint Property

Gets or sets a value indicating whether the chart is automatically repainted when its properties are modified.

Syntax

[VB]

Public Property Repaint As Boolean

[C#]

public bool Repaint { get; set; }

[Delphi]

property Repaint: Boolean;

Remarks

When the Repaint property is false, chart repaints are minimized as chart properties are changed. This is useful when multiple chart properties will be changed in an event, and it is desired to reduce the flicker associated with repeated repaints.

Note that it is very important to set Repaint to true when property changes have been completed. Failure to do so can result in a chart that never repaints.

See Also

C1Chart Class


Style Property (C1Chart)

Style Property (C1Chart)

Gets or sets the chart style.

Syntax

[VB]

Public ReadOnly Property Style As Style

[C#]

public Style Style { get; }

[Delphi]

property Style: Style;

See Also

C1Chart Class


ToolTip Property (C1Chart)

ToolTip Property (C1Chart)

Gets the ChartTooltip object.

Syntax

[VB]

Public ReadOnly Property ToolTip As ChartToolTip

[C#]

public ChartToolTip ToolTip { get; }

[Delphi]

property ToolTip: ChartToolTip;

Remarks

The tooltip text can be set using the ToolTipText property of the chart elements(Header, Footer, Label, DataSeries) or in the ShowToolTip event handler.

See Also

C1Chart Class


UseAntiAlias Property

UseAntiAlias Property

Gets or sets a value indicating whether to use anti-aliasing when displaying the chart.

Syntax

[VB]

Public Property UseAntiAlias As Boolean

[C#]

public bool UseAntiAlias { get; set; }

[Delphi]

property UseAntiAlias: Boolean;

See Also

C1Chart Class


UseDoubleBuffer Property

UseDoubleBuffer Property

Gets or sets a value indicating whether to use double buffering methods when repainting the chart..

Syntax

[VB]

Public Property UseDoubleBuffer As Boolean

[C#]

public bool UseDoubleBuffer { get; set; }

[Delphi]

property UseDoubleBuffer: Boolean;

See Also

C1Chart Class


Visible Property (C1Chart)

Visible Property (C1Chart)

Determines whether the control is visible or hidden.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

C1Chart Class


C1Chart Methods

ChartRegionFromCoord Method

Dispose Method (C1Chart)

Draw Method (C1Chart)

GenerateHistogramData Method

GetImage Method

GetMetaFile Method

LoadChartFromFile Method

LoadChartFromString Method

PageSetup Method

PrintChart Method

PrintSetup Method

Reset Method

SaveChartToFile Method

SaveChartToString Method

SaveImage Method (C1Chart)

ShowProperties Method

ShowWizard Method


ChartRegionFromCoord Method

ChartRegionFromCoord Method

Return the enumerated value indicating the topmost displayed region at the specified coordinates.

Syntax

[VB]

Public Function ChartRegionFromCoord (XCoord As Integer, _YCoord As Integer) As ChartRegionEnum

[C#]

public ChartRegionEnum ChartRegionFromCoord (int XCoord, int YCoord) ;

[Delphi]

function ChartRegionFromCoord(XCoord: Integer; YCoord: Integer): ChartRegionEnum;

Return Value

ChartRegionEnum

Remarks

Each chart element drawn on the face of the control, including the Chart itself, the Header, the Footer, the Legend, the ChartArea and the PlotArea form a region, which is identified by the enumerated value returned by this method. Passing the mouse coordinates to this method can identify the region under the mouse cursor.

See Also

C1Chart Class


Dispose Method (C1Chart)

Dispose Method (C1Chart)

Reads the chart object for garbage collection.

Syntax

[VB]

Public Sub Dispose ()

[C#]

public void Dispose ();

[Delphi]

procedure Dispose;

Remarks

The chart should not be referenced after calling the Dispose method.

See Also

C1Chart Class


Draw Method (C1Chart)

Draw Method (C1Chart)

Draws the chart on the specified drawing surface.

Syntax

[VB}

Public Sub Draw(g As Graphic, r As Rectangle)

[C#]

public void Draw(Graphics g, Rectangle r);

[Delphi]

procedure Draw(g: Graphics; r: Rectangle);

See Also

C1Chart Class


GenerateHistogramData Method

GenerateHistogramData Method

Generates histogram data from an array of raw data and the specified interval boundaries.

Note:

The GenerateHistogramData method uses two overloads. The overloads for the GenerateHistogramData method are the following:

1. GenerateHistogramData(double[ ],double, double, int, double, ref double[ ], ref double[ ], ref double[ ]) Method

2. GenerateHistogramData(double[ ],double[ ], double, ref double[ ], ref double[ ], ref double[ ]) Method

The first overload generates histogram data from raw data and a series of interval boundaries specified by a starting value, an interval width and the number of desired intervals.

Syntax

[VB]

Public Shared Function GenerateHistogramData(ByVal RawData() As Double, ByVal Start As Double, ByVal IncrementalWidth As Double, ByVal Count As Integer, ByVal NormalizationWidth As Double, ByRef IntervalBounds() As Double, ByRef IntervalCounts() As Double, ByRef BoundaryIntervals() As Double) As Boolean

[C#]

public static System.Boolean GenerateHistogramData(double[] RawData, System.Double Start, System.Double IncrementalWidth, System.Int32 Count, System.Double NormalizationWidth, ref double[] IntervalBounds, ref double[] IntervalCounts, ref double[] BoundaryIntervals);

[Delphi]

function GenerateHistogramData(RawData: Double; Start: Double; IncrementalWidth: Double; Count: Integer; NormalizationWidth: Double; IntervalBounds: Double; IntervalCounts: Double; BoundaryIntervals: Double) : Boolean;

Parameters

IncrementalWidth | Specifies the width of each interval.
Start | Specifies the starting boundary of the first interval.
Count | Specifies the number of consecutive, uniform width intervals.
BoundaryIntervals | A reference to a two element double array which will receive the count of data points that fall outside the specified Boundaries array. Element zero (0) of the array receives the count of data points with values less than the lowest value in the Boundaries array. Element one (1) of the array receives the count of data points with values greater than the highest value in the Boundaries array.
RawData | Specifies a double array containing data values.
IntervalBounds | A reference to a double array which will receive the actual ordered and trimmed boundaries of the intervals making up the histogram. This array is generated internally from the input Boundaries array.
NormalizationWidth | Specifies the interval width to be used for normalization. If less than or equal to zero, normalization is not performed.
IntervalCounts | A reference to a double array which will receive the count of data points that fall into the interval specified by the IntervalBounds array. The IntervalCounts array will necessarily have one less element than the IntervalBounds array.

Remarks

Each pair of consecutive interval boundary values is used to specify an interval. This results in one less interval than the number of boundary points. For example, if Start=1, IncrementalWidth=2 and Count=4, then intervals bounded by 1,3,5,7,9 are created, resulting in 4 intervals of 1-3, 3-5, 5-7, and 7-9.

Since all intervals are of equal width, it is not necessary to perform interval count normalization when only a single set of data is used. However, if multiple sets of data are used, and different interval widths are supplied, normalization provides a more consistent result.

The second overload of the GenerateHistogramData method generates histogram data from an array of raw data and the specified interval boundaries. Count normalization is permformed by specifying an appropriate NormalizationWidth.

Although the chart has a Histogram chart type, it is sometimes preferable to generate charts similar to histograms, but with slightly different characteristics. This method is provided as a convenience for these occasions.

Syntax

[VB]

Public Shared Function GenerateHistogramData(ByVal RawData() As Double, ByVal Boundaries() As Double, ByVal NormalizationWidth As Double, ByRef IntervalBounds() As Double, ByRef IntervalCounts() As Double, ByRef BoundaryIntervals() As Double) As Boolean

[C#]

public static bool GenerateHistogramData(double[] RawData, double[] Boundaries, double NormalizationWidth, ref double[] IntervalBounds, ref double[] IntervalCounts, ref double[] BoundaryIntervals);

[Delphi]

function GenerateHistogramData(RawData: Double;
Boundaries: Double; NormalizationWidth: Double;
NormalizationWidth: Double; IntervalBounds: Double;
IntervalCounts: Double; BoundaryIntervals: Double) :
Boolean;

Parameters

Boundaries | Specifies the interval boundaries. The boundaries array is sorted internally, and duplication boundaries are eliminated.
RawData | Specifies a double array containing data values.
NormalizationWidth | Specifies the interval width to be used for normalization. If less than or eqaul to zero, normalization is not performe.
BoundaryIntervals | A reference to a two element double array which will receive the count of data points that fall outside the specified Boundaries array. Element zero (0) of the array receives the count of data points with values less than the lowest value in the Boundaries array. Element one (1) of the array receives the count of data points with values greater than the highest value in the Boundaries array.
IntervalBoundaries | A reference to a double array which will receive the actual ordered and trimmed boundaries of the intervals making up the histogram. This array is generated internally from the input Boundaries array.
IntervalCounts | A reference to a double array which will receive the count of data points that fall into the interval specified by the IntervalBounds array. The IntervalCounts array will necessarily have one less element than the IntervalBounds array.

Remarks

Each pair of consecutive interval boundary values is used to specify an interval. This results in one less interval than the number of boundary points. For example, boundaries of 1,3,4,5,6 would result in 4 intervals of 1-3, 3-4, 4-5, and 5-6. Note that each interval need not be the same width. When varying widths are specified in the IntervalBounds array, the numeric counts are should be normalized by their area. This means that an interval with twice the width of another interval, but with the same number of data points falling within it, will report half the returned count.

Returns

A boolean indicating success or failure.

See Also

C1Chart Class


GetImage Method

GetImage Method

Obtains an image of the current chart display.

Syntax

[VB]

Public Function GetImage () As Image

Public Function GetImage (Sz As Size) As Image

Public Function GetImage (ImgFmt As ImageFormat) As Image

Public Function GetImage (ImgFmt As ImageFormat, Sz As Size) As Image

[C#]

public Image GetImage ();

public Image GetImage (Size Sz);

public Image GetImage (ImageFormat ImgFmt);

public Image GetImage(ImageFormat ImgFmt, Size Sz);

[Delphi]

function GetImage: Image;

function GetImage(Sz: Size): Image;

function GetImage(ImgFmt: ImageFormat): Image;

function GetImage(ImgFmt: ImageFormat; Sz: Size) : Image

Return Value

Image created by an enhanced metafile of the chart.

Remarks

This method creates an image of the current chart display an returns an Image object. The Image is created with the specified ImageFormat, or if not specified an enhanced metafile, so the image is scalable. When the GetImage overload with the Size parameter is used, the Sz parameter specifies the size of the bitmap in pixels. If the GetImage overload without the size parameter is called, the size of the current display, in pixels, is assumed. If an error occurs during the file creation, chart drawing and writing, an appropriate exception is thrown indicating the cause of error.

See Also

C1Chart Class


GetMetaFile Method

GetMetaFile Method

Extracts C1Chart as a metafile.

Syntax

[VB]

Public Function GetMetaFile ( ) As Metafile

Public Function GetMetaFile (sz As Size) As Metafile

Public Function GetMetaFile (sz As Size, emftype As EmfType) As Metafile

[C#]

public Metafile GetMetaFile ( );

public Metafile GetMetaFile (Size sz);

public Metafile GetMetaFile (Size sz, emftype EmfType);

[Delphi]

function GetMetaFile: Metafile;

function GetMetaFile (sz: Size): Metafile;

function GetMetaFile (sz: Size; emftype: EmfType): Metafile

See Also

C1Chart Class


LoadChartFromFile Method

LoadChartFromFile Method

Reads the chart property and data settings (chart description) from the specified file.

Syntax

[VB]

Public Sub LoadChartFromFile (Filename As String)

[C#]

public void LoadChartFromFile (string Filename);

[Delphi]

procedure LoadChartFromFile(Filename: string);

Remarks

This method loads the contents of the specified file in XML format into the chart. The file should contain the output of a call to SaveChartFromFile. If an error occurs during the file open, reading or chart drawing, an appropriate exception is thrown indicating the cause of error.

See Also

C1Chart Class


LoadChartFromString Method

LoadChartFromString Method

Reads the chart property and data settings (chart description) from the specified string.

Syntax

[VB]

Public Sub LoadChartFromString (str As String)

[C#]

public void LoadChartFromFile (string str);

[Delphi]

procedure LoadChartFromFile(str: String);

Remarks

This method loads the contents of the specified string in XML format into the chart. The string should contain the output of a call to SaveChartToString. If an error occurs, an appropriate exception is thrown indicating the cause of error.

See Also

C1Chart Class


PageSetup Method

PageSetup Method

Raises the PageSetup dialog to manage the page settings.

Syntax

[VB]

Public Sub PageSetup ()

[C#]

public void PageSetup ();

[Delphi]

procedure PageSetup;

See Also

C1Chart Class


PrintChart Method

PrintChart Method

Prints the control using default scaling within the margins of the printer page.

Syntax

[VB]

Public Sub PrintChart ()

Public Sub PrintChart (scaling As PrintScaleEnum)

Public Sub PrintChart (scaling As PrintScaleEnum, r As Rectangle)

Public Sub PrintChart (scaling As PrintScaleEnum, r As Rectangle, ps As PageSettings)

[C#]

public void PrintChart ();

public void PrintChart (PrintScaleEnum scaling);

public void PrintChart (PrintScaleEnum scaling, Rectangle r);

public void PrintChart (PrintScaleEnum scaling, Rectangle r, PageSettings ps);

[Delphi]

procedure PrintChart;

procedure PrintChart(scaling: PrintScaleEnum);

procedure PrintChart(scaling: PrintScaleEnum; r: Rectangle);

procedure PrintChart (scaling: PrintScaleEnum; r: Rectangle; ps: PageSettings)

See Also

C1Chart Class


PrintSetup Method

PrintSetup Method

Raises the PrintSetup dialog to manage the printer settings.

Syntax

[VB]

Public Sub PrintSetup ()

[C#]

public void PrintSetup ();

[Delphi]

procedure PrintSetup;

See Also

C1Chart Class


Reset Method

Reset Method

Clears the chart of all data and settings.

Syntax

[VB]

Public Sub Reset ()

[C#]

public void Reset ();

[Delphi]

procedure Reset;

See Also

C1Chart Class


SaveChartToFile Method

SaveChartToFile Method

Saves the all of the contents of the control to the specified file, including data.

Syntax

[VB]

Public Sub SaveChartToFile (Filename As String)

[C#]

public void SaveChartToFile (string Filename);

[Delphi]

procedure SaveChartToFile(Filename: string);

Remarks

This method saves the chart contents to the specified file in XML format. If an error occurs during the file creation, chart drawing and writing, an appropriate exception is thrown indicating the cause of error.

See Also

C1Chart Class


SaveChartToString Method

SaveChartToString Method

Saves the all of the contents of the control to the specified file, including data.

Syntax

[VB]

Public Function SaveChartToString () As String

[C#]

public string SaveChartToString ();

[Delphi]

function SaveChartToString: string;

Remarks

This method saves the chart contents to the specified string in XML format. If an error occurs, an appropriate exception is thrown indicating the cause of error.

See Also

C1Chart Class


SaveImage Method (C1Chart)

SaveImage Method (C1Chart)

Saves an image of the specified format to the specified target.

Syntax

[VB]

Public Sub SaveImage (ImgFmt As ImageFormat)

Public Sub SaveImage (ImgFmt As ImageFormat, Size sz)

Public Sub SaveImage (Filename As String, ImgFmt As ImageFormat)

Public Sub SaveImage (Filename As String, ImgFmt As ImageFormat, Size sz)

Public Sub SaveImage (stream As Stream, ImgFmt As ImageFormat)

Public Sub SaveImage (stream As Stream, ImgFmt As ImageFormat, Size sz)

Public Sub SaveImage (ByRef byteArray As Byte(), ImgFmt As ImageFormat)

Public Sub SaveImage (ByRef byteArray As Byte(), ImgFmt As ImageFormat, Size sz)

[C#]

public void SaveImage (ImageFormat ImgFmt);

public void SaveImage (ImageFormat ImgFmt, Size sz);

public void SaveImage (string Filename, ImageFormat ImgFmt);

public void SaveImage (string Filename, ImageFormat ImgFmt, Size sz);

public void SaveImage (Stream stream, ImageFormat ImgFmt);

public void SaveImage (Stream stream, ImageFormat ImgFmt, Size sz);

public void SaveImage (ref Byte[] byteArray, ImageFormat ImgFmt);

public void SaveImage (ref Byte[] byteArray, ImageFormat ImgFmt, Size sz);

[Delphi]

procedure SaveImage(ImgFmt: ImageFormat);

procedure SaveImage(ImgFmt: ImageFormat; sz: Size);

procedure SaveImage(Filename: string; ImgFmt: ImageFormat);

procedure SaveImage(Filename: string; ImgFmt: ImageFormat; sz: Size);

procedure SaveImage(stream: Stream; ImgFmt: ImageFormat);

procedure SaveImage(stream: Stream; ImgFmt: ImageFormat; sz: Size);

procedure SaveImage(byteArray: ref Byte[]; ImgFmt: ImageFormat);

procedure SaveImage(byteArray: ref Byte[]; ImgFmt: ImageFormat; sz: Size);

Remarks

This method creates an image of the specified format of the current chart display and saves the results to the specified target. The first two overloads, which not specify a target object, copy the image to the clipboard in emf or bmp format. When the Size parameter is used, the Sz parameter specifies the size of a bitmap in pixels. If the Size parameter is not used, the size of the current display, in pixels, is assumed. If an error occurs, an appropriate exception is thrown indicating the cause of error.

See Also

C1Chart Class


ShowProperties Method

ShowProperties Method

Raises the properties dialog at runtime using specified dialog version.

Syntax

[VB]

Public Function ShowProperties() As DialogResult

Public Function ShowProperties(version As DesignerDialogEnum) As DialogResult

Public Function ShowProperties(ppf As PropertyPageFlagsEnum) As DialogResult

[C#]

public DialogResult ShowProperties();

public DialogResult ShowProperties(DesignerDialogEnum version);

public DialogResult ShowProperties(PropertyPageFlagsEnum ppf);

[Delphi]

function ShowProperties() : DialogResult;

function ShowProperties(version: DesignerDialogEnum) : DialogResult;

function ShowProperties(ppf: PropertyPageFlagsEnum) : DialogResult;

Return Value

DialogResult.

Remarks

The properties dialog allows modification of the chart properties, including data, at runtime. All available properties are displayed on multiple tabs. The first overload, used with no arguments, raises the default property page dialog, which is DesignerDialogEnum.V2. The second overload, accepts a DesignerDialogEnum argument, and allows either the V1 or V2. V1 is used for compatibility with earlier versions. The third overload, takes the PropertyPageFlags argument. Multiple PropertyPageFlags values can be combined with a bitwise or operation to indicate which property pages and elements of each of the property pages will appear. The third overload is useful at runtime to allow users to modify the chart display with restrictions.

See Also

C1Chart Class


ShowWizard Method

ShowWizard Method

Raises the wizard dialog at runtime using specified dialog version.

Syntax

[VB]

Public Function ShowWizard(version As DesignerDialogEnum) As DialogResult

[C#]

public DialogResult ShowWizard(DesignerDialogEnum version);

[Delphi]

function ShowWizard(version:DesignerDialogEnum) : DialogResult;

Remarks

The chart wizard displays the chart properties step by step, permitting the construction or modification of a chart in a progressive and logical manner.

Return Value

DialogResult.

See Also

C1Chart Class


C1Chart Events

DataSourceChanged Event

DrawDataSeries Event

DrawLegendEntry Event (C1Chart)

HighlightChanged Event (C1Chart)

LayoutLabels Event

PaintPlotArea Event (C1Chart)

ShowToolTip Event (C1Chart)

Transform Event


DataSourceChanged Event

DataSourceChanged Event

Fires when the DataSource property has changed.

Syntax

[VB]

Public Event DataSourceChanged As System.EventHandler

[C#]

public event System.EventHandler DataSourceChanged;

[Delphi]

property DataSourceChanged: System.EventHandler

Event Data

The event handler receives an argument of type System.EventArgs. The sender object of the event is the C1Chart object.

See Also

C1Chart Class


DrawDataSeries Event

DrawDataSeries Event

Fires when the data series is about to be drawn. This event allows changes to the brush that will be used for data series plotting, including the addition of hatching, gradients and textures.

Syntax

[VB]

Public Event DrawDataSeries As DrawDataSeriesEventHandler

[C#]

public event DrawDataSeriesEventHandler DrawDataSeries;

[Delphi]

property DrawDataSeries: DrawDataSeriesEventHandler

Event Data

The event handler receives an argument of type DrawDataSeriesEventArgs containing data related to this event. The sender object of the event is the ChartDataSeries object about to be drawn.

See Also

C1Chart Class


DrawLegendEntry Event (C1Chart)

DrawLegendEntry Event (C1Chart)

Fires when the legend is about to be drawn. This event allows changes to the pen color that will be used to stroke the text of the legend entry.

Syntax

[VB]

Public Event DrawLegendEntry As DrawLegendEntryEventHandler

[C#]

public event DrawLegendEntryEventHandler DrawLegendEntry;

[Delphi]

property DrawLegendEntry: DrawLegendEntryEventHandler

Event Data

The event handler receives an argument of type DrawLegendEntryEventArgs containing data related to this event. The sender object of the event is the ChartLegend object about to be drawn.

See Also

C1Chart Class


HighlightChanged Event (C1Chart)

HighlightChanged Event (C1Chart)

Fires when highlighted data element has been changed.

Syntax

[VB]

Public Event HighlightChanged As HightLightChangedEventHandler

[C#]

public event HightLightChangedEventHandler HighlightChanged;

[Delphi]

property HighlightChanged: HightLightChangedEventHandler

Event Data

The event handler receives an argument of type HighlightChangedEventArgs containing data related to this event. The sender object of the event is the DataHighlight object about to be drawn.

See Also

C1Chart Class


LayoutLabels Event

LayoutLabels Event

Fires before rendering labels and allows repositioning labels relative to positions of other chart elements or using data mapping methods.

Syntax

[VB]

Public Event LayoutLabels As EventHandler

[C#]

public event EventHandler LayoutLabels;

[Delphi]

property LayoutLabels : EventHandler;

See Also

C1Chart Class


PaintPlotArea Event (C1Chart)

PaintPlotArea Event (C1Chart)

Fires when the plot area is about to be drawn. This event allows an event handler to customize the plot area with custom draw methods before the data is drawn.

Syntax

[VB]

Public Event PaintPlotArea As System.Windows.Forms.PaintEventHandler

[C#]

public event System.Windows.Forms.PaintEventHandler PaintPlotArea;

[Delphi]

property PaintPlotArea: System.Windows.Forms.PaintEventHandler;

Event Data

The event handler receives an argument of type System.Windows.Forms.PaintEventArgs containing data related to this event. The sender object of the event is the instance of the chart PlotArea object with the data about to be drawn.

See Also

C1Chart Class


ShowToolTip Event (C1Chart)

ShowToolTip Event (C1Chart)

Fires before a chart tooltip is shown. This event allows the user to specify custom tooltip text.

Syntax

[VB]

Public Event ShowToolTip (ByVal sender As Object, ByVal e As ShowTooltipEventArgs) As ShowTooltipEventHandler

[C#]

public event ShowTooltipEventHandler ShowToolTip;

[Delphi]

property ShowToolTip: ShowTooltipEventHandler;

See Also

C1Chart Class


Transform Event

Transform Event

Fires when interactive action is about to occur. This event permits additional control over the parameters of user interactions. It possible to change axes limits or cancel transformation.

Syntax

[VB]

Public Event Transform As TransformEventHandler

[C#]

public event TransformEventHandler Transform;

[Delphi]

property Transform: TransformEventHandler

Event Data

The event handler receives an argument of type TransformEventArgs containing data related to this event. The sender object of the event is the Interaction object of the chart.

See Also

C1Chart Class


C1Chart Delegates

DrawDataSeriesEventHandler Delegate

DrawLegendEntryEventHandler Delegate

TransformEventHandler Delegate


DrawDataSeriesEventHandler Delegate

DrawDataSeriesEventHandler Delegate

Represents the method that will handle the DrawDataSeries event of a C1Chart class.

Syntax

[VB]

Public Delegate Sub DrawDataSeriesEventHandler( sender As Object, e As DrawDataSeriesEventArgs)

[C#]

public delegate void DrawDataSeriesEventHandler( object sender, DrawDataSeriesEventArgs e);

[Delphi]

type DrawDataSeriesEventHandler = procedure(sender: Object, e: DrawDataSeriesEventArgs) of object;

Remarks

The sender object is the ChartDataSeries object about to be drawn.

See Also

C1Chart Class


DrawLegendEntryEventHandler Delegate

DrawLegendEntryEventHandler Delegate

Represents the method that will handle the DrawLegendEntry event of a C1Chart class.

Syntax

[VB]

Public Delegate Sub DrawLegendEntryEventHandler( sender As Object, e As DrawLegendEntryEventArgs)

[C#]

public delegate void DrawLegendEntryEventHandler( object sender, DrawLegendEntryEventArgs e);

[Delphi]

type DrawLegendEntryEventHandler = procedure(sender: Object, e: DrawLegendEntryEventArgs) of object;

Remarks

The sender object is the ChartLegend object about to be drawn.

See Also

C1Chart Class


TransformEventHandler Delegate

TransformEventHandler Delegate

Represents the method that will handle the Transform event of a C1Chart class.

Syntax

[VB]

Public Delegate Sub TransformEventHandler( sender As Object, e As TransformEventArgs)

[C#]

public delegate void TransformEventHandler( object sender, TransformEventArgs e);

[Delphi]

type TransformEventHandler = procedure(sender: Object, e: TransformEventArgs) of object;

Remarks

The sender object is the Interaction object of the chart.

See Also

C1Chart Class


CalculateFunctionEventArgs Class

Stores event arguments for CalculateFunctionEventHandler.

CalculateFunctionEventArgs All Methods

CalculateFunctionEventArgs Delegates

CalculateFunctionEventArgs Properties

CalculateFunctionEventArgs Delegates


CalculateFunctionEventArgs All Methods

CalculateFunctionEventArgs Properties

Parameter | Gets the value of parameter of function at which the function value must be calculated.
Result | Gets the result of function calculation.


CalculateFunctionEventArgs Delegates

CalculateFunctionEventHandler

Delegate for function calculation events.


CalculateFunctionEventArgs Properties

Parameter Property (CalculateFunctionEventArgs)

Result Property (CalculateFunctionEventArgs)


Parameter Property (CalculateFunctionEventArgs)

Parameter Property (CalculateFunctionEventArgs)

Gets the value of parameter of function at which the function value must be calculated.

Syntax

[VB]

Public Readonly Property Parameter As Double

[C#]

public double Parameter { get;}

[Delphi]

property Parameter: Double;

See Also

CalculateFunctionEventArgs Class


Result Property (CalculateFunctionEventArgs)

Result Property (CalculateFunctionEventArgs)

Gets the result of function calculation.

Syntax

[VB]

Public Property Result As Double

[C#]

public double Result { get;}

[Delphi]

property Result: Double;

See Also

CalculateFunctionEventArgs Class


CalculateFunctionEventArgs Delegates

CalculateFunctionEventHandler Delegate


CalculateFunctionEventHandler Delegate

CalculateFunctionEventHandler Delegate

Delegate for function calculation events.

Syntax

[VB]

Public Delegate Sub CalculateFunctionEventHandler( sender as Object, e as CalculateFunctionEventArgs);

[C#]

public delegate void CalculateFunctionEventHandler(object sender, CalculateFunctionEventArgs e);

[Delphi]

type = CalculateFunctionEventHandler : procedure( sender: object, e:CalculateFunctionEventArgs) of object;

See Also

CalculateFunctionEventArgs Class


ChartData Class

Syntax

C1.Win.C1Chart.ChartData

ChartData All Members

ChartData Properties

ChartData Methods

ChartData Events


ChartData All Members

ChartData Properties

FunctionsList | Gets the FunctionsCollection object associated with the current ChartData object.
Highlight | Gets the DataHighlight object which controls data highlighting.
Hole Supported by the .NET Compact Framework. | Gets or sets the data hole value.
Item Supported by the .NET Compact Framework. | Gets the specified ChartDataSeries by numeric index.
Layout Supported by the .NET Compact Framework. | Gets or sets the type of data layout. (Currently not implemented).
MaxX Supported by the .NET Compact Framework. | Gets the maximum X value of all series.
MaxY Supported by the .NET Compact Framework. | Gets the maximum Y value of all series.
MinX Supported by the .NET Compact Framework. | Gets the minimum X value of all series.
MinY Supported by the .NET Compact Framework. | Gets the minimum Y value of all series.
PointStylesList | Gets the PointStylesCollection object associated with the current ChartData object.
SeriesList Supported by the .NET Compact Framework. | Gets the ChartDataSeriesCollection object associated with the current ChartData object.
TrendsList | Gets the TrendLinesCollection object associated with the current ChartData object.

ChartData Methods

IsHole Supported by the .NET Compact Framework. | Returns true whenever the value passed will be interpreted as a data hole.
LoadDataFromFile Supported by the .NET Compact Framework. | Loads the contents of the current ChartData object from the specified file in XML format, including point data, holes and line and symbol style data.
SaveDataToFile Supported by the .NET Compact Framework. | Saves the contents of the current ChartData object to the specified file in XML format, including point data, holes and line and symbol style data.
SetHole Supported by the .NET Compact Framework. | Sets the hole property value by passing an object that is converted appropriately.

ChartData Events

DataChanged
Supported by the .NET Compact Framework.

Called whenever an element of the data has changed.


ChartData Properties

FunctionsList Property

Highlight Property (ChartData)

Hole Property

Item Property (ChartData)

Layout Property

MaxX Property (ChartData)

MaxY Property (ChartData)

MinX Property (ChartData)

MinY Property (ChartData)

PointStylesList Property

SeriesList Property

TrendsList Property


FunctionsList Property

FunctionsList Property

Gets the FunctionsCollection object associated with the current ChartData object.

Syntax

[VB]

Public ReadOnly Property FunctionsList As FunctionsCollection

[C#]

public FunctionsCollection FunctionsList { get; }

[Delphi]

property FunctionsList : FunctionsCollection;

Remarks

This collection contains functions that are plotted.

See Also

ChartData Class


Highlight Property (ChartData)

Highlight Property (ChartData)

Gets the DataHighlight object which controls data highlighting.

Syntax

[VB]

Public ReadOnly Property Highlight As DataHighlight

[C#]

public DataHighlight Highlight { get; }

[Delphi]

property Highlight : DataHighlight;

See Also

ChartData Class


Hole Property

Hole Property

Gets or sets the data hole value.

Syntax

[VB]

Public Property Hole As Double

[C#]

public double Hole { get; set; }

[Delphi]

property Hole: Double;

Remarks

Data holes are used as placeholders for data points that indicate data is normally present but not in this case.

See Also

ChartData Class


Item Property (ChartData)

Item Property (ChartData)

Gets the specified ChartDataSeries by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As ChartDataSeries

[C#]

public ChartDataSeries this[int index] { get; }

[Delphi]

property Item(index: Integer): ChartDataSeries;

property Item(index: string): ChartDataSeries;

Remarks

Although not a collection object, ChartData allows direct indexing of the elements of ChartDataSeriesCollection contained within the ChartData object. This is for convenience when programming.

See Also

ChartData Class


Layout Property

Layout Property

Gets or sets the type of data layout. (Currently not implemented).

Syntax

[VB]

Public Property Layout As Chart2DLayoutEnum

[C#]

public Chart2DLayoutEnum Layout { get; set; }

[Delphi]

property Layout: Chart2DLayoutEnum;

See Also

ChartData Class


MaxX Property (ChartData)

MaxX Property (ChartData)

Gets the maximum X value of all series.

Syntax

[VB]

Public ReadOnly Property MaxX As Double

[C#]

public double MaxX { get; }

[Delphi]

property MaxX: Double;

Remarks

This property searches all series for the maximum X value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

See Also

ChartData Class


MaxY Property (ChartData)

MaxY Property (ChartData)

Gets the maximum Y value of all series.

Syntax

[VB]

Public ReadOnly Property MaxY As Double

[C#]

public double MaxY { get; }

[Delphi]

property MaxY: Double;

Remarks

This property searches all series for the maximum Y value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

Note that all Y data arrays are searched, including Y, Y1, Y2, Y3 data arrays.

See Also

ChartData Class


MinX Property (ChartData)

MinX Property (ChartData)

Gets the minimum X value of all series.

Syntax

[VB]

Public ReadOnly Property MinX As Double

[C#]

public double MinX { get; }

[Delphi]

property MinX: Double;

Remarks

This property searches all series for the minimum X value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

See Also

ChartData Class


MinY Property (ChartData)

MinY Property (ChartData)

Gets the minimum Y value of all series.

Syntax

[VB]

Public ReadOnly Property MinY As Double

[C#]

public double MinY { get; }

[Delphi]

property MinY: Double;

Remarks

This property searches all series for the minimum Y value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

Note that all Y data arrays are searched, including Y, Y1, Y2, Y3 data arrays.

See Also

ChartData Class


PointStylesList Property

PointStylesList Property

Gets the PointStylesCollection object associated with the current ChartData object.

Syntax

[VB]

Public ReadOnly Property PointStylesList As PointStylesCollection

[C#]

public PointStylesCollection PointStylesList { get; }

[Delphi]

property PointStylesList : PointStylesCollection;

Remarks

This collection contains styles that can be applied to specific data point.

See Also

ChartData Class


SeriesList Property

SeriesList Property

Gets the ChartDataSeriesCollection object associated with the current ChartData object.

Syntax

[VB]

Public ReadOnly Property SeriesList As ChartDataSeriesCollection

[C#]

public ChartDataSeriesCollection SeriesList { get; }

[Delphi]

property SeriesList: ChartDataSeriesCollection;

Remarks

The ChartDataSeries of this Collection object contains the data to be charted, along with Line and Symbols styles and other properties used to describe the appearance of the series data.

See Also

ChartData Class


TrendsList Property

TrendsList Property

Gets the TrendLinesCollection object associated with the current ChartData object.

Syntax

[VB]

Public ReadOnly Property TrendsList As TrendLinesCollection

[C#]

public TrendLinesCollection TrendsList { get; }

[Delphi]

property TrendsList: TrendLinesCollection;

Remarks

This collection contains trend lines for this ChartData object.

See Also

ChartData Class


ChartData Methods

IsHole Method (ChartData)

LoadDataFromFile Method (ChartData)

SaveDataToFile Method (ChartData)

SetHole Method


IsHole Method (ChartData)

IsHole Method (ChartData)

Returns true whenever the value passed will be interpreted as a data hole.

Syntax

[VB]

Public Function IsHole (x As Object) As Boolean

[C#]

public bool IsHole (object x);

[Delphi]

function IsHole(x: Object): Boolean;

Return Value

Boolean

Remarks

The value is automatically converted to the internal data type based upon the data type of the value specified. The value is then compared to the stored data hole. Note that indeterminate floating point data values including Infinity or NaN are treated as hole values.

See Also

ChartData Class


LoadDataFromFile Method (ChartData)

LoadDataFromFile Method (ChartData)

Loads the contents of the current ChartData object from the specified file in XML format, including point data, holes and line and symbol style data.

Syntax

[VB]

Public Sub LoadDataFromFile (Filename As String)

[C#]

public void LoadDataFromFile (string Filename);

[Delphi]

procedure LoadDataFromFile(Filename: string);

Remarks

This method loads the current ChartData object with the contents for the specified file in XML format. The file specified should have been created with SaveDataToFile. If an error occurs during the file creation or writing, an appropriate exception is thrown indicating the cause of error.

See Also

ChartData Class


SaveDataToFile Method (ChartData)

SaveDataToFile Method (ChartData)

Saves the contents of the current ChartData object to the specified file in XML format, including point data, holes and line and symbol style data.

Syntax

[VB]

Public Sub SaveDataToFile (Filename As String)

[C#]

public void SaveDataToFile (string Filename);

[Delphi]

procedure SaveDataToFile(Filename: string);

Remarks

This method saves the ChartData object contents to the specified file in XML format. If an error occurs during the file creation or writing, an appropriate exception is thrown indicating the cause of error.

See Also

ChartData Class


SetHole Method

SetHole Method

Sets the data hole value, performing appropriate conversions from the passed object to the internal double storage value.

Syntax

[VB]

Public Sub SetHole (x As Object)

[C#]

public void SetHole(object x);

[Delphi]

procedure SetHole(x: Object);

Remarks

This method sets the hole value by passing any appropriate datatype. The passed object is appropriately converted to the internal store value – a double. The hole property can also be used to set the hole value, but only accepts double values.

See Also

ChartData Class


ChartData Events

DataChanged Event


DataChanged Event

DataChanged Event

Syntax

[VB]

Public Event DataChanged As ChartDataEventHandler

[C#]

public event ChartDataEventHandler DataChanged

[Delphi]

property DataChanged: ChartDataEventHandler

Event Data

The event handler receives an argument of type ChartDataEventArgs containing data related to this event. The following properties provide information specific to this event.

See Also

ChartData Class


ChartDataArray Class

Syntax

C1.Win.C1Chart.ChartDataArray

Remarks

Container object for data arrays.


ChartDataArray All Members

ChartDataArray Properties

DataField | Gets or sets the data field name that is bound to the ChartDataArray.
DataType Supported by the .NET Compact Framework. | Gets or sets the default data type of the data.
Hole | Returns an Object with the ChartData.Hole value converted to the data type specified by the ChartDataArray.DataType property.
Item Supported by the .NET Compact Framework. | Gets or sets the value of the data element by index.
Length Supported by the .NET Compact Framework. | Gets or sets the length of the data array.
Statistics | Gets the object that provides statistics for the data of this ChartDataArray.

ChartDataArray Methods

Add | Adds a new value to the end of the ChartDataArray.
Clear | Removes all values from the ChartDataArray.
Contains | Determines whether a value is in the ChartDataArray.
CopyDataIn Supported by the .NET Compact Framework. | Copies data into the data array, replacing all existing data.
CopyDataOut Supported by the .NET Compact Framework. | Copies data out of the data array.
CopyTo | Copies data values to the specified array beginning at the specified index from the ChartDataArray.
IndexOf | Gets the index of a value in the ChartDataArray.
Insert | Inserts a new value at the specified index of the ChartDataArray.
IsHole | Determines if the specified value is interpreted as a data hole.
Remove | Removes the first occurance of a specified value from the ChartDataArray.
RemoveAt | Removes the value at the specified index from the ChartDataArray.


ChartDataArray Properties

DataField Property

DataType Property

Hole Property (ChartDataArray)

Item Property (ChartDataArray)

Length Property (ChartDataArray)

Statistics Property


DataField Property

DataField Property

Gets or sets the data field name that is bound to the ChartDataArray.

Syntax

[VB]

Public Property DataField As String

[C#]

public string DataField { get; set; }

[Delphi]

property DataField: string;

Remarks

The data field name must exist in the DataSource.

See Also

ChartDataArray Class


DataType Property

DataType Property

Gets or sets the default data type of the data.

Syntax

[VB]

Public Property DataType As Type

[C#]

public Type DataType { get; set; }

[Delphi]

property DataType: Type;

Remarks

Specifies the default data type that is used with the CopyDataOut method. If the default DataType property is not explicitly set, then the reported type is that of the last entered data through either the CopyDataIn method of the Item property.

Acceptable input data types include Single, Double, Integer, Int32, Int64, Decimal and DateTime (VB) and float, double, int, Int32, Int64, decimal and DateTime (C#). When PointData is managed by the ChartDataArray, PointF objects may also be used.

See Also

ChartDataArray Class


Hole Property (ChartDataArray)

Hole Property (ChartDataArray)

Returns an Object with the ChartData.Hole value converted to the data type specified by the ChartDataArray.DataType property.

Syntax

[VB]

Public ReadOnly Property Hole As Object

[C#]

public object Hole {get;}

[Delphi]

property Hole: Object;

See Also

ChartDataArray Class


Item Property (ChartDataArray)

Item Property (ChartDataArray)

Gets or sets the value of the data element by index.

Syntax

[VB]

Public Property Item(int index) As Object

[C#]

public object this[int index] { get; set; }

[Delphi]

property Item(index: Integer): Object;

property Item(index: string): Object;

Remarks

This property can be used to access a specific data entry by numerical index. In Visual Basic, no casting is required. In C#, it is necessary to cast the return value to the appropriate type. Note that all values are stored as a Double(VB) or double(C#) data type internally. Data conversions are performed automatically and as appropriate for the inputted data type. For example, setting a data element to a DateTime value of January 1, 2002 will be stored internally as an Ole date, then converted to a Double/double with a result of 37257.

Acceptable input data types include Single, Double, Integer, Int32, Int64, Decimal and DateTime (VB) and float, double, int, Int32, Int64, decimal and DateTime (C#). When PointData is managed by the ChartDataArray, PointF objects may also be used.

Note that the index must be between 0 and the Length of the array inclusive.

See Also

ChartDataArray Class


Length Property (ChartDataArray)

Length Property (ChartDataArray)

Gets or sets the length of the data array.

Syntax

[VB]

Public Property Length As Integer

[C#]

public int Length { get; set; }

[Delphi]

property Length: Integer;

Remarks

When extending the existing length of the array, the newly created elements are filled with data hole values. When reducing the length of the array, truncated elements are thrown away. Note that it may be necessary to increase the length of an array before setting its values with the Item property.

See Also

ChartDataArray Class


Statistics Property

Statistics Property

Gets the object that provides statistics for the data of this ChartDataArray.

Syntax

[VB]

Public ReadOnly Property Statistics As StatisticalData

[C#]

public StatisticalData Statistics { get;}

[Delphi]

property Statistics: StatisticalData;

Remarks

The return StatisticalData object contains a number of readonly properties that report Mean, Median, Standard Deviation, Variance and Confidence intervals for the data. PointData ChartDataArrays also include the R-Squared statistic for X-Y data.

See Also

ChartDataArray Class


ChartDataArray Methods

Add Method

Clear Method

Contains Method (ChartDataArray)

CopyDataIn Method

CopyDataOut Method

CopyTo Method (ChartDataArray)

IndexOf Method

Insert Method

IsHole Method (ChartDataArray)

Remove Method

RemoveAt Method


Add Method

Add Method

Adds a new value to the end of the ChartArrayArray.

Syntax

[VB]

Public Function Add(value As Object) As Integer

[C#]

public int Add(object value);

[Delphi]

function Add(value: Object): Integer;

Return Value

An integer indicating the index of the new value in the ChartDataArray. The new index is always the Length of the ChartDataArray prior to adding the new value.

Remarks

The Add method extends the length of the ChartDataArray by one, then adds the new value to the newly created element. The value is automatically converted to the internal storage data type.

See Also

ChartDataArray Class


Clear Method

Clear Method

Removes all values from the ChartDataArray.

Syntax

[VB]

Public Sub Clear()

[C#]

public void Clear();

[Delphi]

procedure Clear;

Remarks

All elements of the ChartDataArray are removed and the Length is set to 0.

See Also

ChartDataArray Class


Contains Method (ChartDataArray)

Contains Method (ChartDataArray)

Determines whether a value is in the ChartDataArray.

Syntax

[VB]

Public Function Contains(value as Object) As Boolean

[C#]

public bool Contains(object value);

[Delphi]

function Contains(value: Object): Boolean;

Return Value

A boolean indicating whether the specified value can be found in one of the elements of the ChartDataArray.

Remarks

The value is automatically converted to the internal data type based upon the data type of the value specified. The value and the elements of the ChartDataArray are then compared using the converted result.

See Also

ChartDataArray Class


CopyDataIn Method

CopyDataIn Method

Copies data into the ChartDataArray, replacing all existing data.

Syntax

[VB]

Public Function CopyDataIn (DataArray As Object) As Boolean

[C#]

public bool CopyDataIn(object DataArray);

[Delphi]

function CopyDataIn(DataArray: Object): Boolean;

Return Value

A Boolean value indicating whether the data was appropriately copied into the ChartDataArray.

Remarks

Although the passed DataArray is an object, the underlying data type must be an array of type Single, Double, Integer, Int32, Int64, Decimal or DateTime (VB) or float, double, int, Int32, Int64, decimal or DateTime (C#). An array of objects is not accepted. When PointData is managed by the ChartDataArray, an array PointF objects may also be passed.

Note that all values are stored as a Double(VB) or double(C#) data type internally. Data conversions are performed automatically and as appropriate for the inputted data type. For example, setting a data element to a DateTime value of January 1, 2002 will be stored internally as an Ole date, then converted to a Double/double with a result of 37257.

Additionally, the length of the copied array defines the length of the ChartDataArray, and the Length property will report the new value.

See Also

ChartDataArray Class


CopyDataOut Method

CopyDataOut Method

Copies data out of the ChartDataArray.

Syntax

[VB]

Public Function CopyDataOut () As Object

Public Function CopyDataOut (type As Type) As Object

[C#]

public object CopyDataOut();

public object CopyDataOut(Type type);

[Delphi]

function CopyDataOut: Object;

function CopyDataOut(type: Type): Object;

Return Value

An object containing an array of the default or specified type, appropriately converted from the internal Double(VB) or double(C#) values.

Remarks

Although the returned array is an object, the underlying data type will be an array of type Single, Double, Integer, Int32, Int64, Decimal or DateTime (VB) or float, double, int, Int32, Int64, decimal or DateTime (C#). When PointData is managed by the ChartDataArray, an array PointF objects may also be returned.

In Visual Basic, it is not necessary to explicitly cast the returned value. The strong typing of C# however, requires an explicit cast.

Note that all values are stored as a Double(VB) or double(C#) data type internally. Data conversions are performed automatically and as appropriate for the default data type.

See Also

ChartDataArray Class


CopyTo Method (ChartDataArray)

CopyTo Method (ChartDataArray)

Copies data values to the specified array beginning at the specified index from the ChartDataArray.

Syntax

[VB]

Public Sub CopyTo(arr As Array, index As Integer)

[C#]

public void CopyTo(Array arr, int index);

[Delphi]

procedure CopyTo(arr: Array; index: Integer);

Remarks

Data values are copied beginning with the specified ChartDataArray index to an appropriately typed array. If the data type and length of the passed array or the index are incorrect, an error is thrown.

See Also

ChartDataArray Class


IndexOf Method

IndexOf Method

Gets the index of the first specified value in the ChartDataArray.

Syntax

[VB]

Public Function IndexOf(value As Object) As Integer

[C#]

public int IndexOf(object value);

[Delphi]

function IndexOf(value: Object): Integer;

Return Value

An integer specifying the index of the first element with a matching value in the ChartDataArray. If the value is not found, -1 is returned.

Remarks

The value is automatically converted to the internal data type based upon the data type of the value specified. The value and the elements of the ChartDataArray are then compared using the converted result.

See Also

ChartDataArray Class


Insert Method

Insert Method

Inserts a new value at the specified index of the ChartDataArray.

Syntax

[VB]

Public Sub Insert(value As Object)

[C#]

public void Insert(object value);

[Delphi]

procedure Insert(value: Object);

Remarks

The value is inserted at the position specified and the length of the ChartDataArray is increased by 1.

See Also

ChartDataArray Class


IsHole Method (ChartDataArray)

IsHole Method (ChartDataArray)

Determines if the specified value is interpreted as a data hole.

Syntax

[VB]

Public Function IsHole(value As Object) As Boolean

[C#]

public bool IsHole(object value);

[Delphi]

function IsHole(value: Object): Boolean;

Return Value

A boolean value indicating whether the specified value is interpreted as a data hole.

Remarks

The value is automatically converted to the internal data type based upon the data type of the value specified. The value is then compared to the stored data hole. Note that invalid floating point data values such as NaN are treated as hole values.

See Also

ChartDataArray Class


Remove Method

Remove Method

Removes the first occurance of the specified value from the ChartDataArray.

Syntax

[VB]

Public Sub Remove(value As Object)

[C#]

public void Remove(object value);

[Delphi]

procedure Remove(value: Object);

Remarks

The value is automatically converted to the internal data type based upon the data type of the value specified. The value and the elements of the ChartDataArray are then compared using the converted result.

See Also

ChartDataArray Class


RemoveAt Method

RemoveAt Method

Removes the element at the specified index from the ChartDataArray.

Syntax

[VB]

Public Sub RemoveAt(index As Integer)

[C#]

public void RemoveAt(int index);

[Delphi]

procedure RemoveAt(index: Integer);

Remarks

The element of the ChartDataArray is removed, and the length of the ChartDataArray is decreased by 1.

See Also

ChartDataArray Class


ChartDataSeries Class

Syntax

C1.Win.C1Chart.ChartDataSeries

Remarks

The ChartDataSeries class contains the data to be charted, as well as the properties and style object used to describe the appearance of the charted data.

ChartDataSeries All Members

ChartDataSeries Properties

ChartDataSeries Methods

ChartDataSeries Events

ChartDataSeries Delegates


ChartDataSeries All Members

ChartDataSeries Properties

AutoEnumerate | Gets or sets whether the X values of the series are automatically set to their index value.
DataLabel | Gets the data label object.
Display Supported by the .NET Compact Framework. | Gets or sets the display of the series.
FillStyle | Gets or sets the fill style of the data series.
FitType | Gets or sets the curve fit type.
Histogram | Gets or sets the ChartHistogram object.
Label Supported by the .NET Compact Framework. | Gets or sets the series label.
LegendEntry Supported by the .NET Compact Framework. | Gets or sets whether the series label appears in the legend.
Length Supported by the .NET Compact Framework. | Gets the number of data points in the series.
LineStyle Supported by the .NET Compact Framework. | Gets or sets the line style of the series, including color, thickness and pattern.
MaxX Supported by the .NET Compact Framework. | Returns the maximum X value of the series data.
MaxY Supported by the .NET Compact Framework. | Returns the maximum Y value of the series data.
MinX Supported by the .NET Compact Framework. | Returns the minimum X value of the series point data array.
MinY Supported by the .NET Compact Framework. | Returns the minimum Y value of the series point data array.
Offset Supported by the .NET Compact Framework. | Gets or sets the series offset for appropriate charts.
PlotFilter | Gets or sets the plot filter value which optimizes plotting large data arrays. The plot filter value represents the minimal distance from the previous data point in pixels. If distance is less than PlotFilter the point is not plotted. Only for XY-plot.
PlotFilterMethod | Gets or sets the plot filter method. This property specifies method of optimization when plotting large data arrays. Only for XY-plot.
PointData Supported by the .NET Compact Framework. | Gets the ChartDataArray object that manages PointF data (combine X and Y data).
SeriesData Supported by the .NET Compact Framework. | Gets the current ChartDataSeries for editing.
SymbolStyle Supported by the .NET Compact Framework. | Gets or sets the symbol style of the series, include color, size and shape.
Tag | Gets or sets the Tag property which allows association of user data with the ChartDataSeries.
TooltipText | Gets or sets the tooltip text of the series.
TooltipTextLegend | Gets or sets the tooltip text of the series's legend.
X Supported by the .NET Compact Framework. | Gets the ChartDataArray object that manages X data.
Y Supported by the .NET Compact Framework. | Gets the ChartDataArray object that manages Y data.
Y1 Supported by the .NET Compact Framework. | Gets the ChartDataArray object that manages Y1 data.
Y2 Supported by the .NET Compact Framework. | Gets the ChartDataArray object that manages Y2 data.
Y3 Supported by the .NET Compact Framework. | Gets the ChartDataArray object that manages Y3 data.

ChartDataSeries Methods

Clone | Creates a new series that is a copy of the current series without data.
IsHole Supported by the .NET Compact Framework. | Returns true whenever the passed value will be interpreted as a data hole.

ChartDataSeries Events

DataSeriesChanged Supported by the .NET Compact Framework. | Fires when the series data has changed.
PostDraw | Occurs after the series was drawn.


ChartDataSeries Properties

AutoEnumerate Property

DataLabel Property

Display Property

FitType Property

FillStyle Property (ChartDataSeries)

Histogram Property (ChartDataSeries)

Label Property

LegendEntry Property

Length Property

LineStyle Property

MaxX Property (ChartDataSeries)

MaxY Property (ChartDataSeries)

MinX Property (ChartDataSeries)

MinY Property (ChartDataSeries)

PlotFilter Property

PlotFilterMethod Property

Offset Property (ChartDataSeries)

PointData Property

SeriesData Property

SymbolStyle Property

Tag Property (ChartDataSeries)

TooltipText Property (ChartDataSeries)

TooltipTextLegend Property (ChartDataSeries)

X Property (ChartDataSeries)

Y Property (ChartDataSeries)

Y1 Property

Y2 Property

Y3 Property


AutoEnumerate Property

AutoEnumerate Property

Gets or sets whether the X values of the series are automatically set to their index value.

Syntax

[VB]

Public Property AutoEnumerate As Boolean

[C#]

public bool AutoEnumerate { get; set; }

[Delphi]

property AutoEnumerate: Boolean;

See Also

ChartDataSeries Class


DataLabel Property

DataLabel Property

Gets the data label object.

Syntax

[VB]

Public ReadOnly Property DataLabel As DataLabel

[C#]

public DataLabel DataLabel { get; }

[Delphi]

property Display: DataLabel;

See Also

ChartDataSeries Class


Display Property

Display Property

Gets or sets the display of the series.

Syntax

[VB]

Public Property Display As SeriesDisplayEnum

[C#]

public SeriesDisplayEnum Display { get; set; }

[Delphi]

property Display: SeriesDisplayEnum;

Remarks

This property is used to show, hide or exclude the charting of the data series.

See Also

ChartDataSeries Class


FitType Property

FitType Property

Gets or sets the curve fit type.

Syntax

[VB]

Public Property FitType As FitTypeEnum

[C#]

public FitTypeEnum FitType { get; set; }

[Delphi]

property FitType: FitTypeEnum;

See Also

ChartDataSeries Class


FillStyle Property (ChartDataSeries)

FillStyle Property (ChartDataSeries)

Gets or sets the fill style of the data series.

Syntax

[VB]

Public Property FillStyle As FillStyle

[C#]

public FillStyle FillStyle { get; set; }

[Delphi]

property FillStyle: FillStyle;

See Also

ChartDataSeries Class


Histogram Property (ChartDataSeries)

Histogram Property (ChartDataSeries)

Gets or sets the ChartHistogram object.

Syntax

[VB]

Public Property Histogram As ChartHistogram

[C#]

public ChartHistogram Histogram { get; set; }

[Delphi]

property Histogram: ChartHistogram;

See Also

ChartDataSeries Class


Label Property

Label Property

Gets or sets the series label.

Syntax

[VB]

Public Property Label As String

[C#]

public String Label { get; set; }

[Delphi]

property Label: string;

Remarks

The series label is displayed in the legend element of the chart, along with appropriate line and symbol styles used to display the series data.

See Also

ChartDataSeries Class


LegendEntry Property

LegendEntry Property

Gets or sets whether the series label appears in the legend.

Syntax

[VB]

Public Property LegendEntry As Boolean

[C#]

public bool LegendEntry { get; set; }

[Delphi]

property LegendEntry: Boolean;

Remarks

Occasionally, it is useful to chart a data series without including the series in the legend. Setting the LegendEntry property to false hides the series entry in the legend.

See Also

ChartDataSeries Class


Length Property

Length Property

Gets the number of data points in the series.

Syntax

[VB]

Public Property Length As Integer

[C#]

public int Length { get; }

[Delphi]

property Length: Integer;

Remarks

The Length property returns the actual number of data points in the series. The length is the maximum number of elements in each of the relevant ChartDataArray objects in the series. ChartDataArray objects of the series are considered relevant only if the object is used to display the current ChartType.

See Also

ChartDataSeries Class


LineStyle Property

LineStyle Property

Gets or sets the line style of the series, including color, thickness and pattern.

Syntax

[VB]

Public Property LineStyle As ChartLineStyle

[C#]

public ChartLineStyle LineStyle { get; set; }

[Delphi]

property LineStyle: ChartLineStyle;

See Also

ChartDataSeries Class


MaxX Property (ChartDataSeries)

MaxX Property (ChartDataSeries)

Returns the maximum X value of the series data.

Syntax

[VB]

Public ReadOnly Property MaxX As Double

[C#]

public double MaxX { get; }

[Delphi]

property MaxX: Double;

Remarks

This property searches the series for the maximum X value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

See Also

ChartDataSeries Class


MaxY Property (ChartDataSeries)

MaxY Property (ChartDataSeries)

Returns the maximum Y value of the series data.

Syntax

[VB]

Public ReadOnly Property MaxY As Double

[C#]

public double MaxY { get; }

[Delphi]

property MaxY: Double;

Remarks

This property searches the series for the maximum Y value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

Note that all Y data arrays are searched, including Y, Y1, Y2, Y3 data arrays.

See Also

ChartDataSeries Class


MinX Property (ChartDataSeries)

MinX Property (ChartDataSeries)

Returns the minimum X value of the series point data array.

Syntax

[VB]

Public ReadOnly Property MinX As Double

[C#]

public double MinX { get; }

[Delphi]

property MinX: Double;

Remarks

This property searches the series for the minimum X value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

See Also

ChartDataSeries Class


MinY Property (ChartDataSeries)

MinY Property (ChartDataSeries)

Returns the minimum Y value of the series point data array.

Syntax

[VB]

Public ReadOnly Property MinY As Double

[C#]

public double MinY { get; }

[Delphi]

property MinY: Double;

Remarks

This property searches the series for the minimum Y value (excluding holes) each time it is called. If the value is to be used repeatedly within a loop, the value should be cached in a local variable.

Note that all Y data arrays are searched, including Y, Y1, Y2, Y3 data arrays.

See Also

ChartDataSeries Class


PlotFilter Property

PlotFilter Property

Gets or sets the plot filter value which optimizes plotting large data arrays. The plot filter value represents the minimal distance from the previous data point in pixels. If distance is less than PlotFilter the point is not plotted. Only for XY-plot.

Syntax

[VB]

Public Property PlotFilter As Integer

[C#]

public int PlotFilter { get; set; }

[Delphi]

property PlotFilter: Integer;

See Also

ChartDataSeries Class


PlotFilterMethod Property

PlotFilterMethod Property

Gets or sets the plot filter method. This property specifies method of

optimization when plotting large data arrays. Only for XY-plot.

Syntax

[VB]

Public Property PlotFilterMethod As PlotFilterMethodEnum

[C#]

public PlotFilterMethodEnum PlotFilterMethod { get; set; }

[Delphi]

property PlotFilterMethod: PlotFilterMethodEnum;

See Also

ChartDataSeries Class


Offset Property (ChartDataSeries)

Offset Property (ChartDataSeries)

Gets or sets the series offset for appropriate charts.

Syntax

[VB]

Public Property Offset As Integer

[C#]

public int Offset { get; set; }

[Delphi]

property Offset: Integer;

Remarks

The meaning, if any, of the series offset can change from chart type to chart type.

See Also

ChartDataSeries Class


PointData Property

PointData Property

Gets the ChartDataArray object that manages point data (combined X and Y data).

Syntax

[VB]

Public ReadOnly Property PointData As ChartDataArray

[C#]

public ChartDataArray PointData { get; }

[Delphi]

property PointData: ChartDataArray;

Remarks

The data managed by the ChartDataArray object referenced by the PointData property is exactly the same data as that manage by the ChartDataArray objects of the X and Y properties. The property is provided as a convenience when working with data obtained as Point or PointF values.

See Also

ChartDataSeries Class


SeriesData Property

SeriesData Property

Gets the current ChartDataSeries object. This property is only intended for use in the property browsers. It is not useful in code.

Syntax

[VB]

Public ReadOnly Property SeriesData As ChartDataSeries

[C#]

public ChartDataSeries SeriesData { get; }

[Delphi]

property SeriesData: ChartDataSeries;

Remarks

As a convenience, all relevant ChartDataSeries data arrays can be edited at the same time in a property browser by editing the SeriesData property. Data arrays are considered relevant only if the array is used to display the current ChartType.

For example, editing SeriesData for an XYPlot would invoke the data editor containing the X and Y data arrays. Editing SeriesData for a Candle chart would invoke the data editor containing the X, Y, Y1, Y2 and Y3 data arrays.

The SeriesData property is intended to be used only within property browsers, as it is merely a placeholder to allow invocation of the editor. The value returned is the object of which it is a part.

See Also

ChartDataSeries Class


SymbolStyle Property

SymbolStyle Property

Gets or sets the symbol style of the series, including color, size and shape.

Syntax

[VB]

Public Property SymbolStyle As ChartSymbolStyle

[C#]

public ChartSymbolStyle SymbolStyle { get; set; }

[Delphi]

property SymbolStyle: ChartSymbolStyle;

See Also

ChartDataSeries Class


Tag Property (ChartDataSeries)

Tag Property (ChartDataSeries)

Gets or sets the Tag property which allows association of user data with the ChartDataSeries.

Syntax

[VB]

Public Property Tag as Object

[C#]

public object Tag {get; set;}

[Delphi]

property Tag: Object;

Remarks

An Object that contains data about the ChartDataSeries. The default is a null reference (nothing in Visual Basic). Any type derived from the Object class can be assigned to this property. If the Tag property is set through the Windows Forms designer, only text may be assigned. A common use for the Tag property is to store data that is closely associated with the series.

See Also

ChartDataSeries Class


TooltipText Property (ChartDataSeries)

TooltipText Property (ChartDataSeries)

Gets or sets the tooltip text of the data series.

Syntax

[VB]

Public Property ToolTipText As String

[C#]

public string ToolTipText { get; set; }

[Delphi]

property ToolTipText: string;

See Also

ChartDataSeries Class


TooltipTextLegend Property (ChartDataSeries)

TooltipTextLegend Property (ChartDataSeries)

Gets or sets the tooltip text of the data series's legend.

Syntax

[VB]

Public Property ToolTipTextLegend As String

[C#]

public string ToolTipTextLegend { get; set; }

[Delphi]

property ToolTipTextLegend: string;

See Also

ChartDataSeries Class


X Property (ChartDataSeries)

X Property (ChartDataSeries)

Gets the ChartDataArray object that manages X data.

Syntax

[VB]

Public ReadOnly Property X As ChartDataArray

[C#]

public ChartDataArray X { get; }

[Delphi]

property X: ChartDataArray;

Remarks

The X property allows manipulation of the series X data alone. The X data managed by the ChartDataArray returned by the X property is the same data managed in the PointData and SeriesData properties.

See Also

ChartDataSeries Class


Y Property (ChartDataSeries)

Y Property (ChartDataSeries)

Gets the ChartDataArray object that manages Y data.

Syntax

[VB]

Public ReadOnly Property Y As ChartDataArray

[C#]

public ChartDataArray Y { get; }

[Delphi]

property Y: ChartDataArray;

Remarks

The Y property allows manipulation of the series Y data alone. The Y data managed by the ChartDataArray returned by the Y property is the same data managed in the PointData and SeriesData properties.

See Also

ChartDataSeries Class


Y1 Property

Y1 Property

Gets the ChartDataArray object that manages Y1 data.

Syntax

[VB]

Public ReadOnly Property Y1 As ChartDataArray

[C#]

public ChartDataArray Y1 { get; }

[Delphi]

property Y1: ChartDataArray;

Remarks

Y1 data is used for Hi-Lo, Hi-Lo-Open-Close, Candle, Bubble, and Gannt charts.

The Y1 data managed by the ChartDataArray returned by the Y1 property is the same data managed by the SeriesData property.

See Also

ChartDataSeries Class


Y2 Property

Y2 Property

Gets the ChartDataArray object that manages Y2 data.

Syntax

[VB]

Public ReadOnly Property Y2 As ChartDataArray

[C#]

public ChartDataArray Y2 { get; }

[Delphi]

property Y2: ChartDataArray;

Remarks

Y2 data is used for Hi-Lo-Open-Close and Candle charts.

The Y2 data managed by the ChartDataArray returned by the Y2 property is the same data managed by the SeriesData property.

See Also

ChartDataSeries Class


Y3 Property

Y3 Property

Gets the ChartDataArray object that manages Y3 data.

Syntax

[VB]

Public ReadOnly Property Y3 As ChartDataArray

[C#]

public ChartDataArray Y3 { get; }

[Delphi]

property Y3: ChartDataArray;

Remarks

Y3 data is used for Hi-Lo-Open-Close and Candle charts.

The Y3 data managed by the ChartDataArray returned by the Y3 property is the same data managed by the SeriesData property.

See Also

ChartDataSeries Class


ChartDataSeries Methods

Clone Method

IsHole Method (ChartDataSeries)


Clone Method

Clone Method

Creates a new series that is a copy of the current series without data.

Syntax

[VB]

Public Function Clone() As Object

[C#]

public object Clone();

[Delphi]

function Clone: Object;

Return Value

An object containing the new ChartDataSeries.

Remarks

The new ChartDataSeries object is not automatically added to the chart.

See Also

ChartDataSeries Class


IsHole Method (ChartDataSeries)

IsHole Method (ChartDataSeries)

Returns true whenever the passed value will be interpreted as a data hole.

Syntax

[VB]

Public Function IsHole (x As Double) As Boolean

[C#]

public bool IsHole (double x);

[Delphi]

function IsHole(x: Double): Boolean;

Return Value

Boolean

Remarks

This method returns the identical value of the same method of the parent ChartData object.

See Also

ChartDataSeries Class


ChartDataSeries Events

DataSeriesChanged Event

PostDraw Event


DataSeriesChanged Event

DataSeriesChanged Event

Syntax

[VB]

Public Event DataSeriesChanged As ChartDataSeriesEventHandler

[C#]

public event ChartDataSeriesEventHandler DataSeriesChanged;

[Delphi]

property DataSeriesChanged: ChartDataSeriesEventHandler;

Event Data

The event handler receives an argument of type ChartDataSeriesEventArgs containing data related to this event. ChartDataSeriesEventArgs class inherits directly from EventArgs and contains no additional properties or methods.

See Also

ChartDataSeries Class


PostDraw Event

PostDraw Event

Occurs after the series was drawn.

Syntax

[VB]

Public Event PostDraw As PostDrawSeriesEventHandler

[C#]

public event PostDrawSeriesEventHandler PostDraw;

[Delphi]

property PostDraw: PostDrawSeriesEventHandler;

Event Data

The event handler receives an argument of type PostDrawSeriesEventArgs containing data related to this event. PostDrawDataSeriesEventArgs class inherits directly from EventArgs and contains no additional properties or methods.

See Also

ChartDataSeries Class


ChartDataSeries Delegates

PostDrawSeriesEventHandler Delegate


PostDrawSeriesEventHandler Delegate

PostDrawSeriesEventHandler Delegate

The Delegate for the ChartDataSeries PostDraw event.

Syntax

[VB]

Public Delegate Sub PostDrawSeriesEventHandler( sender As Object, e As TransformEventArgs)

[C#]

public delegate void PostDrawSeriesEventHandler ( object sender, TransformEventArgs e);

[Delphi]

type PostDrawSeriesEventHandler = procedure(sender: Object, e: TransformEventArgs) of object;

Remarks

The sender object is the Interaction object of the chart.

See Also

ChartDataSeries Class


ChartDataSeriesCollection Class

Syntax

C1.Win.C1Chart.ChartDataSeriesCollection


ChartDataSeriesCollection All Members

ChartDataSeriesCollection Properties

Count | Gets the item count of the collection.
Item Supported by the .NET Compact Framework. | Gets the specified ChartDataSeries from the collection by numeric index.

ChartDataSeriesCollection Methods

Add Supported by the .NET Compact Framework. | Adds the specified ChartDataSeries to the collection.
AddNewSeries Supported by the .NET Compact Framework. | Creates a new ChartDataSeries and appends it to the collection.
Clear | Used by the framework to manipulate the collection. To remove all series, use the RemoveAll method instead.
Insert Supported by the .NET Compact Framework. | Inserts the specified ChartDataSeries in the collection at the specified index.
InsertNewSeries Supported by the .NET Compact Framework. | Creates a new ChartDataSeries and inserts it into the collection at the specified index.
OnInsert | Called whenever a series is added to the collection.
Remove Supported by the .NET Compact Framework. | Removes a series from the collection.
RemoveAll Supported by the .NET Compact Framework | Removes all series from the collection.
RemoveAt | Used by the framework to manipulate the collection. To remove a series, use the Remove method instead.


ChartDataSeriesCollection Properties

Count Property (ChartDataSeriesCollection)

Item Property (ChartDataSeriesCollection)


Count Property (ChartDataSeriesCollection)

Count Property (ChartDataSeriesCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

ChartDataSeriesCollection Class


Item Property (ChartDataSeriesCollection)

Item Property (ChartDataSeriesCollection)

Gets the specified ChartDataSeries from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index as Integer) As ChartDataSeries

[C#]

public ChartDataSeries this[int index] { get; }

[Delphi]

property Item(index: Integer): ChartDataSeries;

See Also

ChartDataSeriesCollection Class


ChartDataSeriesCollection Methods

Add Method (ChartDataSeriesCollection)

AddNewSeries Method

Clear Method (ChartDataSeriesCollection)

Insert Method (ChartDataSeriesCollection)

InsertNewSeries Method

OnInsert Method (ChartDataSeriesCollection)

Remove Method (ChartDataSeriesCollection)

RemoveAll Method (ChartDataSeriesCollection)

RemoveAt Method (ChartDataSeriesCollection)


Add Method (ChartDataSeriesCollection)

Add Method (ChartDataSeriesCollection)

Adds the specified ChartDataSeries to the collection.

Syntax

[VB]

Public Function Add (Series As ChartDataSeries) As Integer

[C#]

public int Add (ChartDataSeries series);

[Delphi]

function Add(series: ChartDataSeries): Integer;

Return Value

Integer

See Also

ChartDataSeriesCollection Class


AddNewSeries Method

AddNewSeries Method

Creates a new ChartDataSeries and appends it to the collection.

Syntax

[VB]

Public Function AddNewSeries () As ChartDataSeries

[C#]

public ChartDataSeries AddNewSeries ();

[Delphi]

function AddNewSeries: ChartDataSeries;

Return Value

ChartDataSeries

Remarks

A reference to the new ChartDataSeries is returned. This method is convenient for adding a new series to the ChartData object, as the returned value can be used to initialize the new series, especially in Visual Basic where it can be the object of a With-With End statement.

See Also

ChartDataSeriesCollection Class


Clear Method (ChartDataSeriesCollection)

Clear Method (ChartDataSeriesCollection)

Used by the framework to manipulate the collection. To remove all series from the collection, use the RemoveAll method instead.

Syntax

[VB]

Public Sub Clear()

[C#]

public void Clear();

[Delphi]

procedure Clear;

Remarks

The Clear method is used by the framework and should not be called directly. Its purpose is to manipulate the collection during editing. Using this method will empty the local collection of references to the chart series, but will have no effect on the chart itself. To empty the chart of all series, use the RemoveAll method.

See Also

ChartDataSeriesCollection Class


Insert Method (ChartDataSeriesCollection)

Insert Method (ChartDataSeriesCollection)

Inserts the specified ChartDataSeries in the collection at the specified index.

Syntax

[VB]

Public Sub Insert (index As Integer, Series As ChartDataSeries)

[C#]

public void Insert (int index, ChartDataSeries series);

[Delphi]

procedure Insert(index: Integer; series: ChartDataSeries);

See Also

ChartDataSeriesCollection Class


InsertNewSeries Method

InsertNewSeries Method

Creates a new ChartDataSeries and inserts it into the collection at the specified index.

Syntax

[VB]

Public Function InsertNewSeries (index As Integer) As ChartDataSeries

[C#]

public ChartDataSeries InsertNewSeries (int index);

[Delphi]

function InsertNewSeries(index: Integer): ChartDataSeries;

Return Value

ChartDataSeries

Remarks

A reference to the new ChartDataSeries is returned. This method is convenient for inserting a new series to the ChartData object, as the returned value can be used to initialize the new series, especially in Visual Basic where it can be the object of a With-With End statement.

See Also

ChartDataSeriesCollection Class


OnInsert Method (ChartDataSeriesCollection)

OnInsert Method (ChartDataSeriesCollection)

Called whenever a series is added to the collection.

Syntax

[VB]

Public Sub OnInsert (index As Integer, value As Object)

[C#]

public void OnInsert (int index, Object value);

[Delphi]

procedure OnInsert(index: Integer; value: Object);

Remarks

The value passed to this method is the inserted ChartDataSeries object. The value can be modified.

See Also

ChartDataSeriesCollection Class


Remove Method (ChartDataSeriesCollection)

Remove Method (ChartDataSeriesCollection)

Removes the specified ChartDataSeries from the collection.

Syntax

[VB]

Public Sub Remove (s As ChartDataSeries)

[C#]

public void Remove (ChartDataSeries s);

[Delphi]

procedure Remove(s: ChartDataSeries);

See Also

ChartDataSeriesCollection Class


RemoveAll Method (ChartDataSeriesCollection)

RemoveAll Method (ChartDataSeriesCollection)

Removes all series from the collection.

Syntax

[VB]

Public Sub RemoveAll()

[C#]

public void RemoveAll()

[Delphi]

procedure RemoveAll;

See Also

ChartDataSeriesCollection Class


RemoveAt Method (ChartDataSeriesCollection)

RemoveAt Method (ChartDataSeriesCollection)

Used by the framework to manipulate the collection. To remove a series, use the Remove method instead.

Syntax

[VB]

Public Sub RemoveAt()

[C#]

public void RemoveAt()

[Delphi]

procedure RemoveAt;

See Also

ChartDataSeriesCollection Class


ChartGridStyle Class

Syntax

C1.Win.C1Chart.ChartGridStyle


ChartGridStyle All Members

ChartGridStyle Properties

AutoSpace Supported by the .NET Compact Framework. | Gets or sets automatic gridline spacing calculation.
Color Supported by the .NET Compact Framework. | Gets or sets the color of the line.
Pattern Supported by the .NET Compact Framework. | Gets or sets the pattern of the line.
Spacing Supported by the .NET Compact Framework. | Gets or sets gridline spacing in data coordinate units.
Thickness | Gets or sets the thickness of the line in pixels.
Visible Supported by the .NET Compact Framework. | Gets or sets the gridline visibility.


ChartGridStyle Properties

AutoSpace Property

Color Property (ChartGridStyle)

Pattern Property (ChartGridStyle)

Spacing Property

Thickness Property (ChartGridStyle)

Visible Property (ChartGridStyle)


AutoSpace Property

AutoSpace Property

Gets or sets automatic gridline spacing calculation.

Syntax

[VB]

Public Property AutoSpace As Boolean

[C#]

public bool AutoSpace { get; set; }

[Delphi]

property AutoSpace: Boolean;

See Also

ChartGridStyle Class


Color Property (ChartGridStyle)

Color Property (ChartGridStyle)

Gets or sets the color of the line.

Syntax

[VB]

Public Property Color As Color

[C#]

public Color Color { get; set; }

[Delphi]

property Color: Color;

See Also

ChartGridStyle Class


Pattern Property (ChartGridStyle)

Pattern Property (ChartGridStyle)

Gets or sets the pattern of the line.

Syntax

[VB]

Public Property Pattern As LinePatternEnum

[C#]

public LinePatternEnum Pattern { get; set; }

[Delphi]

property Pattern: LinePatternEnum;

See Also

ChartGridStyle Class


Spacing Property

Spacing Property

Gets or sets gridline spacing in data coordinate units.

Syntax

[VB]

Public Property Spacing As Single

[C#]

public float Spacing { get; set; }

[Delphi]

property Spacing: single;

See Also

ChartGridStyle Class


Thickness Property (ChartGridStyle)

Thickness Property (ChartGridStyle)

Gets or sets the thickness of the line in pixels.

Syntax

[VB]

Public Property Thickness As Integer

[C#]

public int Thickness { get; set; }

[Delphi]

property Thickness: Integer;

See Also

ChartGridStyle Class


Visible Property (ChartGridStyle)

Visible Property (ChartGridStyle)

Gets or sets the gridline visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

ChartGridStyle Class


ChartGroup Class

Syntax

C1.Win.C1Chart.ChartGroup


ChartGroup All Members

ChartGroup Properties

Bar Supported by the .NET Compact Framework. | Gets or sets the Bar object.
Bubble Supported by the .NET Compact Framework. | Gets or sets the Bubble object.
ChartData Supported by the .NET Compact Framework. | Gets the ChartData object.
ChartType Supported by the .NET Compact Framework. | Gets or sets the type of chart to display.
DrawingOrder Supported by the .NET Compact Framework. | Gets or sets the drawing order of a ChartGroup.
Gantt | Gets or sets the Gantt object.
HiLoData Supported by the .NET Compact Framework. | Gets or sets the HiLoData object.
Histogram | Gets or set the Histogram object.
Is100Percent | Gets or sets whether a stacked ChartGroup is 100 percent of the chart.
LegendReversed | Determines the order in which the series entries of each ChartGroup appear in the Legend.
Name Supported by the .NET Compact Framework. | Gets or sets the name of the ChartGroup.
Pie Supported by the .NET Compact Framework. | Gets or sets the Pie object.
Polar Supported by the .NET Compact Framework. | Gets or sets the Polar object.
Radar Supported by the .NET Compact Framework. | Gets or sets the Radar object.
ShowOutline Supported by the .NET Compact Framework. | Gets or sets whether figures drawn should be outlined in the PlotArea ForeColor.
Stacked Supported by the .NET Compact Framework. | Gets or sets whether the chart should stack the data (for appropriate chart types).
Use3D Supported by the .NET Compact Framework. | Gets or sets whether 3D effects are used for charting the data in the ChartGroup.
Visible | Gets or sets whether ChartGroup is visible.

ChartGroup Methods

CoordToDataCoord Supported by the .NET Compact Framework. | Calculates the data coordinates of a point in the PlotArea given chart client coordinates.
CoordToDataIndex Supported by the .NET Compact Framework. | Returns series and point indices and distance to the closest data point in the group given.
CoordToPointIndex | Returns point index and distance to the closest data element of the specified series in the group given client coordinates.
CoordToSeriesIndex | Returns series index and distance to the closest data element in the group given client coordinates.
DataCoordToCoord Supported by the .NET Compact Framework. | Calculates the client coordinates of a point in the PlotArea given data coordinates.
DataIndexToCoord Supported by the .NET Compact Framework. | Returns the client coordinates of the specified point.
DataIndexToRect | Returns the minimal Rectangle circumscribing the specified point.


ChartGroup Properties

Bar Property

Bubble Property

ChartData Property

ChartType Property

DrawingOrder Property

Gantt Property

HiLoData Property

Histogram Property (ChartGroup)

Is100Percent Property

LegendReversed Property

Name Property (ChartGroup)

Pie Property

Polar Property

Radar Property

ShowOutline Property

Stacked Property

Use3D Property

Visible Property


Bar Property

Bar Property

Gets or sets the Bar object.

Syntax

[VB]

Public Property Bar As Bar

[C#]

public Bar Bar { get; set; }

[Delphi]

property Bar: Bar;

Remarks

The Bar object contains properties specific to Bar charts.

See Also

ChartGroup Class


Bubble Property

Bubble Property

Gets or sets the Bubble object.

Syntax

[VB]

Public Property Bubble As Bubble

[C#]

public Bubble Bubble { get; set; }

[Delphi]

property Bubble: Bubble;

Remarks

The Bubble object contains properties specific to Bubble charts.

See Also

ChartGroup Class


ChartData Property

ChartData Property

Gets the ChartData object.

Syntax

[VB]

Public ReadOnly Property ChartData As ChartData

[C#]

public ChartData ChartData { get; }

[Delphi]

property ChartData: ChartData;

Remarks

The ChartData object contains the numerical series to be charted and display information for each series.

See Also

ChartGroup Class


ChartType Property

ChartType Property

Gets or sets the type of chart to display.

Syntax

[VB]

Public Property ChartType As Chart2DTypeEnum

[C#]

public Chart2DTypeEnum ChartType { get; set; }

[Delphi]

property ChartType: Chart2DTypeEnum;

See Also

ChartGroup Class


DrawingOrder Property

DrawingOrder Property

Gets or sets the drawing order of a ChartGroup.

Syntax

[VB]

Public Property DrawingOrder As Integer

[C#]

public int DrawingOrder { get; set; }

[Delphi]

property DrawingOrder: Integer;

Remarks

The lower the drawing number, the later the group is drawn. When a group is drawn later, it appears on top of those group(s) drawn before it. Please note, that changing the drawing order of a group, changes its index in the ChartGroupsCollection.

See Also

ChartGroup Class


Gantt Property

Gantt Property

Gets or sets the Gantt object.

Syntax

[VB]

Public Property Gantt As Gantt

[C#]

public Gantt Gantt { get; set; }

[Delphi]

property Gantt : Gantt;

Remarks

The Gantt object contains properties specific to Gantt chart types.

See Also

ChartGroup Class


HiLoData Property

HiLoData Property

Gets or sets the HiLoData object.

Syntax

[VB]

Public Property HiLoData As HiLoData

[C#]

public HiLoData HiLoData { get; set; }

[Delphi]

property HiLoData: HiLoData;

Remarks

The HiLoData object contains properties specific to Hi-Lo chart types, including Hi-Lo, Hi-Lo-Open-Close and Candle charts.

See Also

ChartGroup Class


Histogram Property (ChartGroup)

Histogram Property (ChartGroup)

Gets or sets the Histogram object.

Syntax

[VB]

Public Property Histogram As Histogram

[C#]

public Histogram Histogram { get; set; }

[Delphi]

property Histogram: Histogram;

Remarks

The Histogram object contains properties specific to Histogram charts.

See Also

ChartGroup Class


Is100Percent Property

Is100Percent Property

Gets or sets whether a stacked ChartGroup is 100 percent of the chart.

Syntax

[VB]

Public Property Is100Percent As Integer

[C#]

public int Is100Percent { get; set; }

[Delphi]

property Is100Percent: Integer;

Remarks

If Is100Percent is set to true, then stacked bar charts and stacked area charts span the entire Y axis or Y2 axis with each contributing Y value maintaining the same fraction of the whole.

See Also

ChartGroup Class


LegendReversed Property

LegendReversed Property

Determines the order in which the series entries of each ChartGroup appear in the legend.

Syntax

[VB]

Public Property LegendReversed As Boolean

[C#]

public bool LegendReversed { get; set; }

[Delphi]

property LegendReversed: Boolean;

Remarks

The series of each ChartGroup normally appear in index order in the legend. If the LegendReversed property is true, then the series entries for the ChartGroup appear in reversed order.

See Also

ChartGroup Class


Name Property (ChartGroup)

Name Property (ChartGroup)

Gets or sets the name of the ChartGroup.

Syntax

[VB]

Public Property Name As String

[C#]

public String Name { get; set; }

[Delphi]

property Name: string;

Remarks

Used for indexing and identification.

See Also

ChartGroup Class


Pie Property

Pie Property

Gets or sets the Pie object.

Syntax

[VB]

Public Property Pie As Pie

[C#]

public Pie Pie { get; set; }

[Delphi]

property Pie: Pie;

Remarks

The Pie object contains properties specific to Pie charts.

See Also

ChartGroup Class


Polar Property

Polar Property

Gets or sets the Polar object.

Syntax

[VB]

Public Property Polar As Polar

[C#]

public Polar Polar { get; set; }

[Delphi]

property Polar: Polar;

Remarks

The Polar object contains properties specific to Polar charts.

See Also

ChartGroup Class


Radar Property

Radar Property

Gets or sets the Radar object.

Syntax

[VB]

Public Property Radar As Radar

[C#]

public Radar Radar { get; set; }

[Delphi]

property Radar: Radar;

Remarks

The Radar object contains properties specific to Radar charts.

See Also

ChartGroup Class


ShowOutline Property

ShowOutline Property

Gets or sets whether figures drawn should be outlined in the PlotArea ForeColor.

Syntax

[VB]

Public Property ShowOutline As Boolean

[C#]

public bool ShowOutline { get; set; }

[Delphi]

property ShowOutline: Boolean;

Remarks

Such figures include Bars, Pies, Areas, etc.

See Also

ChartGroup Class


Stacked Property

Stacked Property

Gets or sets whether the chart should stack the data (for appropriate chart types).

Syntax

[VB]

Public Property Stacked As Boolean

[C#]

public bool Stacked { get; set; }

[Delphi]

property Stacked: Boolean;

See Also

ChartGroup Class


Use3D Property

Use3D Property

Gets or sets whether 3D effects are used for charting the data in the ChartGroup.

Syntax

[VB]

Public Property Use3D As Boolean

[C#]

public bool Use3D { get; set; }

[Delphi]

property Use3D: Boolean;

Remarks

If View3D data contains non-zero values for Depth, Rotation and Elevation, 3D effects are added to various charts, including Area, Bar, Pie and XYPlot charts. However, the Use3D property for a ChartGroup can override the use of 3D effects, allowing one group to be presented with 3D effects and the other group to be charted without 3D effects.

See Also

ChartGroup Class


Visible Property

Visible Property

Gets or sets whether ChartGroup is visible.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

ChartGroup Class


ChartGroup Methods

CoordToDataCoord Method

CoordToDataIndex Method

CoordToPointIndex Method

CoordToSeriesIndex Method

DataCoordToCoord Method

DataIndexToCoord Method

DataIndexToRect Method


CoordToDataCoord Method

CoordToDataCoord Method

Calculates the data coordinates of a point in the PlotArea given chart client coordinates.

Syntax

[VB]

Public Function CoordToDataCoord (XCoord As Integer, YCoord As Integer, _

ByRef XDataCoord As Single ByRef YDataCoord As Single) As Boolean

Public Function CoordToDataCoord (XCoord As Integer, YCoord As Integer, _

ByRef XDataCoord As Double ByRef YDataCoord As Double) As Boolean

[C#]

public bool CoordToDataCoord (int XCoord, int YCoord,

ref float XDataCoord, ref float YDataCoord);

public bool CoordToDataCoord (int XCoord, int YCoord,

ref double XDataCoord, ref double YDataCoord);

[Delphi]

function CoordToDataCoord(XCoord: Integer; YCoord: Integer; XDataCoord: single; YDataCoord: single): Boolean;

function CoordToDataCoord(XCoord: Integer; YCoord: Integer; XDataCoord: Double; YDataCoord: Double): Boolean;

Return Value

Boolean

Remarks

Mouse coordinates are given in client coordinates. The return value indicates successful calculation.

See Also

ChartGroup Class


CoordToDataIndex Method

CoordToDataIndex Method

Returns series and point indices and distance to the closest data point in the group given client coordinates.

Syntax

[VB]

Public Function CoordToDataIndex (XCoord As Integer, YCoord As Integer, _

focus As CoordinateFocusEnum, ByRef SeriesIndex As Integer, _

ByRef PointIndex As Integer, ByRef Distance As Integer) As Boolean

[C#]

public bool CoordToDataIndex (int XCoord, int YCoord, CoordinateFocusEnum focus, ref_ int SeriesIndex, ref int PointIndex, ref int Distance);

[Delphi]

function CoordToDataIndex(XCoord:
Integer; YCoord: Integer; focus: CoordinateFocusEnum; SeriesIndex: Integer;
PointIndex: Integer; Distance: Integer): Boolean;

Return Value

Boolean

Remarks

Mouse coordinates are given in client coordinates. The return value indicates successful calculation.

See Also

ChartGroup Class


CoordToPointIndex Method

CoordToPointIndex Method

Returns point index and distance to the closest data element of the specified series in the group given client coordinates.

Syntax

[VB]

Public Function CoordToPointIndex (ByVal XCoord As Integer, ByVal YCoord As Integer, _ ByVal element As PlotElementEnum, ByVal SeriesIndex As Integer, ByRef PointIndex As Integer, ByRef Distance As Integer) As Boolean

[C#]

public bool CoordToPointIndex (int XCoord, int YCoord, PlotElementEnum element, int SeriesIndex, ref int PointIndex, ref int Distance);

[Delphi]

function CoordToPointIndex (XCoord: Integer; YCoord: Integer; element: PlotElementEnum; SeriesIndex: Integer; PointIndex: Integer; Distance: Integer): Boolean;

Return Value

Boolean

Remarks

Mouse coordinates are given in client coordinates. The return value indicates successful calculation.

See Also

ChartGroup Class


CoordToSeriesIndex Method

CoordToSeriesIndex Method

Returns series index and distance to the closest data element in the group given client coordinates.

Syntax

[VB]

Public Function CoordToSeriesIndex (ByVal XCoord As Integer, ByVal YCoord As Integer, ByVal element As PlotElementEnum, ByVal SeriesIndex As Integer, ByRef Distance As Integer) As Boolean

[C#]

public bool CoordToPointIndex (int XCoord, int YCoord, PlotElementEnum element, int SeriesIndex, ref int Distance);

[Delphi]

function CoordToPointIndex (XCoord: Integer; YCoord: Integer; element: PlotElementEnum; SeriesIndex: Integer; Distance: Integer): Boolean;

Return Value

Boolean

Remarks

Mouse coordinates are given in client coordinates. The return value indicates successful calculation.

See Also

ChartGroup Class


DataCoordToCoord Method

DataCoordToCoord Method

Calculates the client coordinates of a point in the PlotArea given data coordinates.

Syntax

[VB]

Public Function DataCoordToCoord (XDataCoord As Double, YDataCoord As Double, _

ByRef XCoord As Integer, ByRef YCoord As Integer) As Boolean

Public Function DataCoordToCoord (XDataCoord As Double, YDataCoord As Double, _

ByRef XCoord As Single, ByRef YCoord As Single) As Boolean

[C#]

public bool DataCoordToCoord (double XDataCoord, double YDataCoord, ref int XCoord, ref int YCoord);

public bool DataCoordToCoord (double XDataCoord, double YDataCoord, ref float XCoord,_ ref float YCoord);

[Delphi]

function DataCoordToCoord(XDataCoord: Double; YDataCoord: Double; XCoord: Integer; YCoord: Integer): Boolean;

function DataCoordToCoord(XDataCoord: Double; YDataCoord: Double; XCoord: Single; YCoord: Single): Boolean;

Return Value

Boolean

Remarks

Mouse coordinates are given in client coordinates. The return value indicates successful calculation.

See Also

ChartGroup Class


DataIndexToCoord Method

DataIndexToCoord Method

Returns the client coordinates of the specified point.

Syntax

[VB]

Public Function DataIndexToCoord (SeriesIndex As Integer, _

PointIndex As Integer, _

ByRef XCoord As Integer, YCoord As Integer) As Boolean

[C#]

public bool DataIndexToCoord (int SeriesIndex, int PointIndex, ref int XCoord, ref int_ YCoord);

[Delphi]

function DataIndexToCoord(SeriesIndex: Integer; PointIndex: Integer; XCoord: Integer; YCoord: Integer): Boolean;

Return Value

Boolean

Remarks

Mouse coordinates are given in client coordinates. The return value indicates successful calculation.

See Also

ChartGroup Class


DataIndexToRect Method

DataIndexToRect Method

Returns the minimal Rectangle circumscribing the specified point.

Syntax

[VB]

Public Function DataIndexToRect(SeriesIndex As Integer, Point Index As Integer) As Rectangle

[C#]

public Rectangle DataIndexToRect(int SeriesIndex, int PointIndex);

[Delphi]

function DataIndexToRect(SeriesIndex: Integer; PointIndex: Integer): Rectangle;

Return Value

Boolean

Remarks

The return value is the smallest Rectangle that circumscribes the symbol of the data point. Note that this method is not implemented for all chart types.

See Also

ChartGroup Class


ChartGroups Class

Syntax

C1.Win.C1Chart.ChartGroups


ChartGroups All Members

ChartGroups Properties

ChartGroupsCollection Supported by the .NET Compact Framework. | Gets the collection of ChartGroup objects.
Count Supported by the .NET Compact Framework. | Gets the number of ChartGroups.
Group0 Supported by the .NET Compact Framework. | Gets the foreground ChartGroup from the contained collection.
Group1 Supported by the .NET Compact Framework. | Gets the background ChartGroup from the contained collection.
Item Supported by the .NET Compact Framework. | Gets the specified ChartGroup by numeric index.


ChartGroups Properties

ChartGroupsCollection Property

Count Property (ChartGroups)

Group0 Property

Group1 Property

Item Property (ChartGroups)


ChartGroupsCollection Property

ChartGroupsCollection Property

Gets the collection of ChartGroup objects.

Syntax

[VB]

Public ReadOnly Property ChartGroupsCollection As ChartGroupsCollection

[C#]

public ChartGroupsCollection ChartGroupsCollection { get; }

[Delphi]

property ChartGroupsCollection: ChartGroupsCollection;

Remarks

The ChartGroupsCollection is provided to allow enumeration of all ChartGroups within a loop. It contains the same ChartGroups as referenced by the Group0 and Group1 properties.

See Also

ChartGroups Class


Count Property (ChartGroups)

Count Property (ChartGroups)

Gets the number of ChartGroups.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

ChartGroups Class


Group0 Property

Group0 Property

Gets the foreground ChartGroup from the contained collection.

Syntax

[VB]

Public ReadOnly Property Group0 As ChartGroup

[C#]

public ChartGroup Group0 { get; }

[Delphi]

property Group0: ChartGroup;

Remarks

Group0 or the default foreground ChartGroup is the first ChartGroup in the ChartGroupsCollection.

See Also

ChartGroups Class


Group1 Property

Group1 Property

Gets the background ChartGroup from the contained collection.

Syntax

[VB]

Public ReadOnly Property Group1 As ChartGroup

[C#]

public ChartGroup Group1 { get; }

[Delphi]

property Group1: ChartGroup;

Remarks

Group1 or the default background ChartGroup is the last ChartGroup in the ChartGroupsCollection.

See Also

ChartGroups Class


Item Property (ChartGroups)

Item Property (ChartGroups)

Gets the specified ChartGroup by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As ChartGroup

[C#]

public ChartGroup this[int index] { get; }

[Delphi]

property Item(index: Integer): ChartGroup;

See Also

ChartGroups Class


ChartGroupsCollection Class

Syntax

C1.Win.C1Chart.ChartGroupsCollection


ChartGroupsCollection All Members

ChartGroupsCollection Properties

Count Supported by the .NET Compact Framework. | Gets the number of members in the collection.
Item Supported by the .NET Compact Framework. | Gets the specified ChartGroup by numeric index.


ChartGroupsCollection Properties

Count Property (ChartGroupsCollection)

Item Property (ChartGroupsCollection)


Count Property (ChartGroupsCollection)

Count Property (ChartGroupsCollection)

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

ChartGroupsCollection Class


Item Property (ChartGroupsCollection)

Item Property (ChartGroupsCollection)

Gets the specified ChartGroup by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As ChartGroup

[C#]

public ChartGroup this[int index] { get; }

[Delphi]

property Item(index: Integer): ChartGroup;

See Also

ChartGroupsCollection Class


ChartHistogram Class

Syntax

C1.Win.C1Chart.ChartHistogram


ChartHistogram All Members

ChartHistogram Properties

AboveIntervalCount | Gets the numeric count of values greater than the last interval.
BelowIntervalCount | Gets the numeric count of values less than the first interval.
DisplayType | Gets or sets the method used to display the frequency data.
IntervalBounds | Gets the boundary values of each interval used for the histogram.
IntervalCounts | Gets the numeric count of values in each interval.
IntervalCreationMethod | Gets or sets the method used to specify the histogram intervals.
IntervalNumber | Gets or sets the number of intervals in the histogram.
IntervalStart | Gets or sets the numeric value of the beginning of the first interval.
IntervalWidth | Gets or sets the numeric value of the beginning of the first interval.


ChartHistogram Properties

AboveIntervalCount Property

BelowIntervalCount Property

DisplayType Property

IntervalBounds Property

IntervalCounts Property

IntervalCreationMethod Property

IntervalNumber Property

IntervalStart Property

IntervalWidth Property


AboveIntervalCount Property

AboveIntervalCount Property

Gets the numeric count of values greater than the last interval.

Syntax

[VB]

Public ReadOnly Property AboveIntervalCount() As Double

[C#]

public double AboveIntervalCount [ get;]

[Delphi]

Property AboveIntervalCount: Double;

Remarks

Sometimes a data distribution will contain values that do not fall into any of the specified intervals of a histogram. The number of values numerically greater than the ending value of the last interval are returned by the AboveIntervalCount property.

See Also

ChartHistogram Class


BelowIntervalCount Property

BelowIntervalCount Property

Gets the numeric count of values less than the first interval.

Syntax

[VB]

Public ReadOnly Property BelowIntervalCount() As Double

[C#]

public double BelowIntervalCount [ get;]

[Delphi]

Property BelowIntervalCount: Double;

Remarks

Sometimes a data distribution will contain values that do not fall into any of the specified intervals of a histogram. The number of values numerically less than the starting value of the first interval are returned by the BelowIntervalCount property.

See Also

ChartHistogram Class


DisplayType Property

DisplayType Property

Gets or sets the method used to display the frequency data.

Syntax

[VB]

Public Property DisplayType() As DisplayTypeEnum

[C#]

public DisplayTypeEnum DisplayType [ get;set; ]

[Delphi]

Property DisplayType: DisplayTypeEnum;

Remarks

Frequency data can be displayed in a different manner on a per series basis, making it possible to mix display types in a single chart group.

See Also

ChartHistogram Class


IntervalBounds Property

IntervalBounds Property

Gets the boundary values of each interval used for the histogram.

Syntax

[VB]

Public ReadOnly Property IntervalBounds() As Double()

[C#]

public double[] IntervalBounds [ get; ]

[Delphi]

Property IntervalBounds: DisplayTypeEnum;

Remarks

The IntervalBounds property returns a double array containing the ascending values used for the boundaries of the histogram intervals, regardless of the IntervalCreationMethod used to generate the histogram. The number of elements in the array is necessarily one more than the number of intervals.

See Also

ChartHistogram Class


IntervalCounts Property

IntervalCounts Property

Gets the numeric count of values in each interval.

Syntax

[VB]

Public ReadOnly Property IntervalCounts() As Double()

[C#]

public double[] IntervalCounts [ get; ]

[Delphi]

Property IntervalCounts: Double;

Remarks

The IntervalCounts property returns a double array containing the count of values that fall within the specified intervals. The number of elements in the array is necessarily one less than the number of interval boundaries.

See Also

ChartHistogram Class


IntervalCreationMethod Property

IntervalCreationMethod Property

Gets or sets the method used to specify the histogram intervals.

Syntax

[VB]

Public Property IntervalCreationMethod() As IntervalMethodEnum

[C#]

public property IntervalMethodEnum IntervalCreationMethod [ get; set;]

[Delphi]

Property IntervalCreationMethod: IntervalMethodEnum;

Remarks

Interval boundaries can be established in a variety of ways. When the Automatic method is used, the chart calculates the upper and lower limits of the intervals using the maximum and minimum data values, and restricting the intervals to lie within 3 standard deviations of the data mean. The number of intervals is optional. Interval boundaries are calculated uniformly.

When the SemiAutomatic method is used, the upper and lower limits of the intervals are specified together with the number of intervals. Interval boundaries are calculated uniformly.

When the XDataBoundaries method is used, the X values of the data data series are used to explicitly set each interval boundary. The X values are sorted and duplicate values are eliminated. Each ascending value of the result is used determine the next interval boundary. Thus, the first and second resulting X values define the first interval and each successive X value specifies the end of the next interval. Note that specification of N intervals requires N+1 unique X values.

See Also

ChartHistogram Class


IntervalNumber Property

IntervalNumber Property

Gets or sets the number of intervals in the histogram.

Syntax

[VB]

Public Property IntervalNumber() As Integer

[C#]

public int IntervalNumber [ get; set; ]

[Delphi]

Property IntervalNumber: Integer;

Remarks

The IntervalNumber property applies only to histograms created with Automatic and SemiAutomatic methods. When the XDataBoundaries method is used, the number of intervals is defined as 1 less than the number of unique X values specified.

See Also

ChartHistogram Class


IntervalStart Property

IntervalStart Property

Gets or sets the numeric value of the beginning of the first interval.

Syntax

[VB]

Public Property IntervalStart( ) As Double

[C#]

public double IntervalStart [ get; set; ]

[Delphi]

Property IntervalStart: Double;

Remarks

Applies only to the SemiAutomatic creation method.

See Also

ChartHistogram Class


IntervalWidth Property

IntervalWidth Property

Gets or sets the numeric value of the width of the each interval.

Syntax

[VB]

Public Property IntervalWidth( ) As Double

[C#]

public double IntervalWidth [ get; set; ]

[Delphi]

Property IntervalWidth: Double;

Remarks

Applies only to the SemiAutomatic creation method.

See Also

ChartHistogram Class


ChartLabels Class

Syntax

C1.Win.C1Chart.ChartLabels


ChartLabels All Members

ChartLabels Properties

AutoArrangement | Gets the AutoLabelArrangement object which controls label arrangement.
LabelsCollection Supported by the .NET Compact Framework. | Gets the LabelsCollection.
DefaultLabelStyle Supported by the .NET Compact Framework. | Gets the DefaultLabelStyle.
Item Supported by the .NET Compact Framework. | Gets the LabelsCollection.

ChartLabels Methods

LabelFromCoord
Supported by the .NET Compact Framework.

Used to obtain the LabelIndex at the specified coordinate.


ChartLabels Properties

AutoArrangement Property

LabelsCollection Property (ChartLabels)

DefaultLabelStyle Property

Item Property (ChartLabels)


AutoArrangement Property

AutoArrangement Property

Gets the AutoLabelArrangement object which controls label arrangement.

Syntax

[VB]

Public ReadOnly Property AutoArrangement As AutoLabelArrangement

[C#]

public AutoLabelArrangement AutoArrangement [ get;]

[Delphi]

Property AutoArrangement: AutoLabelArrangement;

See Also

ChartLabels Class


LabelsCollection Property (ChartLabels)

LabelsCollection Property (ChartLabels)

Gets the LabelsCollection.

Syntax

[VB]

Public ReadOnly Property LabelsCollection As LabelsCollection

[C#]

public LabelsCollection LabelsCollection { get; }

[Delphi]

property LabelsCollection: LabelsCollection;

See Also

ChartLabels Class


DefaultLabelStyle Property

DefaultLabelStyle Property

Gets the DefaultLabelStyle.

Syntax

[VB]

Public ReadOnly Property DefaultLabelStyle As Style

[C#]

public Style DefaultLabelStyle { get; }

[Delphi]

property DefaultLabelStyle: Style;

Remarks

All labels inherit from this Style.

See Also

ChartLabels Class


Item Property (ChartLabels)

Item Property (ChartLabels)

Gets the specified label from the collection by numerical index or label text.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As Label

Default Public ReadOnly Property Item(text As String) As Label

[C#]

public Label this[int index] { get; }

public Label this[string text] { get; }

[Delphi]

property Item(index: Integer): Label;

property Item(index: string): Label;

See Also

ChartLabels Class


ChartLabels Methods

LabelFromCoord Method (ChartLabels)


LabelFromCoord Method (ChartLabels)

LabelFromCoord Method (ChartLabels)

Used to obtain the LabelIndex at the specified coordinate.

Syntax

[VB]

Public Function LabelFromCoord (XCoord As Integer, YCoord As Integer, _

ByRef LabelIndex As Integer) As Boolean

[C#]

public bool LabelFromCoord (int XCoord, int YCoord, ref int LabelIndex);

[Delphi]

function LabelFromCoord(XCoord: Integer; YCoord: Integer; LabelIndex: Integer): Boolean;

Return Value

Boolean

Remarks

Returns true if a label is present at the specified coordinates.

See Also

ChartLabels Class


ChartLineStyle Class

Syntax

C1.Win.C1Chart.ChartLineStyle


ChartLineStyle All Members

ChartLineStyle Properties

Color Supported by the .NET Compact Framework. | Gets or sets the color of the line.
Pattern Supported by the .NET Compact Framework. | Gets or sets the pattern of the line.
Thickness Supported by the .NET Compact Framework. | Gets or sets the thickness of the line in pixels.


ChartLineStyle Properties

Color Property (ChartLineStyle)

Pattern Property (ChartLineStyle)

Thickness Property (ChartLineStyle)


Color Property (ChartLineStyle)

Color Property (ChartLineStyle)

Gets or sets the color of the line.

Syntax

[VB]

Public Property Color As Color

[C#]

public Color Color { get; set; }

[Delphi]

property Color: Color;

Remarks

When ChartLineStyle colors are created automatically, a color that does not match the PlotArea BackColor is selected.

See Also

ChartLineStyle Class


Pattern Property (ChartLineStyle)

Pattern Property (ChartLineStyle)

Gets or sets the pattern of the line.

Syntax

[VB]

Public Pattern As LinePatternEnum

[C#]

public LinePatternEnum Pattern { get; set; }

[Delphi]

property Pattern: LinePatternEnum;

See Also

ChartLineStyle Class


Thickness Property (ChartLineStyle)

Thickness Property (ChartLineStyle)

Gets or sets the thickness of the line in pixels.

Syntax

[VB]

Public Property Thickness As Integer

[C#]

public int Thickness { get; set; }

[Delphi]

property Thickness: Integer;

See Also

ChartLineStyle Class


ChartSymbolStyle Class

Syntax

C1.Win.C1Chart.ChartSymbolStyle


ChartSymbolStyle All Members

ChartSymbolStyle Properties

Color Supported by the .NET Compact Framework. | Gets or sets the color of the data point symbol.
OutlineColor | Gets or sets the outline color of the data point symbol.
OutlineWidth | Gets or sets the outline width of the data point symbol.
Shape Supported by the .NET Compact Framework. | Gets or sets the shape of the data point symbol.
Size Supported by the .NET Compact Framework. | Gets or sets the size of the data point symbol.


ChartSymbolStyle Properties

Color Property (ChartSymbolStyle)

OutlineColor Property (ChartSymbolStyle)

OutlineWidth Property (ChartSymbolStyle)

Shape Property (ChartSymbolStyle)

Size Property (ChartSymbolStyle)


Color Property (ChartSymbolStyle)

Color Property (ChartSymbolStyle)

Gets or sets the color of the data point symbol.

Syntax

[VB]

Public Property Color As Color

[C#]

public Color Color { get; set; }

[Delphi]

property Color: Color;

Remarks

When ChartSymbolStyle colors are created automatically, a color that does not match the PlotArea BackColor is selected.

See Also

ChartSymbolStyle Class


OutlineColor Property (ChartSymbolStyle)

OutlineColor Property (ChartSymbolStyle)

Gets or sets the outline color of the data point symbol.

Syntax

[VB]

Public Property OutlineColor As Color

[C#]

public Color OutlineColor {get; set;}

[Delphi]

property OutlineColor: Color;

See Also

ChartSymbolStyle Class


OutlineWidth Property (ChartSymbolStyle)

OutlineWidth Property (ChartSymbolStyle)

Gets or sets the outline width of the data point symbol.

Syntax

[VB]

Public Property OutlineWidth As Integer

[C#]

public int OutlineWidth {get; set;}

[Delphi]

property OutlineWidth: Integer;

Remarks

OutlineWidth should not exceed symbol size. If the outline width is greater than the symbol size, the symbol size is used as the outline width when drawing the symbol.

See Also

ChartSymbolStyle Class


Shape Property (ChartSymbolStyle)

Shape Property (ChartSymbolStyle)

Gets or sets the shape of the data point symbol.

Syntax

[VB]

Public Property Shape As SymbolShapeEnum

[C#]

public SymbolShapeEnum Shape { get; set; }

[Delphi]

property Shape: SymbolShapeEnum;

See Also

ChartSymbolStyle Class


Size Property (ChartSymbolStyle)

Size Property (ChartSymbolStyle)

Gets or sets the size of the data point symbol.

Syntax

[VB]

Public Property Size As Integer

[C#]

public int Size { get; set; }

[Delphi]

property Size: Integer;

See Also

ChartSymbolStyle Class


ChartToolTip Class

This class contains the settings for the tooltip.

Syntax

C1.Win.C1Chart.ChartToolTip


ChartToolTip All Members

ChartToolTip Properties

AutomaticDelay | Gets or sets the automatic delay for the ToolTip.
AutoPopDelay | Gets or sets the period of time the tooltip remains visible if the mouse pointer is stationary within an area with specified tooltip text.
Enabled | Gets or sets a value indicating whether the tooltip is enabled.
InitialDelay | Gets or sets the time that passes before the tooltip appears.
PlotElement | Gets or sets the plot element.
ReshowDelay | Gets or sets the length of time that must transpire before subsequent tooltip windows appear as the mouse pointer moves from one area to another.
SelectAction | Gets or sets the action associated with a tooltip.


ChartToolTip Properties

AutomaticDelay Property (ChartToolTip)

AutoPopDelay Property (ChartToolTip)

Enabled Property (ChartToolTip)

InitialDelay Property (ChartToolTip)

PlotElement Property (ChartToolTip)

ReshowDelay Property (ChartToolTip)

ReshowDelay Property (ChartToolTip)

SelectAction Property (ChartToolTip)


AutomaticDelay Property (ChartToolTip)

AutomaticDelay Property (ChartToolTip)

Gets or sets the automatic delay for the ToolTip.

Syntax

[VB]

Public Property AutomaticDelay As Integer

[C#]

public int AutomaticDelay { get; set; }

[Delphi]

property AutomaticDelay: Integer;

See Also

ChartToolTip Class


AutoPopDelay Property (ChartToolTip)

AutoPopDelay Property (ChartToolTip)

Gets or sets the period of time the tooltip remains visible if the mouse pointer is stationary within an area with specified tooltip text.

Syntax

[VB]

Public Property AutoPopDelay As Integer

[C#]

public int AutoPopDelay {get; set;}

[Delphi]

property AutoPopDelay: Integer;

See Also

ChartToolTip Class


Enabled Property (ChartToolTip)

Enabled Property (ChartToolTip)

Gets or sets a value indicating whether the tooltip is enabled.

Syntax

[VB]

Public Property Enabled As Boolean

[C#]

public bool Enabled {get; set;}

[Delphi]

property Enabled: Boolean;

See Also

ChartToolTip Class


InitialDelay Property (ChartToolTip)

InitialDelay Property (ChartToolTip)

Gets or sets the time that passes before the tooltip appears.

Syntax

[VB]

Public Property InitialDelay As Integer

[C#]

public int InitialDelay {get; set;}

[Delphi]

property InitialDelay: Integer;

See Also

ChartToolTip Class


PlotElement Property (ChartToolTip)

PlotElement Property (ChartToolTip)

Gets or sets the plot element.

Syntax

[VB]

Public Property PlotElement As PlotElementEnum

[C#]

public PlotElementEnum PlotElement {get; set;}

[Delphi]

property PlotElement: PlotElementEnum;

See Also

ChartToolTip Class


ReshowDelay Property (ChartToolTip)

ReshowDelay Property (ChartToolTip)

Gets or sets the length of time that must transpire before subsequent tooltip windows appear as the mouse pointer moves from one area to another.

Syntax

[VB]

Public Property ReshowDelay As Integer

[C#]

public int ReshowDelay {get; set;}

[Delphi]

property ReshowDelay: Integer;

See Also

ChartToolTip Class


SelectAction Property (ChartToolTip)

SelectAction Property (ChartToolTip)

Gets or sets the action associated with a tooltip.

Syntax

[VB]

Public Property SelectAction As SelectActionEnum

[C#]

public SelectActionEnum SelectAction {get; set;}

[Delphi]

property SelectAction: SelectActionEnum;

See Also

ChartToolTip Class


DataHighlight Class

This class controls data highlighting.

Syntax

C1.Win.C1Chart.DataHighlight


DataHighlight All Members

DataHighlight Properties

Activation | Gets or sets the highlight activation method.
Appearance | Gets or sets the highlight appearance. The apprearance is a combination of visual attributes which will be applied to the highlighted data. The exact value of attributes is exstracted from the corresponding DataHighlight object ( FillStyle, LineStyle, SymbolStyle).
FillStyle | Gets or sets the highlight fill style.
LineStyle | Gets or sets the highlight line style.
PlotElement | Gets or sets the plot element which will be used in highlighting.
PointIndex | Gets or sets the index of highlighted data point.
SeriesIndex | Gets or sets the index of highlighted data series.
SymbolStyle | Gets or sets the highlight symbol style.


DataHighlight Properties

Activation Property (DataHighlight)

Appearance Property (DataHighlight)

FillStyle Property (DataHighlight)

LineStyle Property (DataHighlight)

PlotElement Property (DataHighlight)

PlotElement Property (DataHighlight)

PointIndex Property (DataHighlight)

SeriesIndex Property (DataHighlight)

SymbolStyle Property (DataHighlight)


Activation Property (DataHighlight)

Activation Property (DataHighlight)

Gets or sets the highlight activation method.

Syntax

[VB]

Public Property Activation As HighlightActivationEnum

[C#]

public HighlightActivationEnum Activation {get; set;}

[Delphi]

property SelectAction: HighlightActivationEnum;

See Also

DataHighlight Class


Appearance Property (DataHighlight)

Appearance Property (DataHighlight)

Gets or sets the highlight appearance. The apprearance is a combination of visual attributes which will be applied to the highlighted data. The exact value of attributes is exstracted from the corresponding DataHighlight object ( FillStyle, LineStyle, SymbolStyle).

Syntax

[VB]

Public Property Appearance As DataAppearanceEnum

[C#]

public DataAppearanceEnum Appearance {get; set;}

[Delphi]

property Appearance: DataAppearanceEnum;

See Also

DataHighlight Class


FillStyle Property (DataHighlight)

FillStyle Property (DataHighlight)

Gets or sets the highlight fill style.

Syntax

[VB]

Public Property FillStyle As FillStyle

[C#]

public FillStyle FillStyle {get; set;}

[Delphi]

property FillStyle: FillStyle;

See Also

DataHighlight Class


LineStyle Property (DataHighlight)

LineStyle Property (DataHighlight)

Gets or sets the highlight line style.

Syntax

[VB]

Public Property LineStyle As ChartLineStyle

[C#]

public ChartLineStyle LineStyle {get; set;}

[Delphi]

property LineStyle: ChartLineStyle;

See Also

DataHighlight Class


PlotElement Property (DataHighlight)

PlotElement Property (DataHighlight)

Gets or sets the plot element which will be used in highlighting.

Syntax

[VB]

Public Property LineStyle As PlotElementEnum

[C#]

public PlotElementEnum LineStyle {get; set;}

[Delphi]

property LineStyle: PlotElementEnum;

See Also

DataHighlight Class


PlotElement Property (DataHighlight)

PlotElement Property (DataHighlight)

Gets or sets the plot element which will be used in highlighting.

Syntax

[VB]

Public Property PlotElement As PlotElementEnum

[C#]

public PlotElementEnum PlotElement {get; set;}

[Delphi]

property PlotElement: PlotElementEnum;

See Also

DataHighlight Class


PointIndex Property (DataHighlight)

PointIndex Property (DataHighlight)

Gets or sets the index of highlighted data point.

Syntax

[VB]

Public Property PointIndex As Integer

[C#]

public int PointIndex {get; set;}

[Delphi]

property PointIndex: Integer;

See Also

DataHighlight Class


SeriesIndex Property (DataHighlight)

SeriesIndex Property (DataHighlight)

Gets or sets the index of highlighted data series.

Syntax

[VB]

Public Property SeriesIndex As Integer

[C#]

public int SeriesIndex {get; set;}

[Delphi]

property SeriesIndex: Integer;

See Also

DataHighlight Class


SymbolStyle Property (DataHighlight)

SymbolStyle Property (DataHighlight)

Gets or sets the index of highlighted data series.

Syntax

[VB]

Public Property SymbolStyle As ChartSymbolStyle

[C#]

public ChartSymbolStyle SymbolStyle {get; set;}

[Delphi]

property SymbolStyle: ChartSymbolStyle;

See Also

DataHighlight Class


DataLabel Class

This class controls data highlighting.

Syntax

C1.Win.C1Chart.DataLabel

Remarks

Represents the text label for data values.


DataLabel All Members

DataLabel Properties

Compass | Gets or sets the position of the label relative its specified location.
Connected | Gets or sets whether a connecting line is drawn to an associated data point.
Filter | Gets or sets the filter value of the data label.
Offset | Gets or sets the offset distance in pixels from an associated data point.
Style | Gets the Style object of the label.
Text | Gets or sets the text of the label.
Visible | Gets or sets the label visibility.

DataLabel Methods

Dispose

Gets the chart object ready for garbage collection.


DataLabel Properties

Compass Property (DataLabel)

Connected Property (DataLabel)

Filter Property (DataLabel)

Offset Property (DataLabel)

Style Property (DataLabel)

Text Property (DataLabel)

Visible Property (DataLabel)


Compass Property (DataLabel)

Compass Property (DataLabel)

Gets or sets the position of the label relative its specified location.

Syntax

[VB]

Public Property Compass As LabelCompassEnum

[C#]

public LabelCompassEnum Compass {get; set;}

[Delphi]

property Compass: LabelCompassEnum;

See Also

DataLabel Class


Connected Property (DataLabel)

Connected Property (DataLabel)

Gets or sets whether a connecting line is drawn to an associated data point.

Syntax

[VB]

Public Property Connected As Boolean

[C#]

public bool Connected {get; set;}

[Delphi]

property Connected: Boolean;

See Also

DataLabel Class


Filter Property (DataLabel)

Filter Property (DataLabel)

Gets or sets the filter value of the data label.

Syntax

[VB]

Public Property Filter As Integer

[C#]

public int Filter {get; set;}

[Delphi]

property Filter: Integer;

See Also

DataLabel Class


Offset Property (DataLabel)

Offset Property (DataLabel)

Gets or sets the offset distance in pixels from an associated data point.

Syntax

[VB]

Public Property Offset As Integer

[C#]

public int Offset {get; set;}

[Delphi]

property Offset: Integer;

See Also

DataLabel Class


Style Property (DataLabel)

Style Property (DataLabel)

Gets the Style object of the label.

Syntax

[VB]

Public ReadOnly Property Style As Style

[C#]

public Style Style { get;}

[Delphi]

property Style: Style;

See Also

DataLabel Class


Text Property (DataLabel)

Text Property (DataLabel)

Gets or sets the text of the label.

Syntax

[VB]

Public Property Text As String

[C#]

public string Text { get; set;}

[Delphi]

property Text: String;

See Also

DataLabel Class


Visible Property (DataLabel)

Visible Property (DataLabel)

Gets or sets the label visibility.

Syntax

[VB]

Public Property Text As Boolean

[C#]

public bool Text { get; set;}

[Delphi]

property Text: Boolean;

See Also

DataLabel Class


DataLabel Methods

Dispose Method (DataLabel)


Dispose Method (DataLabel)

Dispose Method (DataLabel)

Gets the chart object ready for garbage collection.

Syntax

[VB]

Public Sub Dispose()

[C#]

public void Dispose( )

[Delphi]

procedure Dispose();

See Also

DataLabel Class


DrawDataSeriesEventArgs Class

Provides data for the DrawDataSeries event.

Syntax

[VB]

Public Class DrawDataSeriesEventArgs

[C#]

public class DrawDataSeriesEventArgs

[Delphi]

type DrawDataSeriesEventArgs;


DrawDataSeriesEventArgs Class Members

DrawDataSeriesEventArgs Class Properties

Brush | Gets or sets the brush that will be used for data plotting.
Bounds | Gets the rectangular area in which the data series will be plotted.
DisposeBrush | Gets or sets whether the brush should be disposed by the chart.
DisposePen | Gets or sets whether the pen should be disposed by the chart.
GroupIndex | Gets the index of the chart group.
IsLegend | Gets whether the region about to be drawn is in the legend.
Pen | Gets or sets the pen that will be used for data plotting.
SeriesIndex | Gets the index of the data series about to be drawn.


DrawDataSeriesEventArgs Class Properties

Brush Property

Bounds Property

DisposeBrush Property

DisposePen Property

GroupIndex Property

IsLegend Property

Pen Property

SeriesIndex Property


Brush Property

Brush Property

Gets or sets the brush that will be used for data plotting.

Syntax

[VB]

Public Property Brush As Brush

[C#]

public Brush Brush { get; set; }

[Delphi]

property Brush: Brush;

See Also

DrawDataSeriesEventArgs Class


Bounds Property

Bounds Property

Gets the rectangular area in which the data series will be plotted.

Syntax

[VB]

Public Readonly Property Bounds As RectangleF

[C#]

public RectangleF Bounds { get; }

[Delphi]

property Bounds: Rectangle;

See Also

DrawDataSeriesEventArgs Class


DisposeBrush Property

DisposeBrush Property

Gets or sets whether the brush should be disposed by the chart after drawing the series. If DisposeBrush is false the brush is not disposed by the chart.

Syntax

[VB]

Public Property DisposeBrush As Boolean

[C#]

public bool DisposeBrush { get; set; }

[Delphi]

property DisposeBrush: Boolean;

See Also

DrawDataSeriesEventArgs Class


DisposePen Property

DisposePen Property

Gets or sets whether the pen should be disposed by the chart.

Syntax

[VB]

Public Property DisposePen As Boolean

[C#]

public bool DisposePen { get; set; }

[Delphi]

property DisposePen: Boolean;

See Also

DrawDataSeriesEventArgs Class


GroupIndex Property

GroupIndex Property

Gets the index of the chart group.

Syntax

[VB]

Public Readonly Property GroupIndex As Integer

[C#]

public int GroupIndex { get; }

[Delphi]

property GroupIndex: Integer;

See Also

DrawDataSeriesEventArgs Class


IsLegend Property

IsLegend Property

Gets whether the current region about to be drawn is in the legend.

Syntax

[VB]

Public Readonly Property IsLegend As Boolean

[C#]

public bool IsLegend { get; }

[Delphi]

property IsLegend: Boolean;

See Also

DrawDataSeriesEventArgs Class


Pen Property

Pen Property

Gets or sets the pen that will be used for data plotting.

Syntax

[VB]

Public Property Pen As Pen

[C#]

public Pen Pen { get; set; }

[Delphi]

property Pen: Pen;

See Also

DrawDataSeriesEventArgs Class


SeriesIndex Property

SeriesIndex Property

Gets the index of the data series about to be drawn.

Syntax

[VB]

Public Readonly Property SeriesIndex As Integer

[C#]

public int SeriesIndex { get; }

[Delphi]

property SeriesIndex: Integer;

See Also

DrawDataSeriesEventArgs Class


DrawLegendEntryEventArgs Class

Provides data for the DrawLegendEntry event.

Syntax

[VB]

Public Class DrawLegendEntryEventArgs

[C#]

public class DrawLegendEntryEventArgs

[Delphi]

type DrawLegendEntryEventArgs;


DrawLegendEntryEventArgs Class Members

DrawLegendEntryEventArgs Class Properties

Entry | Gets the object which is the legend entry.
TextColor | Gets or sets the color of the text for the legend entry.


DrawLegendEntryEventArgs Class Properties

Entry Property

TextColor Property


Entry Property

Entry Property

Gets the object which is the legend entry..

Syntax

[VB]

Public ReadOnly Property Entry As Object

[C#]

public object Entry { get; }

[Delphi]

property Entry: object;

See Also

DrawLegendEntryEventArgs Class


TextColor Property

TextColor Property

Gets or sets the color of the text for the legend entry.

Syntax

[VB]

Public Property TextColor As System.Drawing.Color

[C#]

public System.Drawing.Color TextColor { get; }

[Delphi]

property TextColor: System.Drawing.Color;

See Also

DrawLegendEntryEventArgs Class


FillStyle Class

Syntax

C1.Win.C1Chart.FillStyle


FillStyle All Members

FillStyle Properties

Alpha | Gets or sets the fill alpha value(transparancy).
Color1 | Gets or sets the fill color.
Color2 | Gets or sets the second fill color.
FillType | Gets or sets the fill type.
GradientStyle | Gets or sets the fill gradient style.
HatchStyle | Gets or sets the fill hatch style
Image | Gets or sets the fill image.


FillStyle Properties

Alpha Property (FillStyle)

Color1 Property (FillStyle)

Color2 Property (FillStyle)

FillType Property (FillStyle)

GradientStyle Property (FillStyle)

HatchStyle Property (FillStyle)

Image Property (FillStyle)


Alpha Property (FillStyle)

Alpha Property (FillStyle)

Gets or sets the fill alpha value(transparancy).

Syntax

[VB]

Public Property Alpha As Byte

[C#]

public byte Alpha { get; set; }

[Delphi]

property Alpha: Byte;

See Also

FillStyle Class


Color1 Property (FillStyle)

Color1 Property (FillStyle)

Gets or sets the fill color.

Syntax

[VB]

Public Property Color1 As System.Drawing.Color

[C#]

public System.Drawing.Color Color1 { get; set; }

[Delphi]

property Color1: System.Drawing.Color;

See Also

FillStyle Class


Color2 Property (FillStyle)

Color2 Property (FillStyle)

Gets or sets the second fill color.

Syntax

[VB]

Public Property Color2 As System.Drawing.Color

[C#]

public System.Drawing.Color Color2 { get; set; }

[Delphi]

property Color2: System.Drawing.Color;

See Also

FillStyle Class


FillType Property (FillStyle)

FillType Property (FillStyle)

Gets or sets the fill type.

Syntax

[VB]

Public Property FillType As FillTypeEnum

[C#]

public FillTypeEnum FillType { get; set; }

[Delphi]

property FillType: FillTypeEnum;

See Also

FillStyle Class


GradientStyle Property (FillStyle)

GradientStyle Property (FillStyle)

Gets or sets the fill gradient style.

Syntax

[VB]

Public Property GradientStyle As GradientStyleEnum

[C#]

public GradientStyleEnum GradientStyle { get; set; }

[Delphi]

property GradientStyle: GradientStyleEnum;

See Also

FillStyle Class


HatchStyle Property (FillStyle)

HatchStyle Property (FillStyle)

Gets or sets the fill hatch style

Syntax

[VB]

Public Property HatchStyle As HatchStyleEnum

[C#]

public HatchStyleEnum HatchStyle { get; set; }

[Delphi]

property HatchStyle: HatchStyleEnum;

See Also

FillStyle Class


Image Property (FillStyle)

Image Property (FillStyle)

Gets or sets the fill image.

Syntax

[VB]

Public Property Image As System.Drawing.Image

[C#]

public System.Drawing.Image Image { get; set; }

[Delphi]

property Image: System.Drawing.Image;

See Also

FillStyle Class


FunctionBase Class

Abstract base class for all functions.

Syntax

C1.Win.C1Chart.FunctionBase


FunctionBase All Members

FunctionBase Properties

CodeErrors | Gets the string descriptions of compile errors.
CodeLanguage | Gets or sets what language is used when compiling(C# or VB).
CodeType | Gets or sets how code will be compiled (as formula, as method or as full compile unit).
CodeValid | Gets whether the code of function is correct.
Label | Gets or sets the label of function.
LegendEntry | Gets or sets whether the function will be shown in legend.
LineStyle | Gets or sets the line style which is used when plotting function.
PlotLinesMethod | Gets or sets the method which is used when plotting function.
PlotNumPoints | Gets or sets the number of point which is used when plotting function.
PlotOverData | Gets or sets the plotting function over data.
Visible | Gets or sets whether the function is visible.


FunctionBase Properties

CodeErrors Property (FunctionBase)

CodeLanguage Property (FunctionBase)

CodeType Property (FunctionBase)

CodeValid Property (FunctionBase)

Label Property (FunctionBase)

LegendEntry Property (FunctionBase)

LineStyle Property (FunctionBase)

PlotLinesMethod Property (FunctionBase)

PlotNumPoints Property (FunctionBase)

PlotOverData Property (FunctionBase)

Visible Property (FunctionBase)


CodeErrors Property (FunctionBase)

CodeErrors Property (FunctionBase)

Gets the string descriptions of compile errors.

Syntax

[VB]

Public ReadOnly Property CodeErrors() As String

[C#]

public string[] CodeErrors { get; }

[Delphi]

property CodeErrors: array of string;

See Also

FunctionBase Class


CodeLanguage Property (FunctionBase)

CodeLanguage Property (FunctionBase)

Gets or sets what language is used when compiling(C# of VB).

Syntax

[VB]

Public Property CodeLanguage As FunctionCodeLanguageEnum

[C#]

public FunctionCodeLangugeEnum CodeLanguage { get; set;}

[Delphi]

property CodeLanguage: FunctionCodeLangugeEnum;

See Also

FunctionBase Class


CodeType Property (FunctionBase)

CodeType Property (FunctionBase)

Gets or sets how code will be compiled (as formula, as method or as full compile unit).

Syntax

[VB]

Public Property CodeType As FunctionCodeTypeEnum

[C#]

public FunctionCodeTypeEnum CodeType { get; set;}

[Delphi]

property CodeType: FunctionCodeTypeEnum;

See Also

FunctionBase Class


CodeValid Property (FunctionBase)

CodeValid Property (FunctionBase)

Gets whether the code of function is correct.

Syntax

[VB]

Public ReadOnly Property CodeValid As Boolean

[C#]

public bool CodeValid { get; }

[Delphi]

property CodeValid: Boolean;

See Also

FunctionBase Class


Label Property (FunctionBase)

Label Property (FunctionBase)

Gets or sets the label of function.

Syntax

[VB]

Public Property Label As String

[C#]

public string Label { get; set;}

[Delphi]

property Label: String;

See Also

FunctionBase Class


LegendEntry Property (FunctionBase)

LegendEntry Property (FunctionBase)

Gets or sets whether the function will be shown in legend.

Syntax

[VB]

Public Property LegendEntry As Boolean

[C#]

public bool LegendEntry { get; set;}

[Delphi]

property LegendEntry: Boolean;

See Also

FunctionBase Class


LineStyle Property (FunctionBase)

LineStyle Property (FunctionBase)

Gets or sets the line style which is used when plotting function.

Syntax

[VB]

Public Property LineStyle As ChartLineStyle

[C#]

public ChartLineStyle LineStyle { get; set;}

[Delphi]

property LineStyle: ChartLineStyle;

See Also

FunctionBase Class


PlotLinesMethod Property (FunctionBase)

PlotLinesMethod Property (FunctionBase)

Gets or sets the method which is used when plotting function.

Syntax

[VB]

Public Property PlotLinesMethod As PlotLinesMethodEnum

[C#]

public PlotLinesMethodEnum PlotLinesMethod { get; set;}

[Delphi]

property PlotLinesMethod: PlotLinesMethodEnum;

See Also

FunctionBase Class


PlotNumPoints Property (FunctionBase)

PlotNumPoints Property (FunctionBase)

Gets or sets the number of point which is used when plotting function.

Syntax

[VB]

Public Property PlotNumPoints As Integer

[C#]

public int PlotNumPoints { get; set;}

[Delphi]

property PlotNumPoints: Integer;

Remark

This property controls the quality of function plotting. Increase PlotNumPoints if function is not smooth or is not shown in detail.

See Also

FunctionBase Class


PlotOverData Property (FunctionBase)

PlotOverData Property (FunctionBase)

Gets or sets the plotting function over data.

Syntax

[VB]

Public Property PlotOverData() As Boolean

[C#]

public bool PlotOverData { get; set;}

[Delphi]

property PlotOverData: Boolean;

See Also

FunctionBase Class


Visible Property (FunctionBase)

Visible Property (FunctionBase)

Gets or sets whether the function is visible.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set;}

[Delphi]

property Visible: Boolean;

See Also

FunctionBase Class


FunctionsCollection Class

Stores functions for plotting.

Syntax

C1.Win.C1Chart.FunctionsCollection


FunctionsCollection All Members

FunctionsCollection Properties

Count | Gets the item count of the collection.
Item | Gets the specified function from the collection by numeric index.

FunctionsCollection Methods

Add | Adds the specified function to the collection.
Contains | Determines whether a value is in the FunctionsCollection.
CopyTo | Copies data values to the specified array beginning at the specified index from the FunctionsCollection.
IndexOf | Gets the index of the first specified value in the FunctionsCollection.
Insert | Inserts the specified function in the collection at the specified index.
Remove | Removes the specified function from the collection.


FunctionsCollection Properties

Count Property (FunctionsCollection)

Item Property (FunctionsCollection)


Count Property (FunctionsCollection)

Count Property (FunctionsCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count : Integer;

See Also

FunctionsCollection Class


Item Property (FunctionsCollection)

Item Property (FunctionsCollection)

Gets the specified function from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index as Integer) As FunctionBase

[C#]

public FunctionBase this[int index] { get; }

[Delphi]

property Item( index : Integer) : FunctionBase;

See Also

FunctionsCollection Class


FunctionsCollection Methods

Add Method (FunctionsCollection)

Contains Method (FunctionsCollection)

CopyTo Method (FunctionsCollection)

IndexOf Method (FunctionsCollection)

Insert Method (FunctionsCollection)

Remove Method (FunctionsCollection)


Add Method (FunctionsCollection)

Add Method (FunctionsCollection)

Adds the specified function to the collection.

Syntax

[VB]

Public Function Add (f As FunctionBase) As Integer

[C#]

public int Add (FunctionBase f);

[Delphi]

function Add( f : FunctionBase) : Integer;

Return Value

Integer

See Also

FunctionsCollection Class


Contains Method (FunctionsCollection)

Contains Method (FunctionsCollection)

Determines whether a value is in the FunctionsCollection.

Syntax

[VB]

Public Function Contains(f As FunctionBase) As Boolean

[C#]

public bool Contains (FunctionBase f);

[Delphi]

function Contains(f: FunctionBase): Boolean;

See Also

FunctionsCollection Class


CopyTo Method (FunctionsCollection)

CopyTo Method (FunctionsCollection)

Copies data values to the specified array beginning at the specified index from the FunctionsCollection.

Syntax

[VB]

Public Sub CopyTo(array() As FunctionBase, index As Integer)

[C#]

public void CopyTo (int index, FunctionBase array);

[Delphi]

procedure CopyTo(index:Integer, f: FunctionBase);

See Also

FunctionsCollection Class


IndexOf Method (FunctionsCollection)

IndexOf Method (FunctionsCollection)

Gets the index of the first specified value in the FunctionsCollection.

Syntax

[VB]

Public Function IndexOf(f As FunctionBase) As Integer

[C#]

public int IndexOf (FunctionBase: f);

[Delphi]

function IndexOf ( f : FunctionBase) : Integer;

See Also

FunctionsCollection Class


Insert Method (FunctionsCollection)

Insert Method (FunctionsCollection)

Inserts the specified function in the collection at the specified index.

Syntax

[VB]

Public Sub Insert (index As Integer, f As FunctionBase)

[C#]

public void Insert (int index, FunctionBase f);

[Delphi]

procedure Insert( index:Integer, f : FunctionBase);

See Also

FunctionsCollection Class


Remove Method (FunctionsCollection)

Remove Method (FunctionsCollection)

Removes the specified function from the collection.

Syntax

[VB]

Public Sub Remove (f As FunctionBase)

[C#]

public void Remove (FunctionBase f);

[Delphi]

procedure Remove( f : FunctionBase);

See Also

FunctionsCollection Class


Gantt Class

Syntax

C1.Win.C1Chart.Gantt


Gantt All Members

Gantt Properties

AxisLabelsSource | Gets or sets how the x-axis labels are generated.
ShowSymbols | Gets or sets whether symbols are shown at interval values.
Width | Gets or sets the percentage of the distance between x values that each interval bar spans.


Gantt Properties

AxisLabelsSource Property

ShowSymbols Property (Gantt)

Width Property (Gantt)


AxisLabelsSource Property

AxisLabelsSource Property

Gets or sets how the x-axis labels are generated.

Syntax

[VB]

Public Property AxisLabelsSource As AxisLabelsSourceEnum

[C#]

public AxisLabelsSourceEnum AxisLabelsSource { get; set; }

[Delphi]

property AxisLabelsSource: AxisLabelsSourceEnum;

See Also

Gantt Class


ShowSymbols Property (Gantt)

ShowSymbols Property (Gantt)

Gets or sets whether symbols are shown at interval values.

Syntax

[VB]

Public Property ShowSymbols As Boolean

[C#]

public bool ShowSymbols { get; set; }

[Delphi]

property ShowSymbols : Boolean;

See Also

Gantt Class


Width Property (Gantt)

Width Property (Gantt)

Gets or sets the percentage of the distance between x values that each interval bar spans..

Syntax

[VB]

Public Property Width As Integer

[C#]

public int Width { get; set; }

[Delphi]

property Width: Integer;

See Also

Gantt Class


HighlightChangedEventArgs Class

Provides data for the HighlightChanged event.

Syntax

C1.Win.C1Chart.HighlightChangedEventArgs


HighlightChangedEventArgs All Members

HightlightChangedEventArgs Properties

Group | Gets the chart group.
PointIndex | Gets the data point index.
Series | Gets the data series.
SeriesIndex | Gets the data series index.


HighlightChangedEventArgs Properties

Group Property

PointIndex Property

Series Property

SeriesIndex Property

HighlightChangedEventHandler Delegate


Group Property

Group Property

Gets the chart group.

Syntax

[VB]

Public Property Group As ChartGroup

[C#]

public ChartGroup Group { get; }

[Delphi]

property Group: ChartGroup;

See Also

HighlightChangedEventArgs Class


PointIndex Property

PointIndex Property

Gets the data point index.

Syntax

[VB]

Public Property PointIndex As Integer

[C#]

public int PointIndex { get; }

[Delphi]

property PointIndex : Integer;

See Also

HighlightChangedEventArgs Class


Series Property

Series Property

Gets the data series.

Syntax

[VB]

Public Property Series As ChartDataSeries

[C#]

public ChartDataSeries Series { get; }

[Delphi]

property Series : ChartDataSeries;

See Also

HighlightChangedEventArgs Class


SeriesIndex Property

SeriesIndex Property

Gets the data series index.

Syntax

[VB]

Public Property SeriesIndex As Integer

[C#]

public int SeriesIndex { get; }

[Delphi]

property SeriesIndex : Integer;

See Also

HighlightChangedEventArgs Class


HighlightChangedEventHandler Delegate

HighlightChangedEventHandler Delegate

Represents the method that will handle the HighlightedChanged event of a C1Chart class.

Syntax

[VB]

Public Delegate Sub HighlightChangedEventHandler (sender as Object, e as HighlightChangedEventArgs);

[C#]

public delegate void HighlightChangedEventHandler (object sender, HighlightChangedEventArgs e);

[Delphi]

type = HighlightChangedEventHandler : procedure( sender: object, e: HighlightChangedEventArgs) of object;

See Also

HighlightChangedEventArgs Class


HiLoData Class

Syntax

C1.Win.C1Chart.HiLoData


HiLoData All Members

HiLoData Properties

FillFalling Supported by the .NET Compact Framework. | Gets or sets whether filled candles represent falling values (true) or rising values (false).
FillTransparent Supported by the .NET Compact Framework. | Gets or sets whether open candles are transparent (true) or filled with the series symbol color.
FullWidth Supported by the .NET Compact Framework. | Gets or sets whether the opening and closing values of a Hi-Lo-Open-Close chart are represented by a horizontal line on both sides of the Hi-Lo bar.
ShowClose Supported by the .NET Compact Framework. | Gets or sets whether the closing value is shown in a Hi-Lo-Open-Close chart.
ShowOpen Supported by the .NET Compact Framework. | Gets or sets whether the opening value is shown in a Hi-Lo-Open-Close chart.


HiLoData Properties

FillFalling Property

FillTransparent Property

FullWidth Property

ShowClose Property

ShowOpen Property


FillFalling Property

FillFalling Property

Gets or sets whether filled candles represent falling values (true) or rising values (false).

Syntax

[VB]

Public Property FillFalling As Boolean

[C#]

public bool FillFalling { get; set; }

[Delphi]

property FillFalling: Boolean;

See Also

HiLoData Class


FillTransparent Property

FillTransparent Property

Gets or sets whether open candles are transparent (true) or filled with the series symbol color (false).

Syntax

[VB]

Public Property FillTransparent As Boolean

[C#]

public bool FillTransparent { get; set; }

[Delphi]

property FillTransparent: Boolean;

See Also

HiLoData Class


FullWidth Property

FullWidth Property

Gets or sets whether the opening and closing values of a Hi-Lo-Open-Close chart are represented by a horizontal line on both sides of the Hi-Lo bar.

Syntax

[VB]

Public Property FullWidth As Boolean

[C#]

public bool FullWidth { get; set; }

[Delphi]

property FullWidth: Boolean;

See Also

HiLoData Class


ShowClose Property

ShowClose Property

Gets or sets whether the closing value is shown in a Hi-Lo-Open-Close chart.

Syntax

[VB]

Public Property ShowClose As Boolean

[C#]

public bool ShowClose { get; set; }

[Delphi]

property ShowClose: Boolean;

See Also

HiLoData Class


ShowOpen Property

ShowOpen Property

Gets or sets whether the opening value is shown in a Hi-Lo-Open-Close chart.

Syntax

[VB]

Public Property ShowOpen As Boolean

[C#]

public bool ShowOpen { get; set; }

[Delphi]

property ShowOpen: Boolean;

See Also

HiLoData Class


Histogram Class

Syntax

C1.Win.C1Chart.Histogram


Histogram All Members

Histogram Properties

NormalDisplay | Gets an object describing a Gaussian normal curve display.
NormalizationInterval | Gets or sets the normalization interval width.
Normalized | Gets or sets whether each histogram series interval is normalized.


Histogram Properties

NormalDisplay Property

NormalizationInterval Property

Normalized Property


NormalDisplay Property

NormalDisplay Property

Gets an object describing a Gaussian normal curve display.

Syntax

[VB]

Public Property NormalDisplay() As NormalCurve

[C#]

public NormalCurve NormalDisplay { get; set; }

[Delphi]

property NormalDisplay: Boolean;

Remarks

Histograms and frequency graphs are used to show the distribution of data values. Very often, the data distributions are compared to normal distributions. The properties of the NormalCurve object control the appearance of a built in display of a Normal (Gaussian) curve for comparison. The normal curve is unrelated to the data.

See Also

Histogram Class


NormalizationInterval Property

NormalizationInterval Property

Gets or sets the normalization interval width.

Syntax

[VB]

Public Property NormalizationInterval() As Double

[C#]

public double NormalizationInterval { get; set; }

[Delphi]

property NormalizationInterval: Double;

Remarks

When histograms with non-uniform intervals are generated, each interval is typically normalized such that each interval height represents the same frequency per unit width. This preserves the most appropriate histogram shape. The normalization interval width is the width to which all other intervals are normalized. Intervals with the same width as the normalization width, will have a height which directly indicates its value.

See Also

Histogram Class


Normalized Property

Normalized Property

Gets or sets the normalization interval width.

Syntax

[VB]

Public Property Normalized() As Boolean

[C#]

public bool Normalized { get; set; }

[Delphi]

property Normalized: Boolean;

Remarks

When histograms with non-uniform intervals are generated, each interval is typically normalized such that each interval height represents the same frequency per unit width. This preserves the most appropriate histogram shape.

See Also

Histogram Class


Interaction Class

Contains all properties that control the automated interactive features of the chart, including mouse driven rotation, scaling, translating and zooming.

Syntax

C1.Win.C1Chart.Interaction


Interaction Class Members

Interaction Class Properties

Actions | Gets the collection of available interactive actions.
Enabled | Gets or sets whether the chart interaction is enabled.
IsDefault | Gets or sets whether the interaction settings are the same as the default interaction settings.


Interaction Class Properties

Actions Property

Enabled Property

IsDefault Property


Actions Property

Actions Property

Gets the collection of available interactive actions.

Syntax

[VB]

Public Readonly Property Actions As ActionCollection

[C#]

public ActionCollection Actions { get; }

[Delphi]

property Actions: ActionCollection;

Remarks

The following actions are available:

· Rotate - rotate chart (only for chart with 3D effects),

· Scale - change scale of chart,

· Translate - scroll through chart,

· Zoom - select rectangular area of chart for view.

Scale, translate and zoom actions are available for charts with cartesian axes. All actions are invoked when user drags the mouse over plot area with the specified keyboard modifier(ALT, CONTROL, SHIFT).

The default action map includes the following actions:

· rotate - left mouse button,

· scale - CTRL + left mouse button,

· scale - CONTROL + left mouse button,

· translate - SHIFT + left mouse button,

· zoom - ALT + left mouse button.

See Also

Interaction Class


Enabled Property

Enabled Property

Gets or sets whether the chart interaction is enabled.

Syntax

[VB]

Public Property Enabled As Boolean

[C#]

public bool Enabled { get; set; }

[Delphi]

property Enabled: Boolean;

See Also

Interaction Class


IsDefault Property

IsDefault Property

Gets or sets whether the interaction settings are the same as the default interaction settings.

Syntax

[VB]

Public Property IsDefault As Boolean

[C#]

public bool IsDefault { get; set; }

[Delphi]

property IsDefault: Boolean;

Remarks

If the interaction settings are set to their default values, then IsDefault returns true. If the interaction settings are not set to their default values, then IsDefault returns false.

If IsDefault is explicitly set to true, then the interaction settings are reset to their default values.

See Also

Interaction Class


ICustomTrendLine Interface

Provides interface for implementing a user-defined TrendLine.

Syntax

C1.Win.C1Chart.ICustomTrendLine


ICustomTrendLine All Members

ICustomTrendLine Properties

Text

Gets the text associated with the TrendLine shown in legend.

ICustomTrendLine Methods

Calculate | Calculates the points of the TrendLine to be plotted, the X values and Y values must be returned by GetXValues() and GetYValues() methods.
GetXValues | Returns an array that contains the X values of the TrendLine.
GetY | Calculates the value of the TrendLine at specified X value.
GetYValues | Returns an array that contains the Y values of the TrendLine.


ICustomTrendLine Properties

Text Property (ICustomTrendLine)


Text Property (ICustomTrendLine)

Text Property (ICustomTrendLine)

Gets the text associated with the TrendLine shown in legend.

Syntax

[VB]

Public ReadOnly Property Text As String

[C#]

public string Text { get;}

[Delphi]

property Text: String;

See Also

ICustomTrendLine Interface


ICustomTrendLine Methods

Calculate Method (ICustomTrendLine)

GetXValues Method (ICustomTrendLine)

GetY Method (ICustomTrendLine)

GetYValues Method (ICustomTrendLine)


Calculate Method (ICustomTrendLine)

Calculate Method (ICustomTrendLine)

Calculates the points of the TrendLine to be plotted, the X values and Y values must be returned by GetXValues() and GetYValues() methods.

Syntax

[VB]

Public Sub Calculate(tl As TrendLine, x() as Double, y() as double)

[C#]

public voide Calculate(TrendLine tl, double[] x, double[] y);

[Delphi]

procedure Calculate( tl: TrendLine, x : array of Double, y : array of Double);

See Also

ICustomTrendLine Interface


GetXValues Method (ICustomTrendLine)

GetXValues Method (ICustomTrendLine)

Returns an array that contains the X values of the TrendLine.

Syntax

[VB]

Public Function GetXValues() As Double()

[C#]

public double[] GetXValues();

[Delphi]

function GetXValues() : array of Double;

Return Value

Double()

See Also

ICustomTrendLine Interface


GetY Method (ICustomTrendLine)

GetY Method (ICustomTrendLine)

Calculates the value of the TrendLine at specified X value.

Syntax

[VB]

Public Function GetY (x As Double) As Double

[C#]

public double GetY (double x);

[Delphi]

function GetY( x : Double) : Double;

Return Value

Double

See Also

ICustomTrendLine Interface


GetYValues Method (ICustomTrendLine)

GetYValues Method (ICustomTrendLine)

Returns an array that contains the Y values of the TrendLine.

Syntax

[VB]

Public Function GetYValues() As Double()

[C#]

public double[] GetYValues();

[Delphi]

function GetYValues() : array of Double;

Return Value

Double()

See Also

ICustomTrendLine Interface


ISimpleFunction Interface

Provides an interface for defining a simple one-variable function of the form y(x) = f(x).

Syntax

C1.Win.C1Chart.ISimpleFunction


ISimpleFunction All Members

ISimpleFunction Methods

Calculate

Calculates the value of the function at the specified parameter value.


ISimpleFunction Methods

Calculate Method (ISimpleFunction)


Calculate Method (ISimpleFunction)

Calculate Method (ISimpleFunction)

Calculates the value of the function at the specified parameter value.

Syntax

[VB]

Public Function Calculate(t As Double) As Double

[C#]

public double Calculate (double t);

[Delphi]

function Calculate( t : Double) : Double;

Return Value

Double

See Also

ISimpleFunction Interface


Label Class

Syntax

C1.Win.C1Chart.Label


Label All Members

Label Properties

AttachMethod Supported by the .NET Compact Framework. | Gets or sets the label attachment method.
AttachMethodData Supported by the .NET Compact Framework. | Gets or sets the attachment data for the label.
Compass Supported by the .NET Compact Framework. | Gets or sets the position of the label relative to its specified location.
Connected Supported by the .NET Compact Framework. | Gets or sets whether a connecting line is drawn to an associated data point.
Image | Gets or sets the image that is displayed on the chart element.
Location Supported by the .NET Compact Framework. | Gets the location of the label in chart control client coordinates.
Name Supported by the .NET Compact Framework. | Gets or sets the label name.
Offset Supported by the .NET Compact Framework. | Gets or sets the offset distance from an associated data point.
Size Supported by the .NET Compact Framework. | Gets or sets the size of the label in chart control client coordinates.
SizeDefault | Gets or sets the default size of the label.
Style Supported by the .NET Compact Framework. | Gets the Style object of the label.
Text Supported by the .NET Compact Framework. | Gets or sets the text of the label.
TooltipText | Gets or sets the tooltip text.
Visible Supported by the .NET Compact Framework. | Gets or sets the label visibility.

Label Methods

Dispose Supported by the .NET Compact Framework. | Readies the chart object for garbage collection.
ResetSizeDefault | Resets Label size so it is calculated automatically.
ResetStyle | Resets Label style inheritance state.
ShouldSerializeSizeDefault | Returns true if the Label SizeDefault property is not in the default state.
ShouldSerializeStyle | Returns true if the ChartArea Style property is not in the default state.


Label Properties

AttachMethod Property

AttachMethodData Property (Label)

Compass Property (Label)

Connected Property (Label)

Image Property (Label)

Location Property (Label)

Name Property (Label)

Offset Property

Size Property (Label)

SizeDefault Property (Label)

Style Property (Label)

Text Property (Label)

ToolTipText Property (Label)

Visible Property (Label)


AttachMethod Property

AttachMethod Property

Gets or sets the label attachment method.

Syntax

[VB]

Public Property AttachMethod As AttachMethodEnum

[C#]

public AttachMethodEnum AttachMethod { get; set; }

[Delphi]

property AttachMethod: AttachMethodEnum;

See Also

Label Class


AttachMethodData Property (Label)

AttachMethodData Property (Label)

Gets or sets the attachment data for the label.

Syntax

[VB]

Public Property AttachMethodData As AttachMethodData

[C#]

public AttachMethodData AttachMethodData { get; set; }

[Delphi]

property AttachMethodData: AttachMethodData;

See Also

Label Class


Compass Property (Label)

Compass Property (Label)

Gets or sets the position of the label relative its specified location.

Syntax

[VB]

Public Property Compass As LabelCompassEnum

[C#]

public LabelCompassEnum Compass { get; set; }

[Delphi]

property Compass: LabelCompassEnum;

See Also

Label Class


Connected Property (Label)

Connected Property (Label)

Gets or sets whether a connecting line is drawn to an associated data point.

Syntax

[VB]

Public Property Connected As Boolean

[C#]

public bool Connected { get; set; }

[Delphi]

property Connected: Boolean;

See Also

Label Class


Image Property (Label)

Image Property (Label)

Gets or sets the image that is displayed on the chart element.

Syntax

[VB]

Public Property Image As System.Drawing.Image

[C#]

public System.Drawing.Image Image { get; set; }

[Delphi]

property Image: System.Drawing.Image;

Remarks

The image position can be adjusted using the corresponding Style.ImageAlignment property.

See Also

Label Class


Location Property (Label)

Location Property (Label)

Gets the location of the label in chart control client coordinates.

Syntax

[VB]

Public ReadOnly Property Location As Point

[C#]

public Point Location { get; }

[Delphi]

property Location: Point;

See Also

Label Class


Name Property (Label)

Name Property (Label)

Gets or sets the label name.

Syntax

[VB]

Public Property Name As String

[C#]

public String Name { get; set; }

[Delphi]

property Name: string;

See Also

Label Class


Offset Property

Offset Property

Gets or sets the offset distance in pixels from an associated data point.

Syntax

[VB]

Public Property Offset As Integer

[C#]

public int Offset { get; set; }

[Delphi]

property Offset: Integer;

See Also

Label Class


Size Property (Label)

Size Property (Label)

Gets or sets the size of the label in chart control client coordinates.

Syntax

[VB]

Public Property Size As Size

[C#]

public Size Size { get; set; }

[Delphi]

property Size: Size;

Remarks

Modifying this value will change SizeDefault.

See Also

Label Class


SizeDefault Property (Label)

SizeDefault Property (Label)

Gets or sets the default size of the label.

Syntax

[VB]

Public Property SizeDefault As Size

[C#]

public Size SizeDefault { get; set; }

[Delphi]

property SizeDefault: Size;

Remarks

Negative values will allow autopositioning.

See Also

Label Class


Style Property (Label)

Style Property (Label)

Gets the Style object of the label.

Syntax

[VB]

Public ReadOnly Property Style As Style

[C#]

public Style Style { get; }

[Delphi]

property Style: Style;

Remarks

Inherits from the ChartLabels.DefaultLabelStyle property.

See Also

Label Class


Text Property (Label)

Text Property (Label)

Gets or sets the text of the label.

Syntax

[VB]

Public Property Text As String

[C#]

public string Text { get; set; }

[Delphi]

property Text: string;

See Also

Label Class


ToolTipText Property (Label)

ToolTipText Property (Label)

Gets or sets the tooltip text.

Syntax

[VB]

Public Property ToolTipText As String

[C#]

public string ToolTipText { get; set; }

[Delphi]

property ToolTipText: string;

See Also

Label Class


Visible Property (Label)

Visible Property (Label)

Gets or sets the label visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

Label Class


Label Methods

Dispose Method (Label)

ResetSizeDefault Method (Label)

ResetStyle Method (Label)

ShouldSerializeSizeDefault Method (Label)

ShouldSerializeStyle Method (Label)


Dispose Method (Label)

Dispose Method (Label)

Readies the chart object for garbage collection.

Syntax

[VB]

Public Sub Dispose()

[C#]

public void Dispose ();

[Delphi]

procedure Dispose;

Remarks

Readies the Label object for garbage collection. The Label should not be referenced after calling the Dispose method.

See Also

Label Class


ResetSizeDefault Method (Label)

ResetSizeDefault Method (Label)

Resets Label size so it is calculated automatically.

Syntax

[VB]

Public Sub ResetSizeDefault()

[C#]

public void ResetSizeDefault();

[Delphi]

procedure ResetSizeDefault;

See Also

Label Class


ResetStyle Method (Label)

ResetStyle Method (Label)

Resets Label style inheritance state.

Syntax

[VB]

Public Sub ResetStyle()

[C#]

public void ResetStyle()

[Delphi]

procedure ResetStyle;

See Also

Label Class


ShouldSerializeSizeDefault Method (Label)

ShouldSerializeSizeDefault Method (Label)

Returns true if the Label SizeDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeSizeDefault() As Boolean

[C#]

public bool ShouldSerializeSizeDefault ( )

[Delphi]

function ShouldSerializeSizeDefault:Boolean;

Remarks

The default state is SizeDefault.Width = -1, SizeDefault.Height = -1, which results in automatic sizing of the Label.

See Also

Label Class


ShouldSerializeStyle Method (Label)

ShouldSerializeStyle Method (Label)

Returns true if the ChartArea Style property is in not the default state.

Syntax

[VB]

Public Function ShouldSerializeStyle() As Boolean

[C#]

public bool ShouldSerializeStyle ( )

[Delphi]

function ShouldSerializeStyle: Boolean;

Remarks

The default state is to inherit the style from the Labels.DefaultLabelStyle property.

See Also

Label Class


LabelsCollection Class

Syntax

C1.Win.C1Chart.LabelsCollection


LabelsCollection All Members

LabelsCollection Properties

Count | Gets the item count of the collection.
Item Supported by the .NET Compact Framework. | Gets the specified label from the collection by numeric index.

LabelsCollection Methods

AddNewLabel Supported by the .NET Compact Framework. | Creates a new label and appends it to the collection.
InsertNewLabel Supported by the .NET Compact Framework. | Creates a new label and inserts it into the collection at the specified index.
Remove Supported by the .NET Compact Framework. | Removes the label specified.


LabelsCollection Properties

Count Property (LabelsCollection)

Item Property (LabelsCollection)


Count Property (LabelsCollection)

Count Property (LabelsCollection)

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

LabelsCollection Class


Item Property (LabelsCollection)

Item Property (LabelsCollection)

Gets the specified label from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As Label

[C#]

public Label this[int index] { get; }

[Delphi]

property Item(index: Integer): Integer;

See Also

LabelsCollection Class


LabelsCollection Methods

AddNewLabel Method (LabelsCollection)

InsertNewLabel Method (LabelsCollection)

Remove Method (LabelsCollection)


AddNewLabel Method (LabelsCollection)

AddNewLabel Method (LabelsCollection)

Creates a new label and appends it to the collection.

Syntax

[VB]

Public Function AddNewLabel () As Label

[C#]

public Label AddNewLabel ();

[Delphi]

function AddNewLabel: Label;

Return Value

Label

Remarks

The new label is returned.

See Also

LabelsCollection Class


InsertNewLabel Method (LabelsCollection)

InsertNewLabel Method (LabelsCollection)

Creates a new label and inserts it into the collection at the specified index.

Syntax

[VB]

Public Function InsertNewLabel (index As Integer) As Label

[C#]

public Label InsertNewLabel (int index);

[Delphi]

function InsertNewLabel(index: Integer): Label;

Return Value

Label

Remarks

The new label is returned.

See Also

LabelsCollection Class


Remove Method (LabelsCollection)

Remove Method (LabelsCollection)

Removes the label specified.

Syntax

[VB]

Public Sub Remove (label As Label)

[C#]

public void Remove (Label label);

[Delphi]

procedure Remove(label: Label);

See Also

LabelsCollection Class


Legend Class

Syntax

C1.Win.C1Chart.Legend


Legend All Members

Legend Properties

Compass Supported by the .NET Compact Framework. | Gets or sets the general positioning of the legend.
Location Supported by the .NET Compact Framework. | Gets or sets the location of the legend in chart control client coordinates.
LocationDefault Supported by the .NET Compact Framework. | Gets or sets the default location of the legend.
Orientation Supported by the .NET Compact Framework. | Gets or sets the orientation of the legend entries.
Reversed | Determines the order of the ChartGroups in the legend.
Size Supported by the .NET Compact Framework. | Gets or sets the size of the legend in chart control client coordinates.
SizeDefault Supported by the .NET Compact Framework. | Gets or sets the default size of the legend.
Style Supported by the .NET Compact Framework. | Gets the legend style.
Text Supported by the .NET Compact Framework. | Gets or sets the primary text of the legend.
Visible Supported by the .NET Compact Framework. | Gets or sets the legend visibility.

Legend Methods

RectFromSeries | Returns the minimal Rectangle circumscribing the specified series entry in the legend.
ResetLocationDefault | Resets the Legend location so it is calculated automatically.
ResetSizeDefault | Resets Legend size so it is calculated automatically.
ResetStyle | Resets Legend style inheritance state.
SeriesFromCoord Supported by the .NET Compact Framework. | Obtains the group and series indices of the legend entry nearest to the specified client.
ShouldSerializeLocationDefault | Returns true if the Legend LocationDefault property is not in the default state.
ShouldSerializeSizeDefault | Returns true if the Legend SizeDefault property is not in the default state.
ShouldSerializeStyle | Returns true if the Legend Style property is not in the default state.


Legend Properties

Compass Property (Legend)

Location Property (Legend)

LocationDefault Property (Legend)

Orientation Property

Reversed Property (Legend)

Size Property (Legend)

SizeDefault Property (Legend)

Style Property (Legend)

Text Property (Legend)

Visible Property (Legend)


Compass Property (Legend)

Compass Property (Legend)

Gets or sets the general positioning of the legend.

Syntax

[VB]

Public Property Compass As CompassEnum

[C#]

public As CompassEnum Compass { get; set; }

[Delphi]

property Compass: CompassEnum;

See Also

Legend Class


Location Property (Legend)

Location Property (Legend)

Gets or sets the location of the legend in chart control client coordinates.

Syntax

[VB]

Public Property Location As Point

[C#]

public Point Location { get; set; }

[Delphi]

property Location: Point;

Remarks

Modifying this value will change LocationDefault.

See Also

Legend Class


LocationDefault Property (Legend)

LocationDefault Property (Legend)

Gets or sets the default location of the legend.

Syntax

[VB]

Public Property LocationDefault As Point

[C#]

public Point LocationDefault { get; set; }

[Delphi]

property LocationDefault: Point;

Remarks

Negative values will allow autopositioning.

See Also

Legend Class


Orientation Property

Orientation Property

Gets or sets the orientation of the legend entries.

Syntax

[VB]

Public Orientation As LegendOrientationEnum

[C#]

public LegendOrientationEnum Orientation { get; set; }

[Delphi]

property Orientation: LegendOrientationEnum;

Remarks

The legend entries can be oriented in a vertical or horizontal fashion.

Vertical orientation indicates that legend entries will stack vertically as the legend height permits. If the legend height cannot contain all of the entries and the legend is allowed to size itself, then additional columns of stacked entries will be added to the legend.

Horizontal orientation indicates that legend entries will be created side by side as legend width permits. If the legend width cannot contain all of the entries and the legend is allowed to size itself, then additional rows of entries will be added to the legend.

Auto orientation automatically selects an appropriate orientation based upon the legend Compass property. For east and west Compass values, Vertical orientation is used. For north and south Compass values, Horizontal orientation is used.

See Also

Legend Class


Reversed Property (Legend)

Reversed Property (Legend)

Determines the order of the ChartGroups in the legend.

Syntax

[VB]

Public Property Reversed As Boolean

[C#]

public bool Reversed { get; set; }

[Delphi]

property Reversed: Boolean;

See Also

Legend Class


Size Property (Legend)

Size Property (Legend)

Gets or sets the size of the legend in chart control client coordinates.

Syntax

[VB]

Public Size As Size

[C#]

public Size Size { get; set; }

[Delphi]

property Size: Size;

Remarks

Modifying this value will change SizeDefault.

See Also

Legend Class


SizeDefault Property (Legend)

SizeDefault Property (Legend)

Gets or sets the default size of the legend.

Syntax

[VB]

Public Property SizeDefault As Size

[C#]

public Size SizeDefault { get; set; }

[Delphi]

property SizeDefault: Size;

Remarks

Negative values will allow autopositioning.

See Also

Legend Class


Style Property (Legend)

Style Property (Legend)

Gets the legend style.

Syntax

[VB]

Public ReadOnly Property Style As Style

[C#]

public Style Style { get; }

[Delphi]

property Style: Style;

Remarks

The legend style inherits from the C1Chart style.

See Also

Legend Class


Text Property (Legend)

Text Property (Legend)

Gets or sets the primary text of the legend.

Syntax

[VB]

Public Property Text As String

[C#]

public String Text { get; set; }

[Delphi]

property Text: string;

See Also

Legend Class


Visible Property (Legend)

Visible Property (Legend)

Gets or sets the legend visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

Legend Class


Legend Methods

RectFromSeries Method (Legend)

ResetLocationDefault Method (Legend)

ResetSizeDefault Method (Legend)

ResetStyle Method (Legend)

SeriesFromCoord Method

ShouldSerializeLocationDefault Method (Legend)

ShouldSerializeSizeDefault Method (Legend)

ShouldSerializeStyle Method (Legend)


RectFromSeries Method (Legend)

RectFromSeries Method (Legend)

Returns the minimal Rectangle circumscribing the specified series entry in the legend.

Syntax

[VB]

Pubic Function RectFromSeries(GroupIndex As Integer, SeriesIndex As Integer) As Rectangle

[C#]

public Rectangle RectFromSeries(int GroupIndex, int SeriesIndex);

[Delphi]

function RectFromSeries(GroupIndex: Integer; SeriesIndex: Integer): Rectangle;

See Also

Legend Class


ResetLocationDefault Method (Legend)

ResetLocationDefault Method (Legend)

Resets the Legend location so it is calculated automatically.

Syntax

[VB]

Public Sub ResetLocationDefault()

[C#]

public void ResetLocationDefault();

[Delphi]

procedure ResetLocationDefault;

See Also

Legend Class


ResetSizeDefault Method (Legend)

ResetSizeDefault Method (Legend)

Resets Legend size so it is calculated automatically.

Syntax

[VB]

Public Sub ResetSizeDefault()

[C#]

public void ResetSizeDefault();

[Delphi]

procedure ResetSizeDefault;

See Also

Legend Class


ResetStyle Method (Legend)

ResetStyle Method (Legend)

Resets Legend style inheritance state.

Syntax

[VB]

Public Sub ResetStyle()

[C#]

public void ResetStyle();

[Delphi]

procedure ResetStyle;

See Also

Legend Class


SeriesFromCoord Method

SeriesFromCoord Method

Obtains the group and series indices of the legend entry nearest to the specified client coordinates. Mouse coordinates are specified in client coordinates.

Syntax

[VB]

Public Function SeriesFromCoord (XCoord As Integer, YCoord As Integer, _

ByRef GroupIndex As Integer, ByRef SeriesIndex As Integer) As Boolean

[C#]

public bool SeriesFromCoord (int XCoord, int YCoord, _

ref int GroupIndex, ref int SeriesIndex);

[Delphi]

function SeriesFromCoord(XCoord: Integer; YCoord: Integer; GroupIndex: Integer; SeriesIndex: Integer): Boolean;

Return Value

Boolean

Remarks

The return value indicates successful calculation.

See Also

Legend Class


ShouldSerializeLocationDefault Method (Legend)

ShouldSerializeLocationDefault Method (Legend)

Returns true if the Legend LocationDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeLocationDefault() As Boolean

[C#]

public bool ShouldSerializeLocationDefault ( )

[Delphi]

function ShouldSerializeLocationDefault: Boolean;

Remarks

The default state is LocationDefault.Width = -1, LocationDefault.Height = -1, which results in automatic location of the Legend.

See Also

Legend Class


ShouldSerializeSizeDefault Method (Legend)

ShouldSerializeSizeDefault Method (Legend)

Returns true if the Legend SizeDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeSizeDefault() As Boolean

[C#]

public bool ShouldSerializeSizeDefault ( )

[Delphi]

function ShouldSerializeSizeDefault: Boolean;

Remarks

The default state is SizeDefault.Width = -1, SizeDefault.Height = -1, which results in automatic sizing of the Legend.

See Also

Legend Class


ShouldSerializeStyle Method (Legend)

ShouldSerializeStyle Method (Legend)

Returns true if the Legend Style property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeStyle() As Boolean

[C#]

public bool ShouldSerializeStyle ( )

[Delphi]

function ShouldSerializeStyle: Boolean;

Remarks

The default state is to inherit the Style from the C1Chart Style property.

See Also

Legend Class


Margin Class

Syntax

C1.Win.C1Chart.Margin


Margin All Members

Margin Properties

Bottom Supported by the .NET Compact Framework. | Gets or sets the number of pixels between the bottom edge of the ChartArea and the ChartArea contents.
Left Supported by the .NET Compact Framework. | Gets or sets the number of the pixels between the left of the ChartArea and the ChartArea contents.
Right Supported by the .NET Compact Framework. | Gets or sets the number of pixels between the right of the ChartArea and the ChartArea contents.
Top | Gets or sets the number of pixels between the top of the ChartArea and the ChartArea contents.

Margin Methods

SetMargins

Sets all of the margin properties at once.


Margin Properties

Bottom Property (Margin)

Left Property (Margin)

Right Property (Margin)

Top Property (Margin)


Bottom Property (Margin)

Bottom Property (Margin)

Gets or sets the number of pixels between the bottom edge of the ChartArea and the ChartArea contents.

Syntax

[VB]

Public Property Bottom As Integer

[C#]

public int Bottom { get; set; }

[Delphi]

property Bottom: Integer;

Remarks

Setting the Bottom property of the Margin to –1 will result in an automatic calculation for the Bottom value.

See Also

Margin Class


Left Property (Margin)

Left Property (Margin)

Gets or sets the number of pixels between the left edge of the ChartArea and the ChartArea contents.

Syntax

[VB]

Public Property Left As Integer

[C#]

public int Left { get; set; }

[Delphi]

property Left: Integer;

Remarks

Setting the Left property of the Margin to –1 will result in an automatic calculation for the Left value.

See Also

Margin Class


Right Property (Margin)

Right Property (Margin)

Gets or sets the number of pixels between the right edge of the ChartArea and the ChartArea contents.

Syntax

[VB]

Public Property Right As Integer

[C#]

public int Right { get; set; }

[Delphi]

property Right: Integer;

Remarks

Setting the Right property of the Margin to –1 will result in an automatic calculation for the Right value.

See Also

Margin Class


Top Property (Margin)

Top Property (Margin)

Gets or sets the number of pixels between the top edge of the ChartArea and the ChartArea contents.

Syntax

[VB]

Public Property Top As Integer

[C#]

public int Top { get; set; }

[Delphi]

property Top: Integer;

Remarks

Setting the Top property of the Margin to –1 will result in an automatic calculation for the Top value.

See Also

Margin Class


Margin Methods

SetMargins Method (Margin)


SetMargins Method (Margin)

SetMargins Method (Margin)

Sets all of the Margin properties at once.

Syntax

[VB]

Public Sub SetMargins(left as Integer, top As Integer, right As Integer, bottom As Integer)

[C#]

public void SetMargins(int left, int top, int right, int bottom);

[Delphi]

procedure SetMargins(left: Integer; top: Integer; right: Integer; bottom: Integer);

See Also

Margin Class


ParametricFunction Class

Represents a function defined by a pair of equations, x(t) = f1(t) and y(t) = f2(t), where t is an independent variable.

Syntax

C1.Win.C1Chart.ParametricFunction

ParametricFunction All Members

ParametricFunction Properties

ParametricFunction Methods

ParametricFunction Events


ParametricFunction All Members

ParametricFunction Properties

CodeLinesX | Gets or sets the multi-line presentation of function code for x calculation.
CodeLinesY | Gets or sets the multi-line presentation of function code for y calculation.
CodeTextX | Gets or sets the function code for x calculation.
CodeTextY | Gets or sets the function code for y calculation.
CodeValid | Gets whether the code of ParametricFunction is correct.
CustomFunctionX | Gets or sets the custom function object for x calculation.
CustomFunctionY | Gets or sets the custom function object for y calculation.
MaxT | Gets or sets the maximum parameter value when plotting the function.
MinT | Gets or sets the minimum parameter value when plotting the function.

ParametricFunction Methods

GetX | Calculates the x value of function at specified parameter t.
GetY | Calculates the y value of function at specified parameter t.

ParametricFunction Events

CalculateX | Fires when the x value is calculated.
CalculateY | Fires when the y value is calculated.


ParametricFunction Properties

CodeLinesX Property (ParametricFunction)

CodeLinesY Property (ParametricFunction)

CodeTextX Property (ParametricFunction)

CodeTextY Property (ParametricFunction)

CodeValid Property (ParametricFunction)

CustomFunctionX Property (ParametricFunction)

CustomFunctionY Property (ParametricFunction)

MaxT Property (ParametricFunction)

MinT Property (ParametricFunction)


CodeLinesX Property (ParametricFunction)

CodeLinesX Property (ParametricFunction)

Gets or sets the multi-line presentation of function code for x calculation.

Syntax

[VB]

Public Property CodeLinesX() As String

[C#]

public string[] CodeLinesX { get; set;}

[Delphi]

property CodeLinesX: array of String;

See Also

ParametricFunction Class


CodeLinesY Property (ParametricFunction)

CodeLinesY Property (ParametricFunction)

Gets or sets the multi-line presentation of function code for y calculation.

Syntax

[VB]

Public Property CodeLinesY() As String

[C#]

public string[] CodeLinesY { get; set;}

[Delphi]

property CodeLinesY: array of String;

See Also

ParametricFunction Class


CodeTextX Property (ParametricFunction)

CodeTextX Property (ParametricFunction)

Gets or sets the function code for x calculation.

Syntax

[VB]

Public Property CodeTextX As String

[C#]

public string CodeTextX { get; set;}

[Delphi]

property CodeTextX: string;

See Also

ParametricFunction Class


CodeTextY Property (ParametricFunction)

CodeTextY Property (ParametricFunction)

Gets or sets the function code for y calculation.

Syntax

[VB]

Public Property CodeTextY As String

[C#]

public string CodeTextY { get; set;}

[Delphi]

property CodeTextY: string;

See Also

ParametricFunction Class


CodeValid Property (ParametricFunction)

CodeValid Property (ParametricFunction)

Gets whether the code of ParametricFunction is correct.

Syntax

[VB]

Public Overrides ReadOnly Property CodeValid() As Boolean

[C#]

public override bool CodeValid [ get]

[Delphi]

property CodeValid: Boolean;

See Also

ParametricFunction Class


CustomFunctionX Property (ParametricFunction)

CustomFunctionX Property (ParametricFunction)

Gets or sets the custom function object for x calculation.

Syntax

[VB]

Public Property CustomFunctionX As ISimpleFunction

[C#]

public ISimpleFunction CustomFunctionX { get; set;}

[Delphi]

property CustomFunctionX: ISimpleFunction;

See Also

ParametricFunction Class


CustomFunctionY Property (ParametricFunction)

CustomFunctionY Property (ParametricFunction)

Gets or sets the custom function object for y calculation.

Syntax

[VB]

Public Property CustomFunctionY As ISimpleFunction

[C#]

public ISimpleFunction CustomFunctionY { get; set;}

[Delphi]

property CustomFunctionY: ISimpleFunction;

See Also

ParametricFunction Class


MaxT Property (ParametricFunction)

MaxT Property (ParametricFunction)

Gets or sets the maximum parameter value when plotting the function.

Syntax

[VB]

Public Property MaxT As Double

[C#]

public double MaxT { get; set;}

[Delphi]

property MaxT: Double;

See Also

ParametricFunction Class


MinT Property (ParametricFunction)

MinT Property (ParametricFunction)

Gets or sets the minimum parameter value when plotting the function.

Syntax

[VB]

Public Property MinT As Double

[C#]

public double MinT { get; set;}

[Delphi]

property MinT: Double;

See Also

ParametricFunction Class


ParametricFunction Methods

GetX Method (ParametricFunction)

GetY Method (ParametricFunction)


GetX Method (ParametricFunction)

GetX Method (ParametricFunction)

Calculates the x value of function at specified parameter t.

Syntax

[VB]

Public Function GetX (t As Double) As Double

[C#]

public double GetX (double t);

[Delphi]

function GetX( t : Double) : Double;

Return Value

Double

See Also

ParametricFunction Class


GetY Method (ParametricFunction)

GetY Method (ParametricFunction)

Calculates the y value of function at specified parameter t.

Syntax

[VB]

Public Function GetY (t As Double) As Double

[C#]

public double GetY (double t);

[Delphi]

function GetY( t : Double) : Double;

Return Value

Double

See Also

ParametricFunction Class


ParametricFunction Events

CalculateX Event (ParametricFunction)

CalculateY Event (ParametricFunction)


CalculateX Event (ParametricFunction)

CalculateX Event (ParametricFunction)

Fires when the x value is calculated.

Syntax

[VB]

Public Event CalculateX As CalculateFunctionEventHandler

[C#]

public event CalculateFunctionEventHandler CalculateX;

[Delphi]

property CalculateX : CalculateFunctionEventHandler;

Event data

The event handler receives an argument of type CalculateFunctionEventArgs containing data related to this event.

See Also

ParametricFunction Class


CalculateY Event (ParametricFunction)

CalculateY Event (ParametricFunction)

Fires when the y value is calculated.

Syntax

[VB]

Public Event CalculateY As CalculateFunctionEventHandler

[C#]

public event CalculateFunctionEventHandler CalculateY;

[Delphi]

property CalculateY : CalculateFunctionEventHandler;

Event data

The event handler receives an argument of type CalculateFunctionEventArgs containing data related to this event.

See Also

ParametricFunction Class


Pie Class

Syntax

C1.Win.C1Chart.Pie


Pie Class All Members

Pie Class Properties

InnerRadius | Gets or sets the inner radius used for doughnut charts. A value greater than zero specifies the percentage of the full pie radius used for the doughnut hole.
OtherOffset Supported by the .NET Compact Framework. | Gets or sets the offset value used to vary diameter of the pie within the charting area.
Start Supported by the .NET Compact Framework. | Gets or sets the starting angle of the first Pie slice.


Pie Properties

InnerRadius Property

OtherOffset Property

Start Property (Pie)


InnerRadius Property

InnerRadius Property

Gets or sets the inner radius used for doughnut charts. A value greater than zero specifies the percentage of the full pie radius used for the doughnut hole.

Syntax

[VB]

Public Property InnerRadius As Integer

[C#]

public int InnerRadius { get; set; }

[Delphi]

property InnerRadius: Integer;

See Also

Pie Class


OtherOffset Property

OtherOffset Property

Gets or sets the offset value used to vary diameter of the pie within the charting area.

Syntax

[VB]

Public Property OtherOffset As Integer

[C#]

public int OtherOffset { get; set; }

[Delphi]

property OtherOffset: Integer;

See Also

Pie Class


Start Property (Pie)

Start Property (Pie)

Gets or sets the starting angle of the first Pie slice.

Syntax

[VB]

Public Property Start As Integer

[C#]

public int Start { get; set; }

[Delphi]

property Start: Integer;

Remarks

The angle is measured in degrees, and represents the arc between the most clockwise edge of the first slice and the right horizontal radius of the pie, as measured in the counter-clockwise direction.

See Also

Pie Class


PointStyle Class

PointStyle is used to describe a data point that has different appearance from other data points in the same data series. When applied to a specific data point, the properties of a PointStyle object supercede those specified by the data series containing the data point. To Understand the full meaning of these properties in the context of different chart types, please refer to the context of the style properties associated with each series.

Syntax

C1.Win.C1Chart.PointStyle


PointStyle All Members

PointStyle Properties

FillStyle | Gets or sets the fill style of the point style.
Label | Gets or sets the PointStyle label.
LegendEntry | Gets or sets whether the PointStyle will be shown in legend.
LineStyle | Gets or sets the line style of the PointStyle.
Offset | Gets or sets the offset of the PointStyle.
PointIndex | Gets or sets the data point index of the PointStyle.
Selection | Gets or sets the selection method of the PointStyle.
SeriesIndex | Gets or sets the data series index of the PointStyle.
SymbolStyle | Gets or sets the symbol style of the PointStyle.

PointStyle Events

Select

Fires when the selection of a PointStyle is performed. Fires only when the PointStyle Selection property is set to Custom.


PointStyle Properties

FillStyle Property (PointStyle)

Label Property (PointStyle)

LegendEntry Property (PointStyle)

LineStyle Property (PointStyle)

Offset Property (PointStyle)

PointIndex Property (PointStyle)

Selection Property (PointStyle)

SeriesIndex Property (PointStyle)

SymbolStyle Property (PointStyle)


FillStyle Property (PointStyle)

FillStyle Property (PointStyle)

Gets or sets the fill style of the point style.

Syntax

[VB]

Public Property FillStyle As FillStyle

[C#]

public FillStyle FillStyle { get, set }

[Delphi]

property FillStyle: FillStyle;

See Also

PointStyle Class


Label Property (PointStyle)

Label Property (PointStyle)

Gets or sets the PointStyle label.

Syntax

[VB]

Public Overridable NotOverridable Property Label As String

[C#]

public virtual new string Label { get, set }

[Delphi]

property Label: String;

See Also

PointStyle Class


LegendEntry Property (PointStyle)

LegendEntry Property (PointStyle)

Gets or sets whether the PointStyle will be shown in legend.

Syntax

[VB]

Public Property LegendEntry As Boolean

[C#]

public bool LegendEntry { get, set }

[Delphi]

property LegendEntry: Boolean;

See Also

PointStyle Class


LineStyle Property (PointStyle)

LineStyle Property (PointStyle)

Gets or sets the line style of the PointStyle.

Syntax

[VB]

Public Property LineStyle As ChartLineStyle

[C#]

public ChartLineStyle LineStyle { get; set;}

[Delphi]

property LineStyle: ChartLineStyle;

See Also

PointStyle Class


Offset Property (PointStyle)

Offset Property (PointStyle)

Gets or sets the offset of the PointStyle.

Syntax

[VB]

Public Property Offset As Integer

[C#]

public int Offset { get; set;}

[Delphi]

property Offset: Integer;

Remark

Only for pie chart.

See Also

PointStyle Class


PointIndex Property (PointStyle)

PointIndex Property (PointStyle)

Gets or sets the data point index of the PointStyle. Used in conjunction with the SeriesIndex property value, the PointIndex property value indicates the specific data point to which the PointStyle applies.

Syntax

[VB]

Public Property PointIndex As Integer

[C#]

public int PointIndex { get; set;}

[Delphi]

property PointIndex: Integer;

Remark

Useful only when Selection is PointStyleSelectionEnum.Index.

See Also

PointStyle Class


Selection Property (PointStyle)

Selection Property (PointStyle)

Gets or sets the selection method of the PointStyle. For selection method options, see PointStyleSelectionEnum.

Syntax

[VB]

Public Property Selection As PointStyleSelectionEnum

[C#]

public PointStyleSelectionEnum Selection { get; set;}

[Delphi]

property Selection: PointStyleSelectionEnum;

See Also

PointStyle Class


SeriesIndex Property (PointStyle)

SeriesIndex Property (PointStyle)

Gets or sets the data series index of the PointStyle. Used in conjunction with the PointIndex property value, the SeriesIndex property value indicates the specific data point to which the PointStyle applies.

Syntax

[VB]

Public Property SeriesIndex As Integer

[C#]

public int SeriesIndex { get; set;}

[Delphi]

property SeriesIndex: Integer;

Remark

This property is not used when selection method specified by the Selection property includes all data series (e.g. - DataMaxX, DataMaxY, DataMinX, DataMinY).

See Also

PointStyle Class


SymbolStyle Property (PointStyle)

SymbolStyle Property (PointStyle)

Gets or sets the symbol style of the PointStyle.

Syntax

[VB]

Public Property SymbolStyle As ChartSymbolStyle

[C#]

public ChartSymbolStyle SymbolStyle { get; set;}

[Delphi]

property SymbolStyle: ChartSymboStyle;

See Also

PointStyle Class


PointStyle Events

Select Event (PointStyle)


Select Event (PointStyle)

Select Event (PointStyle)

Fires when the selection of a PointStyle is performed. Fires only when the PointStyle Selection property is set to PointStyleSelectionEnum.Custom.

Syntax

[VB]

Public Event Select As PointStyleSelectEventHandler

[C#]

public event PointStyleSelectEventHandler Select;

[Delphi]

property Select : PointStyleSelectEventHandler;

Event data

The event handler receives an argument of type PointStyleSelectEventArgs containing data related to this event.

See Also

PointStyle Class


PointStylesCollection Class

Stores point styles.

Syntax

C1.Win.C1Chart.PointStylesCollection


PointStylesCollection All Members

PointStylesCollection Properties

Count | Gets the item count of the collection.
Item | Gets the specified PointStyle from the collection by numeric index.

PointStylesCollection Methods

Add | Adds the specified PointStyle to the collection.
AddNewPointStyle | Creates a new PointStyle and appends it to the collection.
Contains | Determines whether the specified PointStyle exists in the collection.
CopyTo | Copies the collection of PointStyles beginning with the specified index to the specified array of PointStylesCollection objects.
IndexOf | Gets the current index of the specified PointStyle in the collection.
Insert | Inserts the specified PointStyle in the collection at the specified index.
Remove | Removes the specified PointStyle from the collection.


PointStylesCollection Properties

Count Property (PointStylesCollection)

Item Property (PointStylesCollection)


Count Property (PointStylesCollection)

Count Property (PointStylesCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count : Integer;

See Also

PointStylesCollection Class


Item Property (PointStylesCollection)

Item Property (PointStylesCollection)

Gets the specified PointStyle from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index as Integer) As PointStyle

[C#]

public PointStyle this[int index] { get; }

[Delphi]

property Item( index : Integer) : PointStyle;

See Also

PointStylesCollection Class


PointStylesCollection Methods

Add Method (PointStylesCollection)

AddNewPointStyle Method (PointStylesCollection)

Contains Method (PointStylesCollection)

CopyTo Method (PointStylesCollection)

IndexOf Method (PointStylesCollection)

Insert Method (PointStylesCollection)

Remove Method (PointStylesCollection)


Add Method (PointStylesCollection)

Add Method (PointStylesCollection)

Adds the specified PointStyle to the collection.

Syntax

[VB]

Public Function Add (ps As PointStyle) As Integer

[C#]

public int Add (PointStyle ps);

[Delphi]

function Add( ps : PointStyle) : Integer;

Return Value

Integer

See Also

PointStylesCollection Class


AddNewPointStyle Method (PointStylesCollection)

AddNewPointStyle Method (PointStylesCollection)

Creates a new PointStyle and appends it to the collection.

Syntax

[VB]

Public Function AddNewPointStyle () As PointStyle

[C#]

public PointStyle AddNewPointStyle();

[Delphi]

function AddNewPointStyle() : PointStyle;

Return Value

PointStyle

See Also

PointStylesCollection Class


Contains Method (PointStylesCollection)

Contains Method (PointStylesCollection)

Determines whether the specified PointStyle exists in the collection.

Syntax

[VB]

Public Function Contains(ps As PointStyle) As Boolean

[C#]

public bool Contains(PointStyle ps);

[Delphi]

function Contains(ps: PointStyle): Boolean;

Return Value

A boolean indicating whether the specified PointStyle is contained in the collection.

See Also

PointStylesCollection Class


CopyTo Method (PointStylesCollection)

CopyTo Method (PointStylesCollection)

Copies the collection of PointStyles beginning with the specified index to the specified array of PointStylesCollection objects.

Syntax

[VB]

Public Sub CopyTo(array() As PointStyle, index As Integer)

[C#]

public void CopyTo(PointStyle[] array , int index);

[Delphi]

procedure CopyTo(array: array of PointStyle; index: Integer);

See Also

PointStylesCollection Class


IndexOf Method (PointStylesCollection)

IndexOf Method (PointStylesCollection)

Gets the current index of the specified PointStyle in the collection.

Syntax

[VB]

Public Function IndexOf(ps As PointStyle) As Integer

[C#]

public int IndexOf(PointStyle ps);

[Delphi]

function IndexOf(ps: PointStyle): Integer;

Return Value

Returns an integer indicating the element of the specified PointStyle within the collection. If the PointStyle is not foundthe return value is –1.

See Also

PointStylesCollection Class


Insert Method (PointStylesCollection)

Insert Method (PointStylesCollection)

Inserts the specified PointStyle in the collection at the specified index.

Syntax

[VB]

Public Sub Insert (index As Integer, ps As PointStyle)

[C#]

public void Insert (int index, PointStyle ps);

[Delphi]

procedure Insert( index:Integer, ps : PointStyle);

See Also

PointStylesCollection Class


Remove Method (PointStylesCollection)

Remove Method (PointStylesCollection)

Removes the specified PointStyle from the collection.

Syntax

[VB]

Public Sub Remove (ps As PointStyle)

[C#]

public void Remove (PointStyle ps);

[Delphi]

procedure Remove( ps : PointStyle);

See Also

PointStylesCollection Class


PointStyleSelectEventArgs Class

The PointStyleSelectEventArgs class contains event arguments for PointStyleSelectEventHandler.


PointStyleSelectEventArgs All Members

PointStyleSelectEventArgs Properties

PointIndex | Gets the point index of data point.
Selected | Gets or set whether this point style should be applied to the data point defined by SeriesIndex and PointIndex.
SeriesIndex | Gets the series index of data point.

PointStyleSelectEventArgs Delegates

PointStyleSelectEventHandler

Delegate for point style selection event.


PointStyleSelectEventArgs Properties

PointIndex Property (PointStyleSelectEventArgs)

Selected Property (PointStyleSelectEventArgs)

SeriesIndex Property (PointStyleSelectEventArgs)


PointIndex Property (PointStyleSelectEventArgs)

PointIndex Property (PointStyleSelectEventArgs)

Gets the point index of data point for which the event is providing customization. Used in conjunction with the SeriesIndex property value, the PointIndex property value indicates the specific data point to which the PointStyle customization applies.

Syntax

[VB]

Public ReadOnly Property PointIndex As Integer

[C#]

public int PointIndex { get;}

[Delphi]

property PointIndex: Integer;

See Also

PointStyleSelectEventArgs Class


Selected Property (PointStyleSelectEventArgs)

Selected Property (PointStyleSelectEventArgs)

Gets or set whether this point style should be applied to the data point defined by SeriesIndex and PointIndex properties.

Syntax

[VB]

Public Property Selected As Boolean

[C#]

public bool Selected{ get; set;}

[Delphi]

property Selected: Boolean;

See Also

PointStyleSelectEventArgs Class


SeriesIndex Property (PointStyleSelectEventArgs)

SeriesIndex Property (PointStyleSelectEventArgs)

Gets the series index of data point for which the event is providing customization. Used in conjunction with the SeriesIndex property value, the PointIndex property value indicates the specific data point to which the PointStyle customization applies.

Syntax

[VB]

Public ReadOnly Property SeriesIndex As Integer

[C#]

public int SeriesIndex { get;}

[Delphi]

property SeriesIndex: Integer;

See Also

PointStyleSelectEventArgs Class


PointStyleSelectEventArgs Delegates

PointStyleSelectEventHandler Delegate


PointStyleSelectEventHandler Delegate

PointStyleSelectEventHandler Delegate

The Delegate for the PointStyle Select event.

Syntax

[VB]

Public Delegate Sub PointStyleSelectEventHandler (sender as Object, e as PointStyleSelectEventArgs);

[C#]

public delegate void PointStyleSelectEventHandler(object sender, PointStyleSelectEventArgs e);

[Delphi]

type = PointStyleSelectEventHandler : procedure( sender: object, e: PointStyleSelectEventArgs) of object;

See Also

PointStyleSelectEventArgs Class


Polar Class

Syntax

C1.Win.C1Chart.Polar


Polar All Members

Polar Properties

Degrees Supported by the .NET Compact Framework. | Gets or sets whether the X data values and Start value reflect angles in degrees (true) or radians (false) for Polar charts.
PiRatioAnnotations Supported by the .NET Compact Framework. | Gets or sets whether polar charts measured in radians should be annotated with Pi rations.
Start Supported by the .NET Compact Framework. | Gets or sets the starting angle of Polar charts.


Polar Properties

Degrees Property (Polar)

PiRatioAnnotations Property

Start Property


Degrees Property (Polar)

Degrees Property (Polar)

Gets or sets whether the X data values and Start value reflect angles in degrees (true) or radians (false) for Polar charts.

Syntax

[VB]

Public Property Degrees As Boolean

[C#]

public bool Degrees { get; set; }

[Delphi]

property Degrees: Boolean;

See Also

Polar Class


PiRatioAnnotations Property

PiRatioAnnotations Property

Gets or sets whether polar charts measured in radians should be annotated with Pi rations.

Syntax

[VB]

Public Property PiRatioAnnotations As Boolean

[C#]

public bool PiRatioAnnotations { get; set; }

[Delphi]

property PiRatioAnnotations: Boolean;

See Also

Polar Class


Start Property

Start Property

Gets or sets the starting angle of Polar charts.

Syntax

[VB]

Public Property Start As Double

[C#]

public double Start { get; set; }

[Delphi]

property Start: Double;

Remarks

The angle is measured in degrees if the Degrees property is true, radians otherwise.

See Also

Polar Class


PlotArea Class

Syntax

C1.Win.C1Chart.PlotArea


PlotArea All Members

PlotArea Properties

AlarmZones Supported by the .NET Compact Framework. | Gets the AlarmZonesCollection.
BackColor Supported by the .NET Compact Framework. | Gets or sets the backcolor of the PlotArea.
BackColor2 | Gets or sets the gradient or hatch background.
Boxed Supported by the .NET Compact Framework. | Gets or sets the whether the PlotArea is enclosed in a box (solid border).
ForeColor Supported by the .NET Compact Framework. | Gets or sets the forecolor of the PlotArea.
GradientStyle | Defines the style of the background gradient filling.
HatchStyle | Defines the style of the background hatch filling.
Location Supported by the .NET Compact Framework. | Gets the location of the PlotArea in chart control client coordinates.
Opaque Supported by the .NET Compact Framework. | Gets or sets the whether the PlotArea background is opaque.
Size Supported by the .NET Compact Framework. | Gets the size of the PlotArea in chart control client coordinates.
View3D Supported by the .NET Compact Framework. | Gets the View3D object.
Visible Supported by the .NET Compact Framework. | Gets or sets the PlotArea visibility.

PlotArea Methods

ResetBackColor | Resets the backcolor.
ResetForeColor | Resets the forecolor.
ResetOpaque | Resets the opaqueness of the background.
ShouldSerializeBackColor | Returns true if the PlotArea BackColor property is not in the default state.
ShouldSerializeBackColor2 | Returns true if the PlotArea BackColor2 property is not in the default state.
ShouldSerializeForeColor | Returns true if the PlotArea ForeColor property is not in the default state.
ShouldSerializeOpaque | Returns true if the PlotArea Opaque property is not in the default state.


PlotArea Properties

AlarmZones Property

BackColor Property (PlotArea)

BackColor2 Property (PlotArea)

Boxed Property

ForeColor Property (PlotArea)

GradientStyle Property (PlotArea)

HatchStyle Property (PlotArea)

Location Property (PlotArea)

Opaque Property (PlotArea)

Size Property (PlotArea)

View3D Property (PlotArea)

Visible Property (PlotArea)


AlarmZones Property

AlarmZones Property

Gets the AlarmZonesCollection.

Syntax

[VB]

Public ReadOnly Property AlarmZones As AlarmZonesCollection

[C#]

public AlarmZonesCollection AlarmZones { get; }

[Delphi]

property AlarmZones: AlarmZonesCollection;

See Also

PlotArea Class


BackColor Property (PlotArea)

BackColor Property (PlotArea)

Gets or sets the backcolor of the PlotArea.

Syntax

[VB]

Public Property BackColor As Color

[C#]

public Color BackColor { get; set; }

[Delphi]

property BackColor: Color;

Remarks

Inherits from the ChartArea.

See Also

PlotArea Class


BackColor2 Property (PlotArea)

BackColor2 Property (PlotArea)

Gets or sets the gradient or hatch background.

Syntax

[VB]

Public Property BackColor2 As Color

[C#]

public Color BackColor2 { get; set; }

[Delphi]

property BackColor2: Color;

See Also

PlotArea Class


Boxed Property

Boxed Property

Gets or sets the whether the PlotArea is enclosed in a box (solid border).

Syntax

[VB]

Public Property Boxed As Boolean

[C#]

public bool Boxed { get; set; }

[Delphi]

property Boxed: Boolean;

See Also

PlotArea Class


ForeColor Property (PlotArea)

ForeColor Property (PlotArea)

Gets or sets the forecolor of the PlotArea.

Syntax

[VB]

Public Property ForeColor As Color

[C#]

public Color ForeColor { get; set; }

[Delphi]

property ForeColor: Color;

Remarks

Inherits from the ChartArea.

See Also

PlotArea Class


GradientStyle Property (PlotArea)

GradientStyle Property (PlotArea)

Defines the style of the background gradient filling.

Syntax

[VB]

Public Property GradientStyle As GradientStyleEnum

[C#]

public GradientStyleEnum GradientStyle {get;set;}

[Delphi]

property GradientStyle: GradientStyleEnum;

See Also

PlotArea Class


HatchStyle Property (PlotArea)

HatchStyle Property (PlotArea)

Defines the style of the background hatch filling.

Syntax

[VB]

Public Property HatchStyle As HatchStyleEnum

[C#]

public HatchStyleEnum HatchStyle {get;set;}

[Delphi]

property HatchStyle: HatchStyleEnum;

See Also

PlotArea Class


Location Property (PlotArea)

Location Property (PlotArea)

Gets the location of the PlotArea in chart control client coordinates.

Syntax

[VB]

Public ReadOnly Property Location As Point

[C#]

public Point Location { get; }

[Delphi]

property Location: Point;

See Also

PlotArea Class


Opaque Property (PlotArea)

Opaque Property (PlotArea)

Gets or sets the whether the PlotArea background is opaque.

Syntax

[VB]

Public Property Opaque As Boolean

[C#]

public bool Opaque { get; set; }

[Delphi]

property Opaque: Boolean;

Remarks

Inherits from the ChartArea.

See Also

PlotArea Class


Size Property (PlotArea)

Size Property (PlotArea)

Gets the size of the PlotArea in chart control client coordinates.

Syntax

[VB]

Public ReadOnly Property Size As Size

[C#]

public Size Size { get; }

[Delphi]

property Size: Size;

See Also

PlotArea Class


View3D Property (PlotArea)

View3D Property (PlotArea)

Gets the View3D object of the PlotArea.

Syntax

[VB]

Public ReadOnly Property View3D As View3D

[C#]

public View3D View3D{ get; }

[Delphi]

property View3D: View3D;

Remarks

The returned View3D object has properties which are used to set 3D aspects of the PlotArea for charts with 3D effects.

See Also

PlotArea Class


Visible Property (PlotArea)

Visible Property (PlotArea)

Gets or sets the PlotArea visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

Remarks

If the PlotArea is not visible, the data is not charted.

See Also

PlotArea Class


PlotArea Methods

ResetBackColor Method (PlotArea)

ResetForeColor Method (PlotArea)

ResetOpaque Method (PlotArea)

ShouldSerializeBackColor Method (PlotArea)

ShouldSerializeBackColor2 Method (PlotArea)

ShouldSerializeForeColor Method (PlotArea)

ShouldSerializeOpaque Method (PlotArea)


ResetBackColor Method (PlotArea)

ResetBackColor Method (PlotArea)

Resets the inheritance state of the PlotArea backcolor.

Syntax

[VB]

Public Sub ResetBackcolor()

[C#]

public void ResetBackcolor();

[Delphi]

procedure ResetBackcolor;

Remarks

This method resets the inheritance state of the PlotArea backcolor.

See Also

PlotArea Class


ResetForeColor Method (PlotArea)

ResetForeColor Method (PlotArea)

Resets the inheritance state of the PlotArea forecolor.

Syntax

[VB]

Public Sub ResetForecolor()

[C#]

public void ResetForecolor();

[Delphi]

procedure ResetForecolor;

Remarks

This method resets the inheritance state of the PlotArea forecolor.

See Also

PlotArea Class


ResetOpaque Method (PlotArea)

ResetOpaque Method (PlotArea)

Resets the inheritance state of the PlotArea opaque.

Syntax

[VB]

Public Sub ResetOpaque()

[C#]

public void ResetOpaque ();

[Delphi]

procedure ResetOpaque;

Remarks

This method resets the inheritance state of the PlotArea opaque.

See Also

PlotArea Class


ShouldSerializeBackColor Method (PlotArea)

ShouldSerializeBackColor Method (PlotArea)

Returns true if the PlotArea BackColor property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeBackColor() As Boolean

[C#]

public bool ShouldSerializeBackColor ( )

[Delphi]

function ShouldSerializeBackColor: Boolean;

Remarks

The default state is to inherit the BackColor from the ChartArea object.

See Also

PlotArea Class


ShouldSerializeBackColor2 Method (PlotArea)

ShouldSerializeBackColor2 Method (PlotArea)

Returns true if the PlotArea BackColor2 property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeBackColor2() As Boolean

[C#]

public bool ShouldSerializeBackColor2 ( )

[Delphi]

function ShouldSerializeBackColor2: Boolean;

Remarks

The default state is to inherit the BackColor2 from the ChartArea object.

See Also

PlotArea Class


ShouldSerializeForeColor Method (PlotArea)

ShouldSerializeForeColor Method (PlotArea)

Returns true if the PlotArea ForeColor property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeForeColor() As Boolean

[C#]

public bool ShouldSerializeForeColor ( )

[Delphi]

function ShouldSerializeForeColor: Boolean;

Remarks

The default state is to inherit the ForeColor from the ChartArea object.

See Also

PlotArea Class


ShouldSerializeOpaque Method (PlotArea)

ShouldSerializeOpaque Method (PlotArea)

Returns true if the PlotArea Opaque property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeOpaque() As Boolean

[C#]

public bool ShouldSerializeOpaque ( )

[Delphi]

function ShouldSerializeOpaque: Boolean;

Remarks

The default state is to inherit the Opaque from the ChartArea object.

See Also

PlotArea Class


PolygonData Class

Syntax

C1.Win.C1Chart.PolygonData


PolygonData All Members

PolygonData Properties

PolygonSource | Gets or sets the source of the polygon coordinates.
SeriesIndex | Gets or sets the series index of the data series polygon source.


PolygonData Properties

PolygonSource Property

SeriesIndex Property


PolygonSource Property

PolygonSource Property

Gets or sets the source of the polygon coordinates.

Syntax

[VB]

Public Property PolygonSource As PolygonSourceEnum

[C#]

public PolygonSourceEnum PolygonSource { get; set; }

[Delphi]

property PolygonSource: PolygonSourceEnum;

See Also

PolygonData Class


SeriesIndex Property

SeriesIndex Property

Gets or sets the series index of the data series polygon source.

Syntax

[VB]

Public Property SeriesIndex As Integer

[C#]

public int PolygonSource { get; set; }

[Delphi]

property PolygonSource: Integer;

See Also

PolygonData Class


PostDrawSeriesEventArgs Class

Syntax

C1.Win.C1Chart.PostDrawSeriesEventArgs


PostDrawSeriesEventArgs All Members

PostDrawSeriesEventArgs Properties

Graphics | Gets the graphics of the Drawing object.
Series | Gets the series of the ChartDataSeries object.

PostDrawSeriesEventArgs Delegates

PostDrawSeriesEventHandler

Represents the method that will handle the DrawDataSeries event of a C1Chart class.


PostDrawSeriesEventArgs Properties

Graphics Property

Series Property


Graphics Property

Graphics Property

Gets the graphics of the drawing object.

Syntax

[VB]

Public ReadOnly Property Graphics As System.Drawing.Graphics

[C#]

public System.Drawing.Graphics Graphics { get; }

[Delphi]

property Graphics: System.Drawing.Graphics;

See Also

PostDrawSeriesEventArgs Class


Series Property

Series Property

Gets the series of the ChartDataSeries object.

Syntax

[VB]

Public ReadOnly Property Series As ChartDataSeries

[C#]

public ChartDataSeries Series { get;}

[Delphi]

property Series: ChartDataSeries;

See Also

PostDrawSeriesEventArgs Class


Radar Class

Syntax

C1.Win.C1Chart.Radar


Radar All Members

Radar Properties

Degrees Supported by the .NET Compact Framework. | Gets or sets whether the Start value reflects angles in degrees (true) or radians (false) for Radar charts.
Filled Supported by the .NET Compact Framework. | Gets or sets whether Radar charts should be filled.
Start Supported by the .NET Compact Framework. | Gets or sets the starting angle of Radar charts.


Radar Properties

Degrees Property (Radar)

Filled Property

Start Property (Radar)


Degrees Property (Radar)

Degrees Property (Radar)

Gets or sets whether the Start value reflects angles in degrees (true) or radians (false) for Radar charts.

Syntax

[VB]

Public Property Degrees As Boolean

[C#]

public bool Degrees { get; set; }

[Delphi]

property Degrees: Boolean;

See Also

Radar Class


Filled Property

Filled Property

Gets or sets whether Radar charts should be filled.

Syntax

[VB]

Public Property Filled As Boolean

[C#]

public bool Filled { get; set; }

[Delphi]

property Filled: Boolean;

See Also

Radar Class


Start Property (Radar)

Start Property (Radar)

Gets or sets the starting angle of Radar charts.

Syntax

[VB]

Public Property Start As Double

[C#]

public double Start { get; set; }

[Delphi]

property Start: double;

Remarks

The angle is measured in degrees if the Degrees property is true, radians otherwise. The angle is measured in the counter-clockwise direction from the 12 o’clock position.

See Also

Radar Class


RegressionOptions Class

Syntax

C1.Win.C1Chart.RegressionOptions


RegressionOptions All Members

RegressionOptions Properties

NumTerms | Gets or sets the number of terms in the regression equation.
UseYIntercept | Gets or sets whether the trend line uses YIntercept property.
YIntercept | Gets or sets the y value at which trend line intercepts x=0 line.


RegressionOptions Properties

NumTerms Property

UseYIntercept Property

YIntercept Property


NumTerms Property

NumTerms Property

Gets or sets the number of terms in regression equation. For polynomial regressions, the number of terms indicates the order of the polynomial, i.e. NumTerms = order + 1. Therefore, a linear regression would have NumTerms = 2.

Syntax

[VB]

Public Property NumTerms As Integer

[C#]

public int NumTerms{ get; set;}

[Delphi]

property NumTerms: Integer;

Remarks

Only for polynomial and Fourier trend lines.

See Also

RegressionOptions Class


UseYIntercept Property

UseYIntercept Property

Gets or sets whether the trend line uses YIntercept property.

Syntax

[VB]

Public Property UseYIntercept As Boolean

[C#]

public bool UseYIntercept{ get; set;}

[Delphi]

property UseYIntercept: boolean;

Remarks

Only for polynomial trend lines.

See Also

RegressionOptions Class


YIntercept Property

YIntercept Property

Gets or sets the y value of the trend line when X = 0.

Syntax

[VB]

Public Property YIntercept As Double

[C#]

public double YIntercept{ get; set;}

[Delphi]

property YIntercept: double;

Remarks

Only for polynomial trend lines.

See Also

RegressionOptions Class


RegressionStatistics Class

Contains statistical information about regression trend line.

Syntax

C1.Win.C1Chart.RegressionStatistics


RegressionStatistics All Members

RegressionStatistics Properties

Coeffs | Gets the calculated coefficients of regression equation.
DF | Gets the degrees of freedom.
F | Gets the F-observed(F-statistic) value.
Rsq | Gets the coefficient of determination (R-squared).
Sey | Gets the standard error for the y estimate.
Sse | Gets the sum of squares due to error.
Ssr | Gets the sum of squares due to regression.


RegressionStatistics Properties

Coeffs Property

DF Property

F Property

Rsq Property

Sey Property

Sse Property

Ssr Property


Coeffs Property

Coeffs Property

Gets the calculated coefficients of regression equation.

Syntax

[VB]

Public ReadOnly Property Coeffs() As Double

[C#]

public double[] Coeffs{ get;}

[Delphi]

property Coeffs: array of Double;

See Also

RegressionStatistics Class


DF Property

DF Property

Gets the degrees of freedom.

Syntax

[VB]

Public ReadOnly Property DF As Double

[C#]

public double DF{ get;}

[Delphi]

property DF: Double;

See Also

RegressionStatistics Class


F Property

F Property

Gets the F-observed(F-statistic) value.

Syntax

[VB]

Public ReadOnly Property F As Double

[C#]

public double F{ get;}

[Delphi]

property F: Double;

See Also

RegressionStatistics Class


Rsq Property

Rsq Property

Gets the coefficient of determination (R-squared).

Syntax

[VB]

Public ReadOnly Property Rsq As Double

[C#]

public double Rsq{ get;}

[Delphi]

property Rsq: Double;

See Also

RegressionStatistics Class


Sey Property

Sey Property

Gets the standard error for the y estimate.

Syntax

[VB]

Public ReadOnly Property Sey As Double

[C#]

public double Sey{ get;}

[Delphi]

property Sey: Double;

See Also

RegressionStatistics Class


Sse Property

Sse Property

Gets the sum of squares due to error.

Syntax

[VB]

Public ReadOnly Property Sse As Double

[C#]

public double Sse{ get;}

[Delphi]

property Sse: Double;

See Also

RegressionStatistics Class


Ssr Property

Ssr Property

Gets the sum of squares due to regression.

Syntax

[VB]

Public ReadOnly Property Ssr As Double

[C#]

public double Ssr{ get;}

[Delphi]

property Ssr: Double;

See Also

RegressionStatistics Class


Rounding Class

Syntax

C1.Win.C1Chart.Rounding

Remarks

Provides the properties set that describes the rounding of border corners.


Rounding All Members

Rounding Properties

All | Gets or sets the radius of rounding for all corners of the rectangle.
LeftBottom | Gets or sets the radius of rounding for the left bottom corner of the rectangle.
LeftTop | Gets or sets the radius of rounding for the left top corner of the rectangle.
RightBottom | Gets or sets the radius of rounding for the right bottom corner of the rectangle.
RightTop | Gets or sets the radius of rounding for the right top corner of the rectangle.


Rounding Properties

All Property

LeftBottom Property

LeftTop Property

RightBottom Property

RightTop Property


All Property

All Property

Gets or sets the radius of rounding for all corners of the rectangle.

Syntax

[VB]

Public Property All as Integer

[C#]

public int All { get; set; }

[Delphi]

property All: Integer;

Remarks

Setting this property changes all of the corners by changing the values of the LeftTop, LeftBottom, RightTop, and RightBottom properties. If these properties are re-set after setting the All property, then each corner may have a different radius.

See Also

Rounding Class


LeftBottom Property

LeftBottom Property

Gets or sets the radius of rounding for the left bottom corner of the rectangle.

Syntax

[VB]

Public Property LeftBottom As Integer

[C#]

public int LeftBottom { get; set; }

[Delphi]

property LeftBottom: Integer;

Remarks

Setting this property will override the All property value for the LeftBottom region of the border.

See Also

Rounding Class


LeftTop Property

LeftTop Property

Gets or sets the radius of rounding for the left top corner of the rectangle.

Syntax

[VB]

Public Property LeftTop As Integer

[C#]

public int LeftTop { get; set; }

[Delphi]

property LeftTop: Integer;

Remarks

Setting this property will override the All property value for the LeftTop region of the border.

See Also

Rounding Class


RightBottom Property

RightBottom Property

Gets or sets the radius of rounding for the right bottom corner of the rectangle.

Syntax

[VB]

Public Property RightBottom As Integer

[C#]

public int RightBottom { get; set; }

[Delphi]

property RightBottom: Integer;

Remarks

Setting this property will override the All property value for the RightBottom region of the border.

See Also

Rounding Class


RightTop Property

RightTop Property

Gets or sets the radius of rounding for the right top corner of the rectangle.

Syntax

[VB]

Public Property RightTop As Integer

[C#]

public int RightTop { get; set; }

[Delphi]

property RightTop: Integer;

Remarks

Setting this property will override the All property value for the RightTop region of the border.

See Also

Rounding Class


StatisticalData Class

Syntax

C1.Win.C1Chart.StatisticalData

Remarks

Provides statistics logic and reports the calculated values through its properties.


StatisticalData All Members

StatisticalData Properties

Confidence | Gets an object reporting the confidence interval for the associated data.
DataStatus | Gets a string indicating whether data is available for statistical calculations.
Mean | Gets the mean value of the associated data.
Median | Gets the median value of the associated data.
N | Gets the number of data elements used to compute the statistics.
PropertyGridEnabled | Gets or sets whether statistic calculations are reported in property grids and by reflection.
Rsq | Gets the R-Squared statistic of the associated XY data.
StdDev | Gets the standard deviation of the associated data.
Variance | Gets the Variance of the associated data.


StatisticalData Property

Confidence Property

DataStatus Property

Mean Property

Median Property

N Property

PropertyGridEnabled Property

Rsq Property

StdDev Property

Variance Property


Confidence Property

Confidence Property

Gets an object reporting the confidence interval for the associated data.

Syntax

[VB]

Public ReadOnly Property Confidence As ConfidenceInterval

[C#]

public ConfidenceInterval Confidence { get;}

[Delphi]

property Confidence: Integer;

Remarks

The returned ConfidenceInterval object allows specification of the desired probability level of the confidence interval as well as reporting the interval.

See Also

StatisticalData Class


DataStatus Property

DataStatus Property

Gets a string indicating whether data is available for statistical calculations.

Syntax

[VB]

Public ReadOnly Property DataStatus As String

[C#]

public string DataStatus { get;}

[Delphi]

property DataStatus: String;

See Also

StatisticalData Class


Mean Property

Mean Property

Gets the mean value of the associated data.

Syntax

[VB]

Public ReadOnly Property Mean As Double

[C#]

public double Mean { get;}

[Delphi]

property Mean: Double;

See Also

StatisticalData Class


Median Property

Median Property

Gets the median value of the associated data.

Syntax

[VB]

Public ReadOnly Property Median As Double

[C#]

public double Median { get;}

[Delphi]

property Median: Double;

See Also

StatisticalData Class


N Property

N Property

Gets the number of data elements used to compute the statistics.

Syntax

[VB]

Public ReadOnly Property N As Integer

[C#]

public int N { get;}

[Delphi]

property N: Integer;

Remarks

Data holes are excluded from the calculations, so this property may be less than the actual number of data elements.

See Also

StatisticalData Class


PropertyGridEnabled Property

PropertyGridEnabled Property

Gets or sets whether statistic calculations are reported in property grids and by reflection.

Syntax

[VB]

Public Property PropertyGridEnabled As Boolean

[C#]

public bool PropertyGridEnabled { get; set; }

[Delphi]

property PropertyGridEnabled: Boolean;

Remarks

By default, this property is always false, and is not persisted. It is provided to restrict unnecessary and unwanted time consuming calculations when browsing data properties. This property has no effect on coded property access.

See Also

StatisticalData Class


Rsq Property

Rsq Property

Gets the R-Squared statistic of the associated XY data.

Syntax

[VB]

Public ReadOnly Property Rsq As Double

[C#]

public double Rsq { get; }

[Delphi]

property Rsq: Double;

See Also

StatisticalData Class


StdDev Property

StdDev Property

Gets the standard deviation of the associated data.

Syntax

[VB]

Public ReadOnly Property StdDev As Double

[C#]

public double StdDev { get; }

[Delphi]

property StdDev: Double;

See Also

StatisticalData Class


Variance Property

Variance Property

Gets the Variance of the associated data.

Syntax

[VB]

Public ReadOnly Property Variance As Double

[C#]

public double Variance { get; }

[Delphi]

property Variance: Double;

See Also

StatisticalData Class


StatisticalData.ConfidenceInterval Class

Syntax

C1.Win.C1Chart.StatisticalData.ConfidenceInterval

Remarks

This class reports the confidence interval statistic for the specified confidence level.


StatisticalData.ConfidenceInterval All Members

StatisticalData.ConfidenceInterval Properties

Interval | Gets the confidence interval for the associated data for the specified confidence level of probability.
Probability | Gets or sets the desired percent confidence level used to calculate the confidence interval for the associated data.


StatisticalData.ConfidenceInterval Properties

Interval Property

Probability Property


Interval Property

Interval Property

Gets the confidence interval for the associated data for the specified confidence level of probability.

Syntax

[VB]

Public ReadOnly Property Interval As Double

[C#]

public double Interval { get;}

[Delphi]

property Interval: Double;

See Also

StatisticalData.ConfidenceInterval Class


Probability Property

Probability Property

Gets or sets the desired percent confidence level used to calculate the confidence interval for the associated data.

Syntax

[VB]

Public Property Probability As StatisticalData.Level

[C#]

public StatisticalData.Level Probability { get; set; }

[Delphi]

property Probability: StatisticalData.Level;

Remarks

The Probability property is intentionally not persisted.

See Also

StatisticalData Class


Style Class

Syntax

C1.Win.C1Chart.Style

Remarks

The Style class is used to describe the appearance of various elements of the chart, including the chart itself, the ChartArea, the Legend, the Header, the Footer and Labels. Typically, an object’s style and/or one or more of its properties are inherited the object’s parent style or its default style. All Style properties have an associated Reset Method that restores the style property inheritance state.


Style All Members

Style Properties

Autowrap | Gets or sets whether the text is automatically wrapped.
BackColor Supported by the .NET Compact Framework. | Gets or sets the backcolor.
BackColor2 | Gets or sets the gradient or hatch background.
Border Supported by the .NET Compact Framework. | Gets the border object.
Font Supported by the .NET Compact Framework. | Gets or sets the font object.
ForeColor Supported by the .NET Compact Framework. | Gets or sets the forecolor.
GradientStyle | Defines the style of the background gradient filling.
HatchStyle | Defines the style of the background hatch filling.
HorizontalAlignment Supported by the .NET Compact Framework. | Gets or sets the text horizontal alignment.
ImageAlignment | Gets or sets the image alignment.
Opaque Supported by the .NET Compact Framework. | Gets or sets the opaqueness of the background.
Rotation | Gets or sets the text orientation.
VerticalAlignment Supported by the .NET Compact Framework. | Gets or sets the text vertical alignment.

Style Methods

ResetAutowrap | Resets the automatic wrapping.
ResetBackColor | Resets the backcolor.
ResetBorder | Resets the border object.
ResetFont | Resets the font object.
ResetForeColor | Resets the forecolor.
ResetGradientStyle | Resets the gradient style.
ResetHatchStyle | Resets the hatching style.
ResetHorizontalAlignment | Resets the text horizontal alignment.
ResetImageAlignment | Resets the image alignment.
ResetOpaque | Resets the opaqueness of the background.
ResetRotation | Resets the text orientation.
ResetVerticalAlignment | Resets the text vertical alignment.
ShouldSerializeAutowrap | Returns true if the Style Autowrap property is not in the default state.
ShouldSerializeBackColor | Returns true if the Style BackColor property is not in the default state.
ShouldSerializeBackColor2 | Returns true if the Style BackColor2 property is not in the default state.
ShouldSerializeBorder | Returns true if the Style Border property is not in the default state.
ShouldSerializeFont | Returns true if the Style Font property is not in the default state.
ShouldSerializeForeColor | Returns true if the Style ForeColor property is not in the default state.
ShouldSerializeHorizontalAlignment | Returns true if the Style HorizontalAlignment property is not in the default state.
ShouldSerializeImageAlignment | Returns true if the Style ImageAlignment property is not in the default state.
ShouldSerializeOpaque | Returns true if the Style Opaque property is not in the default state.
ShouldSerializeRotation | Returns true if the Style Rotation property is not in the default state.
ShouldSerializeVerticalAlignment | Returns true if the Style VerticalAlignment property is not in the default state.


Style Properties

Autowrap Property (Style)

BackColor Property (Style)

BackColor2 Property (Style)

Border Property (Style)

Font Property (Style)

ForeColor Property (Style)

GradientStyle Property (Style)

HatchStyle Property (Style)

HorizontalAlignment Property

ImageAlignment Property

Opaque Property (Style)

Rotation Property (Style)

VerticalAlignment Property (Style)


Autowrap Property (Style)

Autowrap Property (Style)

Gets or sets whether the text is automatically wrapped.

Syntax

[VB]

Public Property Autowrap As Boolean

[C#]

public bool Autowrap { get; set; }

[Delphi]

property Autowrap: Boolean;

Remarks

Most text containing objects within C1Chart can automatically wrap text within them, including header, footer, axes titles, labels and the legend (title only, not series names). However, all of these objects can be sized automatically. Automatic sizing is always based upon a single line of text whenever possible.

See Also

Style Class


BackColor Property (Style)

BackColor Property (Style)

Gets or sets the backcolor.

Syntax

[VB]

Public Property BackColor As Color

[C#]

public Color BackColor { get; set; }

[Delphi]

property BackColor: Color;

See Also

Style Class


BackColor2 Property (Style)

BackColor2 Property (Style)

Gets or sets the gradient or hatch background.

Syntax

[VB]

Public Property BackColor2 As Color

[C#]

public Color BackColor2 { get; set; }

[Delphi]

property BackColor2: Color;

See Also

Style Class


Border Property (Style)

Border Property (Style)

Gets the border object.

Syntax

[VB]

Public ReadOnly Property Border As Border

[C#]

public Border Border { get; }

[Delphi]

property Border: Border;

See Also

Style Class


Font Property (Style)

Font Property (Style)

Gets or sets the font object.

Syntax

[VB]

Public Property Font As Font

[C#]

public Font Font { get; set; }

[Delphi]

property Font: Font;

See Also

Style Class


ForeColor Property (Style)

ForeColor Property (Style)

Gets or sets the forecolor.

Syntax

[VB]

Public Property ForeColor As Color

[C#]

public Color ForeColor { get; set; }

[Delphi]

property ForeColor: Color;

See Also

Style Class


GradientStyle Property (Style)

GradientStyle Property (Style)

Defines the style of the background gradient filling.

Syntax

[VB]

Public Property GradientStyle As GradientStyleEnum

[C#]

public GradientStyleEnum GradientStyle {get;set;}

[Delphi]

property GradientStyle: GradientStyleEnum;

See Also

Style Class


HatchStyle Property (Style)

HatchStyle Property (Style)

Defines the style of the background hatch filling.

Syntax

[VB]

Public Property HatchStyle As HatchStyleEnum

[C#]

public HatchStyleEnum HatchStyle {get;set;}

[Delphi]

property HatchStyle: HatchStyleEnum;

See Also

Style Class


HorizontalAlignment Property

HorizontalAlignment Property

Gets or sets the text horizontal alignment.

Syntax

[VB]

Public Property HorizontalAlignment As AlignHorzEnum

[C#]

public AlignHorzEnum HorizontalAlignment { get; set; }

[Delphi]

property HorizontalAlignment: AlignHorzEnum;

See Also

Style Class


ImageAlignment Property

ImageAlignment Property

Gets or sets the image alignment.

Syntax

[VB]

Public Property ImageAlignment As AlignImageEnum

[C#]

public AlignImageEnum ImageAlignment { get; set; }

[Delphi]

property ImageAlignment: AlignImageEnum;

See Also

Style Class


Opaque Property (Style)

Opaque Property (Style)

Gets or sets the opaqueness of the background.

Syntax

[VB]

Public Property Opaque As Boolean

[C#]

public bool Opaque { get; set; }

[Delphi]

property Opaque: Boolean;

Remarks

If an object’s Opaque property is true, then the object’s background is brushed in the backcolor before the foreground is drawn. If an object’s Opaque property is false, the background is not brushed and only the object’s foreground is drawn.

See Also

Style Class


Rotation Property (Style)

Rotation Property (Style)

Gets or sets the text orientation.

Syntax

[VB]

Public Property Rotation As RotationEnum

[C#]

public RotationEnum Rotation { get; set; }

[Delphi]

property Rotation: RotationEnum;

See Also

Style Class


VerticalAlignment Property (Style)

VerticalAlignment Property (Style)

Gets or sets the text vertical alignment.

Syntax

[VB]

Public Property VerticalAlignment As AlignVertEnum

[C#]

public AlignVertEnum VerticalAlignment { get; set; }

[Delphi]

property VerticalAlignment: AlignVertEnum;

See Also

Style Class


Style Methods

ResetAutowrap Method

ResetBackcolor Method (Style)

ResetBorder Method (Style)

ResetFont Method (Style)

ResetForecolor Method (Style)

ResetGradientStyle Method

ResetHatchStyle Method

ResetHorizontalAlignment Method (Style)

ResetImageAlignment Method (Style)

ResetOpaque Method (Style)

ResetRotation Method (Style)

ResetVerticalAlignment Method (Style)

ShouldSerializeAutowrap Method (Style)

ShouldSerializeBackColor Method (Style)

ShouldSerializeBackColor2 Method (Style)

ShouldSerializeBorder Method (Style)

ShouldSerializeFont Method (Style)

ShouldSerializeForeColor Method (Style)

ShouldSerializeHorizontalAlignment Method (Style)

ShouldSerializeImageAlignment Method (Style)

ShouldSerializeOpaque Method (Style)

ShouldSerializeRotation Method (Style)

ShouldSerializeVerticalAlignment Method (Style)


ResetAutowrap Method

ResetAutowrap Method

Resets the inheritance state of the style Autowrap.

Syntax

[VB]

Public Sub ResetAutowrap()

[C#]

public void ResetAutowrap();

[Delphi]

procedure ResetAutowrap;

Remarks

This method resets the inheritance state of the style Autowrap.

See Also

Style Class


ResetBackcolor Method (Style)

ResetBackcolor Method (Style)

Resets the inheritance state of the chart backcolor.

Syntax

[VB]

Public Sub ResetBackcolor()

[C#]

public void ResetBackcolor();

[Delphi]

procedure ResetBackcolor;

Remarks

This method resets the inheritance state of the chart backcolor.

See Also

Style Class


ResetBorder Method (Style)

ResetBorder Method (Style)

Resets the inheritance state of the chart border.

Syntax

[VB]

Public Sub ResetBorder()

[C#]

public void ResetBorder();

[Delphi]

procedure ResetBorder;

Remarks

This method resets the inheritance state of the chart border.

See Also

Style Class


ResetFont Method (Style)

ResetFont Method (Style)

Resets the inheritance state of the chart font.

Syntax

[VB]

Public Sub ResetFont()

[C#]

public void ResetFont();

[Delphi]

procedure ResetFont;

Remarks

This method resets the inheritance state of the chart font.

See Also

Style Class


ResetForecolor Method (Style)

ResetForecolor Method (Style)

Resets the inheritance state of the chart forecolor.

Syntax

[VB]

Public Sub ResetForecolor()

[C#]

public void ResetForecolor();

[Delphi]

procedure ResetForecolor;

Remarks

This method resets the inheritance state of the chart forecolor.

See Also

Style Class


ResetGradientStyle Method

ResetGradientStyle Method

Resets the inheritance state of the style GradientStyle.

Syntax

[VB]

Public Sub ResetGradientStyle()

[C#]

public void ResetGradientStyle();

[Delphi]

procedure ResetGradientStyle;

Remarks

This method resets the inheritance state of the style GradientStyle.

See Also

Style Class


ResetHatchStyle Method

ResetHatchStyle Method

Resets the inheritance state of the style HatchStyle.

Syntax

[VB]

Public Sub ResetHatchStyle()

[C#]

public void ResetHatchStyle();

[Delphi]

procedure ResetHatchStyle;

Remarks

This method resets the inheritance state of the style HatchStyle.

See Also

Style Class


ResetHorizontalAlignment Method (Style)

ResetHorizontalAlignment Method (Style)

Resets the inheritance state of the chart horizontalalignment.

Syntax

[VB]

Public Sub ResetHorizontalAlignment()

[C#]

public void ResetHorizontalAlignment();

[Delphi]

procedure ResetHorizontalAlignment;

Remarks

This method resets the inheritance state of the chart HorizontalAlignment.

See Also

Style Class


ResetImageAlignment Method (Style)

ResetImageAlignment Method (Style)

Resets the inheritance state of the chart ImageAlignment.

Syntax

[VB]

Public Sub ResetImageAlignment ()

[C#]

public void ResetImageAlignment ();

[Delphi]

procedure ResetImageAlignment;

Remarks

This method resets the inheritance state of the chart ImageAlignment.

See Also

Style Class


ResetOpaque Method (Style)

ResetOpaque Method (Style)

Resets the inheritance state of the chart opaque.

Syntax

[VB]

Public Sub ResetOpaque()

[C#]

public void ResetOpaque();

[Delphi]

procedure ResetOpaque;

Remarks

This method resets the inheritance state of the chart opaque.

See Also

Style Class


ResetRotation Method (Style)

ResetRotation Method (Style)

Resets the inheritance state of the chart rotation.

Syntax

[VB]

Public Sub ResetRotation()

[C#]

public void ResetRotation();

[Delphi]

procedure ResetRotation;

Remarks

This method resets the inheritance state of the chart rotation.

See Also

Style Class


ResetVerticalAlignment Method (Style)

ResetVerticalAlignment Method (Style)

Resets the inheritance state of the chart VerticalAlignment.

Syntax

[VB]

Public Sub ResetVerticalAlignment()

[C#]

public void ResetVerticalAlignment();

[Delphi]

procedure ResetVerticalAlignment;

Remarks

This method resets the inheritance state of the chart VerticalAlignment.

See Also

Style Class


ShouldSerializeAutowrap Method (Style)

ShouldSerializeAutowrap Method (Style)

Returns true if the Style Autowrap property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeAutowrap() As Boolean

[C#]

public bool ShouldSerializeAutowrap ( )

[Delphi]

function ShouldSerializeAutowrap: Boolean;

Remarks

The default state is to inherit the Autowrap from the style of the parent object.

See Also

Style Class


ShouldSerializeBackColor Method (Style)

ShouldSerializeBackColor Method (Style)

Returns true if the Style BackColor property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeBackColor() As Boolean

[C#]

public bool ShouldSerializeBackColor ( )

[Delphi]

function ShouldSerializeBackColor: Boolean;

Remarks

The default state is to inherit the BackColor from the style of the parent object.

See Also

Style Class


ShouldSerializeBackColor2 Method (Style)

ShouldSerializeBackColor2 Method (Style)

Returns true if the Style BackColor2 property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeBackColor2() As Boolean

[C#]

public bool ShouldSerializeBackColor2 ( )

[Delphi]

function ShouldSerializeBackColor2: Boolean;

Remarks

The default state is to inherit the BackColor2 from the style of the parent object.

See Also

Style Class


ShouldSerializeBorder Method (Style)

ShouldSerializeBorder Method (Style)

Returns true if the Style Border property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeBorder() As Boolean

[C#]

public bool ShouldSerializeBorder ( )

[Delphi]

function ShouldSerializeBorder: Boolean;

Remarks

The default state is to inherit the Border from the style of the parent object.

See Also

Style Class


ShouldSerializeFont Method (Style)

ShouldSerializeFont Method (Style)

Returns true if the Style Font property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeFont() As Boolean

[C#]

public bool ShouldSerializeFont ( )

[Delphi]

function ShouldSerializeFont: Boolean;

Remarks

The default state is to inherit the Font from the style of the parent object.

See Also

Style Class


ShouldSerializeForeColor Method (Style)

ShouldSerializeForeColor Method (Style)

Returns true if the Style ForeColor property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeForeColor() As Boolean

[C#]

public bool ShouldSerializeForeColor ( )

[Delphi]

function ShouldSerializeForeColor: Boolean;

Remarks

The default state is to inherit the ForeColor from the style of the parent object.

See Also

Style Class


ShouldSerializeHorizontalAlignment Method (Style)

ShouldSerializeHorizontalAlignment Method (Style)

Returns true if the Style HorizontalAlignment property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeHorizontalAlignment() As Boolean

[C#]

public bool ShouldSerializeHorizontalAlignment ( )

[Delphi]

function ShouldSerializeHorizontalAlignment: Boolean;

Remarks

The default state is to inherit the HorizontalAlignment from the style of the parent object.

See Also

Style Class


ShouldSerializeImageAlignment Method (Style)

ShouldSerializeImageAlignment Method (Style)

Returns true if the Style ImageAlignment property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeImageAlignment() As Boolean

[C#]

public bool ShouldSerializeImageAlignment ( )

[Delphi]

function ShouldSerializeImageAlignment: Boolean;

Remarks

The default state is to inherit the ImageAlignment from the style of the parent object.

See Also

Style Class


ShouldSerializeOpaque Method (Style)

ShouldSerializeOpaque Method (Style)

Returns true if the Style Opaque property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeOpaque() As Boolean

[C#]

public bool ShouldSerializeOpaque ( )

[Delphi]

function ShouldSerializeOpaque: Boolean;

Remarks

The default state is to inherit the Opaque from the style of the parent object.

See Also

Style Class


ShouldSerializeRotation Method (Style)

ShouldSerializeRotation Method (Style)

Returns true if the Style Rotation property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeRotation() As Boolean

[C#]

public bool ShouldSerializeRotation ( )

[Delphi]

function ShouldSerializeRotation: Boolean;

Remarks

The default state is to inherit the Rotation from the style of the parent object.

See Also

Style Class


ShouldSerializeVerticalAlignment Method (Style)

ShouldSerializeVerticalAlignment Method (Style)

Returns true if the Style VerticalAlignment property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeVerticalAlignment() As Boolean

[C#]

public bool ShouldSerializeVerticalAlignment ( )

[Delphi]

function ShouldSerializeVerticalAlignment: Boolean;

Remarks

The default state is to inherit the VerticalAlignment from the style of the parent object.

See Also

Style Class


Title Class

Syntax

C1.Win.C1Chart.Title

Remarks

The Title class is used to describe the appearance of the Header and the Footer.


Title All Members

Title Properties

Compass Supported by the .NET Compact Framework. | Gets or sets the general positioning of the title.
Image | Gets or sets the image.
Location Supported by the .NET Compact Framework. | Gets or sets the location of the title in chart control client coordinates.
LocationDefault Supported by the .NET Compact Framework. | Gets or sets the default location of the title.
Rtf | Gets or sets the formatted text.
Size Supported by the .NET Compact Framework. | Gets or sets the size of the title in chart control client coordinates.
SizeDefault Supported by the .NET Compact Framework. | Gets or sets the default size of the title.
Style Supported by the .NET Compact Framework. | Gets the title style.
Text Supported by the .NET Compact Framework. | Gets or sets title text.
TooltipText | Gets or sets the tooltip text.
Visible Supported by the .NET Compact Framework. | Gets or sets the title visibility.

Title Methods

AppendRtfText | Creates and/or appends text to the existing Rtf string using the specified color and/or font. If an overload is used which does not specify a color or font, then the default values, which are specified by the Title style are used.
ResetLocationDefault | Resets the Title location so it is calculated automatically.
ResetSizeDefault | Resets Title size so it is calculated automatically.
ResetStyle | Resets Title style inheritance state.
ShouldSerializeLocationDefault | Returns true if the Title LocationDefault property is not in the default state.
ShouldSerializeSizeDefault | Returns true if the Title SizeDefault property is not in the default state.
ShouldSerializeStyle | Returns true if the Title Style property is not in the default state.


Title Properties

Compass Property (Title)

Image Property (Title)

Location Property (Title)

LocationDefault Property (Title)

Rtf Property (Title)

Size Property (Title)

SizeDefault Property (Title)

Style Property (Title)

Text Property (Title)

ToolTipText Property (Title)

Visible Property (Title)


Compass Property (Title)

Compass Property (Title)

Gets or sets the general positioning of the title.

Syntax

[VB]

Public Property Compass As CompassEnum

[C#]

public CompassEnum Compass { get; set; }

[Delphi]

property Compass: CompassEnum;

See Also

Title Class


Image Property (Title)

Image Property (Title)

Gets or sets the image.

Syntax

[VB]

Public Property Image As System.Drawing.Image

[C#]

public System.Drawing.Image Image { get; set; }

[Delphi]

property Image: System.Drawing.Image;

See Also

Title Class


Location Property (Title)

Location Property (Title)

Gets or sets the location of the title in chart control client coordinates.

Syntax

[VB]

Public Property Location As Point

[C#]

public Point Location { get; set; }

[Delphi]

property Location: Point;

Remarks

The Location property always returns the actual location of the upper, left corner of the chart element it describes whether or not the element placement is manual or automatic. Modifying this value will change LocationDefault.

See Also

Title Class


LocationDefault Property (Title)

LocationDefault Property (Title)

Gets or sets the default location of the title.

Syntax

[VB]

Public Property LocationDefault As Point

[C#]

public Point LocationDefault { get; set; }

[Delphi]

property LocationDefault: Point;

Remarks

The LocationDefault property specifies the location of the upper, left corner of the chart element it describes. Non-negative values indicate the explicit position in chart client coordinates to place the chart element. Negative values will allow autopositioning.

See Also

Title Class


Rtf Property (Title)

Rtf Property (Title)

Gets or sets the formatted text.

Syntax

[VB]

Public Property Rtf As String

[C#]

public string Rtf { get; set; }

[Delphi]

property Rtf: String;

See Also

Title Class


Size Property (Title)

Size Property (Title)

Gets or sets the size of the title in chart control client coordinates.

Syntax

[VB]

Public Property Size As Size

[C#]

public Size Size { get; set; }

[Delphi]

property Size: Size;

Remarks

The Size property always returns the actual size of the chart element it describes whether or not the element placement is manual or automatic. Modifying this value will change SizeDefault.

See Also

Title Class


SizeDefault Property (Title)

SizeDefault Property (Title)

Gets or sets the default size of the title.

Syntax

[VB]

Public Property SizeDefault As Size

[C#]

public Size SizeDefault { get; set; }

[Delphi]

property SizeDefault: Size;

Remarks

The SizeDefault property specifies the size of the chart element it describes. Non-negative values indicate the explicit width and height in chart client coordinates to place the chart element. Negative values will allow autopositioning.

See Also

Title Class


Style Property (Title)

Style Property (Title)

Gets the title style.

Syntax

[VB]

Public ReadOnly Property Style As Style

[C#]

public Style Style { get; }

[Delphi]

property Style: Style;

Remarks

Inherits from the C1Chart3D style.

See Also

Title Class


Text Property (Title)

Text Property (Title)

Gets or set title text.

Syntax

[VB]

Public Property Text As String

[C#]

public string Text { get; set; }

[Delphi]

property Text: string;

See Also

Title Class


ToolTipText Property (Title)

ToolTipText Property (Title)

Gets or sets the tooltip text.

Syntax

[VB]

Public Property ToolTipText As String

[C#]

public string ToolTipText { get; set; }

[Delphi]

property ToolTipText: String;

See Also

Title Class


Visible Property (Title)

Visible Property (Title)

Gets or sets the title visibility.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set; }

[Delphi]

property Visible: Boolean;

See Also

Title Class


Title Methods

AppendRtfText Method (Title)

ResetLocationDefault Method (Title)

ResetSizeDefault Method (Title)

ResetStyle Method (Title)

ShouldSerializeLocationDefault Method (Title)

ShouldSerializeSizeDefault Method (Title)

ShouldSerializeStyle Method (Title)


AppendRtfText Method (Title)

AppendRtfText Method (Title)

Creates and/or appends text to the existing Rtf string using the specified color and/or font. If an overload is used which does not specify a color or font, then the default values, which are specified by the Title style are used.

Syntax

[VB]

Public Sub AppendRtfText(ByVal Text As String, ByVal Color As System.Drawing.Color)

Public Sub AppendRtfText(ByVal Text As String, ByVal Color As System.Drawing.Color)

Public Sub AppendRtfText(ByVal Text As String, ByVal Color As System.Drawing.Color, ByVal Font As System.Drawing.Font)

[C#]

public void AppendRtfText(string Text, System.Drawing.Color Color);

public void AppendRtfText(string Text, System.Drawing.Font Font);

public void AppendRtfText(string Text, System.Drawing.Color Color, System.Drawing.Font Font);

[Delphi]

procedure AppendRtfText(Text: String; Color: System.Drawing.Color);

procedure AppendRtfText(Text: String; Font: System.Drawing.Font);

procedure AppendRtfText(Text: String; Color: System.Drawing.Color; Font: System.Drawing.Font);

See Also

Title Class


ResetLocationDefault Method (Title)

ResetLocationDefault Method (Title)

Resets the Title location so it is calculated automatically.

Syntax

[VB]

Public Sub ResetLocationDefault()

[C#]

public void ResetLocationDefault();

[Delphi]

procedure ResetLocationDefault;

See Also

Title Class


ResetSizeDefault Method (Title)

ResetSizeDefault Method (Title)

Resets Title size so it is calculated automatically.

Syntax

[VB]

Public Sub ResetSizeDefault()

[C#]

public void ResetSizeDefault();

[Delphi]

procedure ResetSizeDefault;

See Also

Title Class


ResetStyle Method (Title)

ResetStyle Method (Title)

Resets Title style inheritance state.

Syntax

[VB]

Public Sub ResetStyle()

[C#]

public void ResetStyle();

[Delphi]

procedure ResetStyle;

See Also

Title Class


ShouldSerializeLocationDefault Method (Title)

ShouldSerializeLocationDefault Method (Title)

Returns true if the Title LocationDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeLocationDefault() As Boolean

[C#]

public bool ShouldSerializeLocationDefault ( )

[Delphi]

function ShouldSerializeLocationDefault: Boolean;

Remarks

The default state is LocationDefault.Width = -1, LocationDefault.Height = -1, which results in automatic location of the Title based upon the Compass property.

See Also

Title Class


ShouldSerializeSizeDefault Method (Title)

ShouldSerializeSizeDefault Method (Title)

Returns true if the Title SizeDefault property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeSizeDefault() As Boolean

[C#]

public bool ShouldSerializeSizeDefault ( )

[Delphi]

function ShouldSerializeSizeDefault: Boolean;

Remarks

The default state is SizeDefault.Width = -1, SizeDefault.Height = -1, which results in automatic sizing of the Title.

See Also

Title Class


ShouldSerializeStyle Method (Title)

ShouldSerializeStyle Method (Title)

Returns true if the Title Style property is not in the default state.

Syntax

[VB]

Public Function ShouldSerializeStyle() As Boolean

[C#]

public bool ShouldSerializeStyle ( )

[Delphi]

function ShouldSerializeStyle: Boolean;

Remarks

The default state is to inherit the Style from the C1Chart Style property.

See Also

Title Class


TransformEventArgs Class

Provides data for the Transform event.

Syntax

[VB]

Public Class TransformEventArgs

[C#]

public class TransformEventArgs : EventArgs

[Delphi]

type TransformEventArgs: class(EventArgs);


TransformEventArgs Class Members

TransformEventArgs Class Properties

Cancel | Gets or sets whether the transformation should be cancelled.
MinX | Gets or sets the new AxisX minimum.
MinY | Gets or sets the new AxisY minimum.
MinY2 | Gets or sets the new AxisY2 minimum.
MaxX | Gets or sets the new AxisX maximum.
MaxY | Gets or sets the new AxisY maximum.
MaxY2 | Gets or sets the new AxisY2 maximum.


TransformEventArgs Class Properties

Cancel Property

MinX Property

MinY Property

MinY2 Property

MaxX Property

MaxY Property

MaxY2 Property


Cancel Property

Cancel Property

Gets or sets whether the transformation should be cancelled. Canceling the transformation inhibits the rotation, scaling, translating or zooming action associated with the transformation.

Syntax

[VB]

Public Property Cancel As Boolean

[C#]

public bool Cancel { get; set; }

[Delphi]

property Cancel: Boolean;

See Also

TransformEventArgs Class


MinX Property

MinX Property

Gets or sets the new AxisX minimum.

Syntax

[VB]

Public Property MinX As Double

[C#]

public double MinX { get; set; }

[Delphi]

property MinX: Double;

See Also

TransformEventArgs Class


MinY Property

MinY Property

Gets or sets the new AxisY minimum.

Syntax

[VB]

Public Property MinY As Double

[C#]

public double MinY { get; set; }

[Delphi]

property MinY: Double;

See Also

TransformEventArgs Class


MinY2 Property

MinY2 Property

Gets or sets the new AxisY2 minimum.

Syntax

[VB]

Public Property MinY2 As Double

[C#]

public double MinY2 { get; set; }

[Delphi]

property MinY2: Double;

See Also

TransformEventArgs Class


MaxX Property

MaxX Property

Gets or sets the new AxisX maximum.

Syntax

[VB]

Public Property MaxX As Double

[C#]

public double MaxX { get; set; }

[Delphi]

property MaxX: Double;

See Also

TransformEventArgs Class


MaxY Property

MaxY Property

Gets or sets the new AxisY maximum.

Syntax

[VB]

Public Property MaxY As Double

[C#]

public double MaxY { get; set; }

[Delphi]

property MaxY: Double;

See Also

TransformEventArgs Class


MaxY2 Property

MaxY2 Property

Gets or sets the new AxisY2 maximum.

Syntax

[VB]

Public Property MaxY2 As Double

[C#]

public double MaxY2 { get; set; }

[Delphi]

property MaxY2: Double;

See Also

TransformEventArgs Class


TrendLine Class

The TrendLine class is used to perform a regression analysis or the specified data series, provide statistics about the regression, and chart the result.

Syntax

C1.Win.C1Chart.TrendLine


TrendLine All Members

TrendLine Properties

CustomTrendLine | Gets or sets the object that provides a user-defined calculation of the TrendLine.
DataArray | Gets or sets the array index of y values that is used for TrendLine.
ForecastBackward | Gets or sets the value that specifies how long the trend line extends in x axis direction relative to the appropriate data minimum.
ForecastForward | Gets or sets the value that specifies how long the trend line extends in x axis direction relative to the appropriate data maximum.
LegendEntry | Gets or sets whether the TrendLine will be shown in legend.
LineStyle | Gets or sets the line style which is used when plotting TrendLine.
Period | Gets or sets the period of the TrendLine calculation.
PlotLinesMethod | Gets or sets the method used to plot the TrendLine.
PlotNumPoints | Gets or sets the number of points used to plot the TrendLine.
PlotOverData | Gets or sets whether the TrendLine is plotted over or behind the data .
RegressionOptions | Gets the options for calculation of the regression.
RegressionStatistics | Gets the statistical information about calculated regression.
SeriesIndex | Gets or sets the index of the data series used to calculate the TrendLine.
SeriesLabel | Gets the label of the data series used to plot the TrendLine.
Text | Gets or sets the text associated with the TrendLine shown in legend.
TrendLineType | Gets or sets the type of TrendLine.
Visible | Gets or sets whether the TrendLine is visible.

TrendLine Methods

GetCoefficients | Returns the calculatedcoefficients of the TrendLine.
GetY | Calculates the value of the TrendLine at the specified value of X.


TrendLine Properties

CustomTrendLine Property (TrendLine)

DataArray Property (TrendLine)

ForecastBackward Property (TrendLine)

ForecastForward Property (TrendLine)

LegendEntry Property (TrendLine)

LineStyle Property (TrendLine)

Period Property (TrendLine)

PlotLinesMethod Property (TrendLine)

PlotNumPoints Property (TrendLine)

PlotOverData Property (TrendLine)

RegressionOptions Property (TrendLine)

RegressionStatistics Property (TrendLine)

SeriesIndex Property (TrendLine)

SeriesLabel Property (TrendLine)

Text Property (TrendLine)

TrendLineType Property (TrendLine)

Visible Property (TrendLine)


CustomTrendLine Property (TrendLine)

CustomTrendLine Property (TrendLine)

Gets or sets the object that provides a user-defined calculation of the TrendLine.

Syntax

[VB]

Public Property CustomTrendLine As ICustomTrendLine

[C#]

public ICustomTrendLine CustomTrendLine{ get; set;}

[Delphi]

property CustomTrendLine: ICustomTrendLine;

Remarks

To obtain complete control of the TrendLine calculations, a class inheriting from ICustomTrendLine can be implemented and instantiated. After the CustomTrendLine property is set to an instance of such an object, the chart will plot the user-defined TrendLine with the appropriate styles and legend entry.

See Also

TrendLine Class


DataArray Property (TrendLine)

DataArray Property (TrendLine)

Gets or sets the array index of y values that is used for TrendLine.

Syntax

[VB]

Public Property DataArray As DataArrayEnum

[C#]

public DataArrayEnum DataArray{ get; set;}

[Delphi]

property DataArray: DataArrayEnum;

See Also

TrendLine Class


ForecastBackward Property (TrendLine)

ForecastBackward Property (TrendLine)

Gets or sets the value that specifies how long the trend line extends in x axis direction relative to the appropriate data minimum.

Syntax

[VB]

Public Property ForecastBackward As Double

[C#]

public double ForecastBackward { get; set;}

[Delphi]

property ForecastBackward: Double;

See Also

TrendLine Class


ForecastForward Property (TrendLine)

ForecastForward Property (TrendLine)

Gets or sets the value that specifies how long the trend line extends in x axis direction relative to the appropriate data maximum.

Syntax

[VB]

Public Property ForecastForward As Double

[C#]

public double ForecastForward { get; set;}

[Delphi]

property ForecastForward: Double;

See Also

TrendLine Class


LegendEntry Property (TrendLine)

LegendEntry Property (TrendLine)

Gets or sets whether the TrendLine will be shown in legend.

Syntax

[VB]

Public Property LegendEntry As Boolean

[C#]

public bool LegendEntry { get; set;}

[Delphi]

property LegendEntry: Boolean;

See Also

TrendLine Class


LineStyle Property (TrendLine)

LineStyle Property (TrendLine)

Gets or sets the line style used to plot the TrendLine.

Syntax

[VB]

Public Property LineStyle As ChartLineStyle

[C#]

public ChartLineStyle LineStyle { get; set;}

[Delphi]

property LineStyle: ChartLineStyle;

See Also

TrendLine Class


Period Property (TrendLine)

Period Property (TrendLine)

Gets or sets the period of the TrendLine calculation.

Syntax

[VB]

Public Property Period As Integer

[C#]

public int Period { get; set;}

[Delphi]

property Period: Integer;

Remarks

This property is useful only for calculating a moving average TrendLine.

See Also

TrendLine Class


PlotLinesMethod Property (TrendLine)

PlotLinesMethod Property (TrendLine)

Gets or sets the method used to plot a TrendLine.

Syntax

[VB]

Public Property PlotLinesMethod As PlotLinesMethodEnum

[C#]

public PlotLinesMethodEnum PlotLinesMethod { get; set;}

[Delphi]

property PlotLinesMethod: PlotLinesMethodEnum;

See Also

TrendLine Class


PlotNumPoints Property (TrendLine)

PlotNumPoints Property (TrendLine)

Gets or sets the number of points used to plot the TrendLine.

Syntax

[VB]

Public Property PlotNumPoints As Integer

[C#]

public int PlotNumPoints { get; set;}

[Delphi]

property PlotNumPoints: Integer;

Remarks

This property controls the quality of trend line plotting. Increase PlotNumPoints if trend line is not smooth or is not shown in detail.

See Also

TrendLine Class


PlotOverData Property (TrendLine)

PlotOverData Property (TrendLine)

Gets or sets whether the TrendLine is plotted over or behind the data. .

Syntax

[VB]

Public Property PlotOverData() As Boolean

[C#]

public bool PlotOverData { get; set;};

[Delphi]

property PlotOverData: Boolean;

See Also

TrendLine Class


RegressionOptions Property (TrendLine)

RegressionOptions Property (TrendLine)

Gets the options for calculation of the regression.

Syntax

[VB]

Public ReadOnly Property RegressionOptions As RegressionOptions

[C#]

public RegressionOptions RegressionOptions { get;}

[Delphi]

property RegressionOptions: RegressionOptions;

Remarks

Only for trend lines that use regression model Polynomial, Log, Power. Expotential, Fourier.

See Also

TrendLine Class


RegressionStatistics Property (TrendLine)

RegressionStatistics Property (TrendLine)

Gets the statistical information about calculated regression.

Syntax

[VB]

Public ReadOnly Property RegressionStatistics As RegressionStatistics

[C#]

public RegressionStatistics RegressionStatistics { get;}

[Delphi]

property RegressionStatistics: RegressionStatistics;

Remarks

This property is meaningful only for TrendLines that use a specific regression model, including Polynomial, Log, Power. Expotential, or Fourier. For TrendLines that do not use one of these regression models, Nothing (VB) or null (C#) is returned. If data can not be fit to the specified regression model also returns Nothing.(VB) or null (C#).

See Also

TrendLine Class


SeriesIndex Property (TrendLine)

SeriesIndex Property (TrendLine)

Gets or sets the index of the data series that is used to calculate the TrendLine.

Syntax

[VB]

Public Property SeriesIndex As Integer

[C#]

public int SeriesIndex { get; set;}

[Delphi]

property SeriesIndex: Integer;

Remarks

If the SeriesIndex value does not address a specific data series, then the TrendLine is not shown.

See Also

TrendLine Class


SeriesLabel Property (TrendLine)

SeriesLabel Property (TrendLine)

Gets the label of the data series that is used to calculate the TrendLine.

Syntax

[VB]

Public ReadOnly Property SeriesLabel As String

[C#]

public string SeriesLabel { get;}

[Delphi]

property SeriesLabel: String;

See Also

TrendLine Class


Text Property (TrendLine)

Text Property (TrendLine)

Gets or sets the text associated with the TrendLine shown in legend.

Syntax

[VB]

Public Property Text As String

[C#]

public string Text{ get; set;}

[Delphi]

property Text: String;

Remarks

Text property can contains keywords that are replaced with appropriate value when rendering legend. The keyword must be in brackets.

Keyword | Value
#DSLABEL | Label of appropriate data series
#TRENDTYPE | Type of trend line
#SHORTTRENDTYPE | Short type of trend line
#NTERMS | Number of terms for regression trend line
#PERIOD | Period for moving average trend line
#FORMULA | Formula of regression equation

See Also

TrendLine Class


TrendLineType Property (TrendLine)

TrendLineType Property (TrendLine)

Gets or sets the type of TrendLine.

Syntax

[VB]

Public Property TrendLineType As TrendLineTypeEnum

[C#]

public TrendLineTypeEnum TrendLineType{ get; set;}

[Delphi]

property TrendLineType: TrendLineTypeEnum;

See Also

TrendLine Class


Visible Property (TrendLine)

Visible Property (TrendLine)

Gets or sets whether the TrendLine is visible.

Syntax

[VB]

Public Property Visible As Boolean

[C#]

public bool Visible { get; set;}

[Delphi]

property Visible: Boolean;

See Also

TrendLine Class


TrendLine Methods

GetCoefficients Method (TrendLine)

GetY Method (TrendLine)


GetCoefficients Method (TrendLine)

GetCoefficients Method (TrendLine)

Returns the calculatedCalculated the coefficients of the TrendLine.

Syntax

[VB]

Public Function GetCoefficients() As Double()

[C#]

public double[] GetCoefficients ( )

[Delphi]

function GetCoefficients (): array of Double;

See Also

TrendLine Class


GetY Method (TrendLine)

GetY Method (TrendLine)

Calculates the value of the TrendLine at the specified value of X.

Syntax

[VB]

Public Function GetY (x As Double) As Double

[C#]

public double GetY (double x);

[Delphi]

function GetY( x : Double) : Double;

Return Value

Double

Remarks

This method only applies to TrendLines types that perform regressions.

See Also

TrendLine Class


TrendLinesCollection Class

The TrendLinesCollection class contains TrendLines associated with the ChartData object.

Syntax

C1.Win.C1Chart.TrendLinesCollection


TrendLinesCollection All Members

TrendLinesCollection Properties

Count | Gets the item count of the collection.
Item | Gets the specified TrendLine from the collection by numeric index.

TrendLinesCollection Methods

Add | Adds the specified TrendLine to the collection.
AddNewTrendLine | Creates a new TrendLine and appends it to the collection.
Contains | Determines whether the specified TrendLine exists in the collection.
CopyTo | Copies the collection of TrendLines beginning with the specified index to the specified array of TrendLinesCollection objects.
IndexOf | Gets the current index of the specified TrendLines in the collection.
Insert | Inserts the specified TrendLine in the collection at the specified index.
Remove | Removes the specified TrendLine from the collection.


TrendLinesCollection Properties

Count Property (TrendLinesCollection)

Item Property (TrendLinesCollection)


Count Property (TrendLinesCollection)

Count Property (TrendLinesCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count : Integer;

See Also

TrendLinesCollection Class


Item Property (TrendLinesCollection)

Item Property (TrendLinesCollection)

Gets the specified TrendLine from the collection by numeric index.

Syntax

[VB]

Default Public ReadOnly Property Item(index as Integer) As TrendLine

[C#]

public TrendLine this[int index] { get; }

[Delphi]

property Item( index : Integer) : TrendLine;

See Also

TrendLinesCollection Class


TrendLinesCollection Methods

Add Method (TrendLinesCollection)

AddNewTrendLine Method (TrendLinesCollection)

Contains Method (TrendLinesCollection)

CopyTo Method (TrendLinesCollection)

IndexOf Method (TrendLinesCollection)

Insert Method (TrendLinesCollection)

Remove Method (TrendLinesCollection)


Add Method (TrendLinesCollection)

Add Method (TrendLinesCollection)

Adds the specified TrendLine to the collection.

Syntax

[VB]

Public Function Add (tl As TrendLine) As Integer

[C#]

public int Add (TrendLine tl);

[Delphi]

function Add( tl : TrendLine) : Integer;

Return Value

Integer

See Also

TrendLinesCollection Class


AddNewTrendLine Method (TrendLinesCollection)

AddNewTrendLine Method (TrendLinesCollection)

Creates a new TrendLine and appends it to the collection.

Syntax

[VB]

Public Function AddNewTrendLine () As TrendLine

[C#]

public TrendLine AddNewTrendLine();

[Delphi]

function AddNewTrendLine() : TrendLine;

Return Value

TrendLine

See Also

TrendLinesCollection Class


Contains Method (TrendLinesCollection)

Contains Method (TrendLinesCollection)

Determines whether the specified TrendLine exists in the collection.

Syntax

[VB]

Public Function Contains(tl As TrendLine) As Boolean

[C#]

public bool Contains(TrendLine tl);

[Delphi]

function Contains(tl: TrendLine): Boolean;

Return Value

A boolean indicating whether the specified TrendLine is contained in the collection.

See Also

TrendLinesCollection Class


CopyTo Method (TrendLinesCollection)

CopyTo Method (TrendLinesCollection)

Copies the collection of TrendLines beginning with the specified index to the specified array of TrendLinesCollection objects.

Syntax

[VB]

Public Sub CopyTo(array() As TrendLine, index As Integer)

[C#]

public void CopyTo(TrendLine[] array, int index);

[Delphi]

procedure CopyTo(array: array of TrendLine; index: Integer);

See Also

TrendLinesCollection Class


IndexOf Method (TrendLinesCollection)

IndexOf Method (TrendLinesCollection)

Gets the current index of the specified TrendLines in the collection.

Syntax

[VB]

Public Function IndexOf(tl As TrendLine) As Integer

[C#]

public int IndexOf(TrendLine tl);

[Delphi]

function IndexOf(tl: TrendLine): Integer;

Return Value

Returns an integer indicating the element of the specified TrendLine within the collection. If the TrendLine is not foundthe return value is –1.

See Also

TrendLinesCollection Class


Insert Method (TrendLinesCollection)

Insert Method (TrendLinesCollection)

Inserts the specified TrendLine in the collection at the specified index.

Syntax

[VB]

Public Sub Insert (index As Integer, tl As TrendLine)

[C#]

public void Insert (int index, TrendLine tl);

[Delphi]

procedure Insert( index:Integer, tl : TrendLine);

See Also

TrendLinesCollection Class


Remove Method (TrendLinesCollection)

Remove Method (TrendLinesCollection)

Removes the specified TrendLine from the collection.

Syntax

[VB]

Public Sub Remove (tl As TrendLine)

[C#]

public void Remove (TrendLine tl);

[Delphi]

procedure Remove( tl : TrendLine);

See Also

TrendLinesCollection Class


ValueLabel Class

Syntax

C1.Win.C1Chart.ValueLabel


ValueLabel All Members

ValueLabel Properties

Appearance | Gets or sets the appearance of ValueLabel.
BackColor | Get or sets the background color of ValueLabel.
Color | Gets or sets the color of the ValueLabel.
DateTimeValue | Gets or sets the axis value to be replaced by the ValueLabel using a DateTime value.
GridLine | Gets or sets a value indicating whether a grid line is drawn at the ValueLabel.
MarkerRectangle | Get the marker rectangle of ValueLabel.
MarkerSize | Gets or sets the marker size of ValueLabel.
Moveable | Gets or sets a value indicating whether a ValueLabel can be dragged by the user.
NumericValue | Gets or sets the axis value to be replaced by the ValueLabel using a double value.
Rectangle | Get the rectangle occupied by the text of ValueLabel.
Text Supported by the .NET Compact Framework. | Gets or sets the displayed text value for the ValueLabel.
Value Supported by the .NET Compact Framework. | Gets or sets the axis value to be replaced by the ValueLabel.

ValueLabel Events

DrawMarker | Fires when value label marker is drawn.
ValueChanged | Fires when position of ValueLabel was changed.


ValueLabel Properties

Appearance Property (ValueLabel)

BackColor Property (ValueLabel)

Color Property (ValueLabel)

DateTimeValue Property (ValueLabel)

GridLine Property (ValueLabel)

MarkerRectangle Property

MarkerSize Property

Moveable Property

NumericValue Property (ValueLabel)

Rectangle Property (ValueLabel)

Text Property (ValueLabel)

Value Property (ValueLabel)


Appearance Property (ValueLabel)

Appearance Property (ValueLabel)

Gets or sets the appearance of ValueLabel.

Syntax

[VB]

Public Property Appearance As ValueLabelAppearanceEnum

[C#]

public ValueLabelAppearanceEnum Appearance { get; set; }

[Delphi]

property Appearance: ValueLabelAppearanceEnum;

See Also

ValueLabel Class


BackColor Property (ValueLabel)

BackColor Property (ValueLabel)

Get or sets the background color of ValueLabel.

Syntax

[VB]

Public Property BackColor As System.Drawing.Color

[C#]

public System.Drawing.Color BackColor { get; set; }

[Delphi]

property BackColor: System.Drawing.Color;

See Also

ValueLabel Class


Color Property (ValueLabel)

Color Property (ValueLabel)

Gets or sets the color of the ValueLabel.

Syntax

[VB]

Public Property Color As Color

[C#]

public Color Color { get; set; }

[Delphi]

property Color: Color;

See Also

ValueLabel Class


DateTimeValue Property (ValueLabel)

DateTimeValue Property (ValueLabel)

Gets or sets the axis value to be replaced by the ValueLabel by specifying the value as a DateTime.

Syntax

[VB]

Public Property DateTimeValue As DateTime

[C#]

public DateTime DateTimeValue { get; set; }

[Delphi]

property DateTimeValue: DateTime;

Remarks

This property is the same as the NumericValue property, but allows the value to be set using a DateTime value.

See Also

ValueLabel Class


GridLine Property (ValueLabel)

GridLine Property (ValueLabel)

Gets or sets a value indicating whether a grid line is drawn at the ValueLabel.

Syntax

[VB]

Public Property GridLine As Boolean

[C#]

public bool GridLine { get; set; }

[Delphi]

property GridLine: Boolean;

See Also

ValueLabel Class


MarkerRectangle Property

MarkerRectangle Property

Get the marker rectangle of ValueLabel.

Syntax

[VB]

Public ReadOnly Property MarkerRectangle As System.Drawing.Rectangle

[C#]

public System.Drawing.Rectangle MarkerRectangle { get; set; }

[Delphi]

property MarkerRectangle: System.Drawing.Rectangle;

See Also

ValueLabel Class


MarkerSize Property

MarkerSize Property

Gets or sets the marker size of ValueLabel.

Syntax

[VB]

Public Property MarkerSize() As Integer

[C#]

public int MarkerSize { get; set; }

[Delphi]

property MarkerSize: Integer;

See Also

ValueLabel Class


Moveable Property

Moveable Property

Gets or sets a value indicating whether a ValueLabel can be dragged by the user.

Syntax

[VB]

Public Property Moveable As Boolean

[C#]

public bool Moveable { get; set; }

[Delphi]

property Moveable: Boolean;

See Also

ValueLabel Class


NumericValue Property (ValueLabel)

NumericValue Property (ValueLabel)

Gets or sets the axis value to be replaced by the ValueLabel by specifying a numeric value that can be implicitly converted to double.

Syntax

[VB]

Public Property NumericValue As Double

[C#]

public double NumericValue { get; set; }

[Delphi]

property NumericValue: Double;

Remarks

This property is the same as the Value property.

See Also

ValueLabel Class


Rectangle Property (ValueLabel)

Rectangle Property (ValueLabel)

Get the rectangle occupied by the text of ValueLabel.

Syntax

[VB]

Public ReadOnly Property Rectangle As System.Drawing.Rectangle

[C#]

public System.Drawing.Rectangle Rectangle { get; }

[Delphi]

property Rectangle: System.Drawing.Rectangle;

See Also

ValueLabel Class


Text Property (ValueLabel)

Text Property (ValueLabel)

Gets or sets the displayed text value for the ValueLabel.

Syntax

[VB]

Public Property Text As String

[C#]

public string Text { get; set; }

[Delphi]

property Text: string;

See Also

ValueLabel Class


Value Property (ValueLabel)

Value Property (ValueLabel)

Gets or sets the axis value to be replaced by the ValueLabel by specifying a value that can be implicitly converted to double.

Syntax

[VB]

Public Property Value As Double

[C#]

public double Value { get; set; }

[Delphi]

property Value: Double;

Remarks

This property is the same as the NumericValue property.

See Also

ValueLabel Class


ValueLabel Events

DrawMarker Event

ValueChanged Event


DrawMarker Event

DrawMarker Event

Fires when value label marker is drawn.

Syntax

[VB]

Public Event DrawMarker As System.Windows.Forms.PaintEventHandler

[C#]

public event System.Windows.Forms.PaintEventHandler DrawMarker;

[Delphi]

property DrawMarker : System.Windows.Forms.PaintEventHandler;

Event data

The event handler receives an argument of type System.Windows.Forms.PaintEventArgs containing data related to this event.

See Also

ValueLabel Class


ValueChanged Event

ValueChanged Event

Fires when position of ValueLabel was changed.

Syntax

[VB]

Public Event ValueChanged As System.EventHandler

[C#]

public event System.EventHandler ValueChanged;

[Delphi]

property ValueChanged : System.EventHandler;

Event data

The event handler receives an argument of type System.Windows.EventArgs containing data related to this event.

See Also

ValueLabel Class


ValueLabelsCollection Class

Syntax

C1.Win.C1Chart.ValueLabelsCollection


ValueLabelsCollection All Members

ValueLabelsCollection Properties

Count | Gets the item count of the collection.
Item Supported by the .NET Compact Framework. | Gets the specified label from the collection by numeric index.

ValueLabelsCollection Methods

Add Supported by the .NET Compact Framework. | Adds new label and accepts initialization parameters.
AddNewLabel Supported by the .NET Compact Framework. | Adds new empty label.


ValueLabelsCollection Properties

Count Property (ValueLabelsCollection)

Item Property (ValueLabelsCollection)


Count Property (ValueLabelsCollection)

Count Property (ValueLabelsCollection)

Gets the item count of the collection.

Syntax

[VB]

Public ReadOnly Property Count As Integer

[C#]

public int Count { get; }

[Delphi]

property Count: Integer;

See Also

ValueLabelsCollection Class


Item Property (ValueLabelsCollection)

Item Property (ValueLabelsCollection)

Gets the specified label from the collection by numeric index, double value, DateTime value or text of the label.

Syntax

[VB]

Default Public ReadOnly Property Item(index As Integer) As Label

Default Public ReadOnly Property Item(value As Double) As Label

Default Public ReadOnly Property Item(value As DateTime) As Label

Default Public ReadOnly Property Item(text As String) As Label

[C#]

public Label this[int index] { get; }

public Label this[double value] { get; }

public Label this[DateTime value] { get; }

public Label this[string text] { get; }

[Delphi]

property Item(index: Integer): Label;

property Item(value: Double): Label;

property Item(value: DateTime): Label;

property Item(text: string): Label;

Remarks

The first overload retrieves the ValueLabel by its index in the collection. The remaining overloads retrieve the ValueLabel by either the label value or the text to be displayed. Note that an Integer used as an argument will always call the first overload, so ValueLabels to be retrieved by their numeric values should always be cast to Double/double for Integer values.

See Also

ValueLabelsCollection Class


ValueLabelsCollection Methods

Add Method (ValueLabelsCollection)

AddNewLabel Method


Add Method (ValueLabelsCollection)

Add Method (ValueLabelsCollection)

Adds new label and accepts initialization parameters.

Syntax

[VB]

Public Function Add (label As ValueLabel) As Integer

Public Function Add (val As Object, text As String) As Integer

[C#]

public int Add(ValueLabel label);

public int Add(object val, string text);

[Delphi]

function Add(label: ValueLabel): Integer;

function Add(val: Object; text: string): Integer;

Return Value

Integer

Remarks

The val parameter specifies the value of the axis to be replaced. The text parameter specifies the string that will replace the axis value annotation. The return value indicates successful addition.

See Also

ValueLabelsCollection Class


AddNewLabel Method

AddNewLabel Method

Adds a new empty label.

Syntax

[VB]

Public Function AddNewLabel () As ValueLabel

[C#]

public ValueLabel AddNewLabel();

[Delphi]

function AddNewLabel: ValueLabel;

Return Value

ValueLabel

Remarks

The return value is the added ValueLabel for a successful addition.

See Also

ValueLabelsCollection Class


View3D Class

The class View3D defines the three-dimensional features of a chart. These properties when used in conjunction with the ChartGroup Use3D property are used to produce 3D effects for Area, Bar, Pie and XYPlot charts.

View3D Class Properties

Depth Supported by the .NET Compact Framework. | The apparent chart depth as a percentage of chart width.
Elevation Supported by the .NET Compact Framework. | The apparent degree of inclination of the eye-point above the X-axis.
Rotation Supported by the .NET Compact Framework. | The apparent degree of rotation of the eye-point to the right of the Y-axis.
Shading Supported by the .NET Compact Framework. | Specifies the type of shading applied to 3D areas of the chart.


View3D Class Properties

Depth Property

Elevation Property

Rotation Property

Shading Property


Depth Property

Depth Property

The apparent chart depth as a percentage of chart width.

Syntax

[VB]

Public Property Depth as Integer

[C#]

public int Depth{ get; set;}

[Delphi]

property Depth: Integer;

See Also

View3D Class


Elevation Property

Elevation Property

The apparent degree of inclination of the eye-point above the X-axis.

Syntax

[VB]

Public Property Elevation As Integer

[C#]

public int Elevation{ get; set;}

[Delphi]

property Elevation: Integer;

See Also

View3D Class


Rotation Property

Rotation Property

The apparent degree of rotation of the eye-point to the right of the Y-axis.

Syntax

[VB]

Public Property Rotation as Integer

[C#]

public int Rotation{ get; set;}

[Delphi]

property Rotation: Integer;

See Also

View3D Class


Shading Property

Shading Property

Specifies the type of shading applied to 3D areas of the chart.

Syntax

[VB]

Public Property Shading As ShadingEnum

[C#]

public ShadingEnum Shading{ get; set;}

[Delphi]

property Shading: ShadingEnum;

See Also

View3D Class


Yfunction Class

The Yfunction class is used to describe simple functions defined explicitly by equations of the form y(x) = f(x).

Syntax

C1.Win.C1Chart.Yfunction

Yfunction All Members

Yfunction Properties

Yfunction Methods

Yfunction Events


Yfunction All Members

Yfunction Properties

AutoMax | Gets or sets whether the maximum X value is calculated automatically.
AutoMin | Gets or sets whether the minimum X value is calculated automatically.
CodeLines | Gets or sets the multi-line presentation of function code.
CodeText | Gets or sets the function code.
CustomFunction | Gets or sets a user-defined custom function object.
MaxX | Gets or sets the maximum X value of the plotted function.
MinX | Gets or sets the minimum X value of the plotted function.

Yfunction Methods

GetY

Calculates the value of the function at specified X value.

Yfunction Events

CalculateY

Fires whenever the function value is calculated.


Yfunction Properties

AutoMax Property (Yfunction)

AutoMin Property (Yfunction)

CodeLines Property (Yfunction)

CodeText Property (Yfunction)

CustomFunction Property (Yfunction)

MaxX Property (Yfunction)

MinX Property (Yfunction)


AutoMax Property (Yfunction)

AutoMax Property (Yfunction)

Gets or sets whether the maximum X value is calculated automatically.

Syntax

[VB]

Public Property AutoMax As Boolean

[C#]

public bool AutoMax { get; set;}

[Delphi]

property AutoMax: Boolean;

Remarks

When AutoMax is true the AxisX.Max is used.

See Also

Yfunction Class


AutoMin Property (Yfunction)

AutoMin Property (Yfunction)

Gets or sets whether the minimum X value is calculated automatically.

Syntax

[VB]

Public Property AutoMin As Boolean

[C#]

public bool AutoMin { get; set;}

[Delphi]

property AutoMin: Boolean;

Remarks

When AutoMin is true the AxisX.Min is used as minimum x.

See Also

Yfunction Class


CodeLines Property (Yfunction)

CodeLines Property (Yfunction)

Gets or sets the multi-line presentation of function code.

Syntax

[VB]

Public Property CodeLines() As String

[C#]

public string[] CodeLines { get; set;}

[Delphi]

property CodeLines: array of string;

See Also

Yfunction Class


CodeText Property (Yfunction)

CodeText Property (Yfunction)

Gets or sets the function code.

Syntax

[VB]

Public Property CodeText As String

[C#]

public string CodeText { get; set;}

[Delphi]

property CodeText: string;

See Also

Yfunction Class


CustomFunction Property (Yfunction)

CustomFunction Property (Yfunction)

Gets or sets a user-defined custom function object.

Syntax

[VB]

Public Property CustomFunction As ISimpleFunction

[C#]

public ISimpleFunction CustomFunction { get; set;}

[Delphi]

property CustomFunction: ISimpleFunction;

Remarks

To obtain complete control of the Yfunction calculation, a class inheriting from ISimpleFunction can be implemented and instatiated. After the CustomFunction property is set to an instance of such a class object, the chart will plot the user-defined Yfunction with the appropriate styles and legend entry.

See Also

Yfunction Class


MaxX Property (Yfunction)

MaxX Property (Yfunction)

Gets or sets the maximum X value of the plotted function.

Syntax

[VB]

Public Property MaxX As Double

[C#]

public double MaxX { get; set;}

[Delphi]

property MaxX: Double;

Remarks

Setting MaxX changes the AutoMax to false.

See Also

Yfunction Class


MinX Property (Yfunction)

MinX Property (Yfunction)

Gets or sets the minimum X value of the plotted function.

Syntax

[VB]

Public Property MinX As Double

[C#]

public double MinX { get; set;}

[Delphi]

property MinX: Double;

Remarks

Setting MinX changes the AutoMin to false.

See Also

Yfunction Class


Yfunction Methods

GetY Method (Yfunction)


GetY Method (Yfunction)

GetY Method (Yfunction)

Calculates the value of the function at specified X value.

Syntax

[VB]

Public Function GetY (x As Double) As Double

[C#]

public double GetY (double x);

[Delphi]

function GetY( x : Double) : Double;

Return Value

Double

See Also

Yfunction Class


Yfunction Events

CalculateY Event (Yfunction)


CalculateY Event (Yfunction)

CalculateY Event (Yfunction)

Fires whenever the function value is calculated.

Syntax

[VB]

Public Event CalculateY As CalculateFunctionEventHandler

[C#]

public event CalculateFunctionEventHandler CalculateY;

[Delphi]

property CalculateY : CalculateFunctionEventHandler;

Event data

The event handler receives an argument of type CalculateFunctionEventArgs containing data related to this event.

See Also

Yfunction Class


C1Chart 2D Enumeration Reference

AlarmZoneShapeEnum Enumeration

AlignHorzEnum Enumeration

AlignImageEnum Enumeration

AlignVertEnum Enumeration

AnnotationMethodEnum Enumeration

AttachMethodEnum Enumeration

AutoLabelArrangementMethodEnum Enumeration

AutoLabelArrangementOptions Enumeration

AxisFlagEnum Enumeration

AxisLabelsSourceEnum Enumeration

AxisScrollBarButtonFlags Enumeration

AxisIDEnum Enumeration

BorderStyleEnum Enumeration

BubbleMethod Enumeration

Chart2DLayoutEnum Enumeration

Chart2DTypeEnum Enumeration

ChartRegionEnum Enumeration

CompassEnum Enumeration

CoordinateFocusEnum Enumeration

DataArrayEnum Enumeration

DesignerDialogEnum Enumeration

DisplayTypeEnum Enumeration

FillTypeEnum Enumeration

FitTypeEnum Enumeration

FormatEnum Enumeration

FunctionCodeLanguageEnum Enumeration

FunctionCodeTypeEnum Enumeration

GradientStyleEnum Enumeration

HatchStyleEnum Enumeration

HighlightActivationEnum Enumeration

LabelCompassEnum Enumeration

LegendOrientationEnum Enumeration

LinePatternEnum Enumeration

PlotElementEnum Enumeration

PlotFilterMethodEnum Enumeration

PlotLinesMethodEnum Enumeration

PointStyleSelectionEnum Enumeration

PrintScaleEnum Enumeration

PropertyPageFlagsEnum Enumeration

RotationEnum Enumeration

ScrollBarAppearanceEnum Enumeration

ScrollKeyFlags Enumeration

SelectActionEnum Enumeration

SeriesDisplayEnum Enumeration

ShadingEnum Enumeration

SymbolShapeEnum Enumeration

TickLabelsEnum Enumeration

TickMarksEnum Enumeration

TrendLineTypeEnum Enumeration

ValueLabelAppearanceEnum Enumeration


AlarmZoneShapeEnum Enumeration

AlarmZoneShapeEnum Enumeration

Syntax

[VB]

Public enum AlarmZoneShapeEnum

[C#]

public sealed enum AlarmZoneShapeEnum : System.Enum

[Delphi]

type AlarmZoneShapeEnum = (Elipse, Polygon, Rectangle);

Remarks

Use the members of this enumeration to set the value of the Shape property of an AlarmZone object.

Member Name | Description
Ellipse | An ellipse bounded by the a rectangle specified by the data coordinates of the AlarmZone extents.
Polygon | A polygon specified by XY and with limits of a rectangle specified by the data coordinates of the AlarmZone extents.
Rectangle | A rectangle specified by the data coordinates of the AlarmZone extents.


AlignHorzEnum Enumeration

AlignHorzEnum Enumeration

Syntax

[VB]

Public enum AlignHorzEnum

[C#]

public sealed enum AlignHorzEnum : System.Enum

[Delphi]

type AlignHorzEnum = (Center, Far, General, Justify, Near);

Remarks

Use the members of this enumeration to set the value of the HorizontalAlignment property in the Style class.

Member Name | Description
General | Sets text to be left-aligned and numbers to be right-aligned.
Near | Aligns text to the near side (left side in left-to-right mode).
Center | Aligns text to the center.
Far | Aligns cell text to the far side (right side in left-to-right mode).
Justify | Spreads text throughout.


AlignImageEnum Enumeration

AlignImageEnum Enumeration

Syntax

[VB]

Public enum AlignImageEnum

[C#]

public sealed enum AlignImageEnum : System.Enum

[Delphi]

type AlignImageEnum = (Bottom, Center, Hide, Left, Right, Scale, Stretch, Tile, Top);

Remarks

Use the members of this enumeration to set the value of the ImageAlignment property in the Style class.

Member Name | Description
Hide | Image is hidden.
Left | Image is aligned to the left.
Right | Image is aligned to the right.
Top | Image is aligned to the Top.
Bottom | Image is aligned to the bottom.
Center | Image is center-aligned.
Scale | Image is scaled to fit the image area.
Stretch | Image is stretched to fit image area.
Tile | Image is tiled throughout the image area.


AlignVertEnum Enumeration

AlignVertEnum Enumeration

Syntax

[VB]

Public enum AlignVertEnum

[C#]

public sealed enum AlignVertEnum : System.Enum

[Delphi]

type AlignVertEnum = (Bottom, Center, Top);

Remarks

Use the members of this enumeration to set the value of the VerticalAlignment property in the Style class.

Member Name | Description
Top | Aligns text to the top.
Center | Aligns text to the center.
Bottom | Aligns text to the bottom.


AnnotationMethodEnum Enumeration

AnnotationMethodEnum Enumeration

Syntax

[VB]

Public enum AnnotationMethodEnum

[C#]

public sealed enum AnnotationMethodEnum : System.Enum

[Delphi]

type AnnotationMethodEnum = (Mixed, ValueLabels, Values);

Remarks

Use the members of this enumeration to set the state of the ValueLabels collection in the Axis class.

Member Name | Description
Mixed | Both automatic annotations and value labels will be visible.
Values | The axis will be annotated automatically by the chart.
ValueLabels | The axis will be annotated with values specified in the ValueLabelsCollection.


AttachMethodEnum Enumeration

AttachMethodEnum Enumeration

Syntax

[VB]

Public enum AttachMethodEnum

[C#]

public sealed enum AttachMethodEnum : System.Enum

[Delphi]

type AttachMethodEnum = (Coordinate, DataCoordinate, DataIndex, DataIndexY);

Remarks

Use the members of this enumeration to set the value of the AttachMethod property in the Label class.

Member Name | Description
Coordinate | Label can be attached to anywhere on the chart. The number of pixels between the top-left corner of the chart to the ChartLabel can be specified.
DataCoordinate | Label is attached to anywhere inside the PlotArea. The data coordinates can be specified. This method is not allowed on pie charts using PointLabels for the X-axis annotation. If any part of the ChartLabel falls outside of the ChartArea, it is clipped.
DataIndex | Label is attached to a specific data point on the chart. The series and point indices and the ChartGroup can be specified.
DataIndexY | Label is attached to a distance above or below a specific data point. The series and point indices, the ChartGroup, and the Y-coordinate can be specified. This is most useful for bar and stacking bar charts.


AutoLabelArrangementMethodEnum Enumeration

AutoLabelArrangementMethodEnum Enumeration

Syntax

[VB]

Public enum AttachMethodEnum

[C#]

public sealed enum AttachMethodEnum : System.Enum

[Delphi]

type AttachMethodEnum = (Decimation, FindingOptimum);

Remarks

Use the members of this enumeration to set the value of the Method property of an AutoLabelArrangement object.

Member Name | Description
Decimation | The method removes labels which can not be placed without overlapping.
FindingOptimum | This method tries to position labels avoiding its overlapping.


AutoLabelArrangementOptions Enumeration

AutoLabelArrangementOptions Enumeration

Syntax

[VB]

Public enum AttachMethodEnum

[C#]

public sealed enum AttachMethodEnum : System.Enum

[Delphi]

type AttachMethodEnum = (Bottom, BottomLeft, BottomRight, Default, Left, Right, Top, TopLeft, TopRight);

Remarks

Use the members of this enumeration to set the value of the Options property of an AutoLabelArrangement object.

Member Name | Description
Bottom | Allows bottom label position.
BottomLeft | Allows bottom left label position.
BottomRight | Allows bottom right label position.
Default | Allows any label position.
Left | Allows left label position.
Right | Allows right label position.
Top | Allows top label position.
TopLeft | Allows top left label position.
TopRight | Allows top right label position.


AxisFlagEnum Enumeration

AxisFlagEnum Enumeration

Syntax

[VB]

Public enum AxisFlagEnum

[C#]

public sealed enum AxisFlagEnum : System.Enum

[Delphi]

type AxisFlagEnum = (AxesAll, AxesXY, AxesXY2, AxisX, AxisY, AxisY2);

Remarks

Use the members of this enumeration to set the value of the Axis property in the Action class.

Member Name | Description
AxisX | Use x-axis.
AxisY | Use y-axis.
AxesXY | Use x-axis and y-axis.
AxesY2 | Use y2-axis.
AxesXY2 | Use x-axis and y2-axis.
AxesAll | Use all axes( x-axis, y-axis and y2-axis).


AxisLabelsSourceEnum Enumeration

AxisLabelsSourceEnum Enumeration

Syntax

[VB]

Public enum AxisLabelSourceEnum

[C#]

public sealed enum AxisLabelSourceEnum : System.Enum

[Delphi]

type AxisLabelSourceEnum = (SeriesLabels, XValues, None);

Remarks

Use the members of this enumeration to set the value of the AxisLabelSource property in the Gantt class.

Member Name | Description
SeriesLabels | Use series labels along the x-axis.
XValues | Use x-data labels and/or ValueLabels are used along the x-axis.
None | Use no labels along the x-axis.


AxisScrollBarButtonFlags Enumeration

AxisScrollBarButtonFlags Enumeration

Syntax

[VB]

Public enum AxisScrollBarButtonFlags

[C#]

public sealed enum AxisScrollBarButtonFlags: System.Enum

[Delphi]

type AxisScrollBarButtonFlags = (NoButtons, ScrollButtons, ScaleButton, ScaleAndScrollButtons);

Remarks

Use the members of this enumeration to indicate the presence and function of AxisScrollBar buttons.

Member Name | Description
NoButtons | Scroll bar without buttons.
ScrollButtons | Scroll bar with left/right (horizontal) or up/down (vertical) buttons.
ScaleButton | Scroll bar with scale button.
ScaleAndScrollButtons | Scroll bar with scale and scroll buttons.


AxisIDEnum Enumeration

AxisIDEnum Enumeration

Syntax

[VB]

Public Enum AxisIdEnum

[C#]

public sealed enum AxisIdEnum : Enum

[Delphi]

type AxisIDEnum = (X, Y, Y2);

Remarks

Use the members of this enumeration to refer to the X, Y, and Y2 axis.

Member Name | Description
X | Refers to the X axis.
Y | Refers to the Y axis.
Y2 | Refers to the Y2 axis.


BorderStyleEnum Enumeration

BorderStyleEnum Enumeration

Syntax

[VB]

Public enum BorderStyleEnum

[C#]

public sealed enum BorderStyleEnum : System.Enum

[Delphi]

type BorderStyleEnum = (Dashed, Double, Empty, Fillet, Groove, Inset, InsetBevel, None, NotSet, Raised, RaisedBevel, Solid);

Remarks

Use the members of this enumeration to set the value of the BorderStyle property in the Border class.

Member Name | Description
NotSet | Border style is not set and is inherited from C1Chart class.
None | No border.
Empty | Empty Border.
Solid | Solid line border.
Raised | Raised 3D border, drawn using system colors.
Inset | Inset 3D border, drawn using system colors.
RaisedBevel | Raised 3D border with bevel.
InsetBevel | Inset 3D border with bevel.
Groove | Compound border (inset+raised).
Fillet | Compound border (raised+inset).
Double | Double solid line border.
Dashed | Dashed line border.


BubbleMethod Enumeration

BubbleMethod Enumeration

Syntax

[VB]

Public enum BubbleMethod

[C#]

public sealed enum BubbleMethodEnum : System.Enum

[Delphi]

type BubbleMethodEnum = (Area, Diameter);

Remarks

Use the members of this enumeration to set the value of the EncodingMethod property in the Bubble class.

Member Name | Description
Diameter | Sizes symbols according to diameter.
Area | Sizes symbols according to area.


Chart2DLayoutEnum Enumeration

Chart2DLayoutEnum Enumeration

Syntax

[VB]

Public enum Chart2DlayoutEnum

[C#]

public sealed enum Chart2DLayoutEnum : System.Enum

[Delphi]

type Chart2DLayoutEnum = (ArrayLayout, GeneralLayout);

Remarks

Use the members of this enumeration to set the value of the Layout property in the ChartData class.

Member Name | Description
ArrayLayout | Array data layout.
GeneralLayout | General data layout.


Chart2DTypeEnum Enumeration

Chart2DTypeEnum Enumeration

Syntax

[VB]

Public enum Chart2DTypeEnum

[C#]

public sealed enum Chart2DTypeEnum : System.Enum

[Delphi]

type Chart2DTypeEnum = (Area, Bar, Bubble, Candle, HiLo, HiLoOpenCase, Pie, Polar, Radar, XYPlot, Gantt, Histogram, Step);

Remarks

Use the members of this enumeration to set the value of the ChartType property in the ChartGroup class.

Member Name | Description
XYPlot | Plot chart type.
Pie | Pie chart type.
Bar | Bar chart type.
Area | Area chart type.
Polar | Polar chart type.
Radar | Radar chart type.
Bubble | Bubble chart type.
HiLo | HiLo chart type.
HiLoOpenClose | HiLoOpenClose chart type.
Candle | Candle chart type.
Gantt | Gantt chart type.
Histogram | Histogram chart type.
Step | Step chart type.


ChartRegionEnum Enumeration

ChartRegionEnum Enumeration

Syntax

[VB]

Public enum ChartRegionEnum

[C#]

public sealed enum ChartRegionEnum : System.Enum

[Delphi]

type ChartRegionEnum = (ChartArea, ChartLabel, Control, Footer, Header, Legend, None, PlotArea, XAxis, YAxis, Y2Axis);

Remarks

Use the members of this enumeration as it is returned from the ChartRegionFromCoord method of the C1Chart.

Member Name | Description
ChartArea | The coordinates are located in the ChartArea, which is outside of the axes but within the bounds of the chart.
ChartLabel | The coordinates are located in a ChartLabel object which can be placed anywhere around the chart.
Control | The coordinates are within the bounds of the control.
Footer | The coordinates are located in the Footer title.
Header | The coordinates are located in the Header title.
Legend | The coordinates are located in the Legend object.
None | The coordinates are not located in the C1Chart.
PlotArea | The coordinates are located in the PlotArea, which is located within the axes.
X-Axis | The coordinates are located in the X-Axis.
Y-Axis | The coordinates are located in the Y-Axis.
Y2-Axis | The coordinates are located in the Y2-Axis.


CompassEnum Enumeration

CompassEnum Enumeration

Syntax

[VB]

Public enum CompassEnum

[C#]

public sealed enum CompassEnum : System.Enum

[Delphi]

type CompassEnum = (East, North, South, West);

Remarks

Use the members of this enumeration to set the value of the Compass property in the Axis, Label, and Legend classes.

Member Name | Description
North | Object is positioned north or above.
South | Object is positioned south or below.
East | Object is positioned east or to the right side.
West | Object is positioned west or to the left side.


CoordinateFocusEnum Enumeration

CoordinateFocusEnum Enumeration

Syntax

[VB]

Public enum CoordinateFocusEnum

[C#]

public sealed enum CoordinateFocusEnum : System.Enum

[Delphi]

type CoordinateFocusEnum = (XandYCoord, XCoord, YCoord);

Remarks

Use the members of this enumeration to set the value of a parameter in the CoordToDataIndex method.

Member Name | Description
XandYCoord | Both the X and Y Coordinates entered are taken into account.
Xcoord | Only the X Coordinate entered is considered.
Ycoord | Only the Y Coordinate entered is considered.


DataArrayEnum Enumeration

DataArrayEnum Enumeration

Syntax

[VB]

Public Enum DataArrayEnum As Integer

[C#]

public sealed enum DataArrayEnum : System.Enum

[Delphi]

type DataArrayEnum = (X, Y, Y1, Y2, Y3);

Remarks

Use the members of this enumeration to set the value of the DataArray property in the TrendLine class.

Member Name | Description
X | Specifies ChartDataSeries.X array
Y | Specifies ChartDataSeries.Y array
Y1 | Specifies ChartDataSeries.Y1 array
Y2 | Specifies ChartDataSeries.Y2 array
Y3 | Specifies ChartDataSeries.Y3 array


DesignerDialogEnum Enumeration

DesignerDialogEnum Enumeration

Syntax

[VB]

Public Enum DesignerDialogEnum As Integer

[C#]

public sealed enum DesignerDialogEnum : System.Enum

[Delphi]

type DesignerDialogEnum = (Default, V1, V2);

Remarks

Use the members of this enumeration to set the value of the ShowProperties and ShowWizard methods in the C1Chart class.

Member Name | Description
Default | Default dialogs
V1 | Old dialogs (before 1.0.20042.14060)
V2 | New dialogs (since 1.0.20042.14060)


DisplayTypeEnum Enumeration

DisplayTypeEnum Enumeration

Syntax

[VB]

Public Enum DisplayTypeEnum As Integer

[C#]

public sealed enum DisplayTypeEnum : System.Enum

[Delphi]

type DisplayTypeEnum = (FrequencyGraph, Histogram, SteppedFrequencyGraph);

Remarks

Use the members of this enumeration to set the value of the DisplayType property in the ChartHistogram class.

Member Name | Description
FrequencyGraph | Displays the intervals and counts as a frequency graph.
Histogram | Displays the intervals and counts as a histogram.
SteppedFrequencyGraph | Displays the intervals and counts as a stepped frequency graph.


FillTypeEnum Enumeration

FillTypeEnum Enumeration

Syntax

[VB]

Public Enum FillTypeEnum As Integer

[C#]

public sealed enum FillTypeEnum : System.Enum

[Delphi]

type FillTypeEnum = (SolidColor, Gradient, Hatch, Texture);

Remarks

Use the members of this enumeration to set the value of the FillType property in the FillStyle class.

Member Name | Description
Gradient | 2 – color gradient filling.
Hatch | 2 – color hatch filling.
SolidColor | Single color used for filling.
Texture | Tile image filling.


FitTypeEnum Enumeration

FitTypeEnum Enumeration

Syntax

[VB]

Public enum FitTypeEnum

[C#]

public sealed enum FitTypeEnum : System.Enum

[Delphi]

type FitTypeEnum = (Beziers, Line, Spline);

Remarks

Use the members of this enumeration to set the value of the FitType property in the ChartDataSeries class.

Member Name | Description
Line | Straight lines connect data points.
Spline | Line passes smoothly through each data point; there are no sharp corners and no abrupt changes in the tightness of the curve.
Beziers | Line does not pass through all data points, but the points act as magnets, pulling the curve in certain directions and influencing the way the curve bends.


FormatEnum Enumeration

FormatEnum Enumeration

Syntax

[VB]

Public enum FormatEnum

[C#]

public sealed enum FormatEnum : System.Enum

[Delphi]

type FormatEnum = (DateFull, DateFullShortTime, DateGeneral, DateGeneralShortTime, DateLong, DateLongTime, DateManual, DateMonth, DateRFC1123, DateShort, DateShortTime, DateSortable, DateUniversal, DateUNiveralSortable, DateYear, NumericCurrency, NumericExponential, NumericGeneral, NumericHexadecimal, NumericManual, NumericPercentage, NumericRoundtrip);

Remarks

Use the members of this enumeration to set the value of the AnnoFormat property in the Axis class.

See .Net date and time format strings and standard numeric format strings for more information.

Member Name | Description
NumericManual | Used in conjunction with the Axis AnnoFormatString property to specify a .Net custom numeric format. (See custom numeric format strings in the .Net documentation).
NumericCurrency | A currency amount format.
NumericGeneral | A general number format. Formatted into the most compact decimal form using fixed or scientific notation.
NumericExponential | A scientific or exponential format in the form "-d.ddd…E+ddd" or "-d.ddd…e+ddd".
NumericPercentage | A percentage amount format.
NumericRoundtrip | A format, which guarantees that a numeric value after being converted will be returned as the same numeric value.
NumericHexadecimal | A hexadecimal format.
DateManual | Used in conjunction with the Axis AnnoFormatString property to specify a .Net custom date/datetime format. (See custom date and time format strings in the .Net documentation).
DateShort | A short date format.
DateLong | A long date format.
DateFullShortTime | A long date and short time format.
DateFull | A full date format.
DateGeneralShortTime | A general date format with short time format.
DateGeneral | A general date format.
DateMonth | A month format.
DateRFC1123 | A date format based on the IETF RFC 1123 specification.
DateSortable | A sortable date format.
DateShortTime | A short time format.
DateLongTime | A long time format.
DateUniversalSortable | A universally sortable date format.
DateUniversal | A universal date format.
DateYear | A year format.


FunctionCodeLanguageEnum Enumeration

FunctionCodeLanguageEnum Enumeration

Syntax

[VB]

Public Enum FunctionCodeLanguageEnum As Integer

[C#]

public sealed enum FunctionCodeLanguageEnum : System.Enum

[Delphi]

type FunctionCodeLanguageEnum = (Csharp, VB);

Remarks

Use the members of this enumeration to set the value of the CodeLanguage property in the FunctionBase class.

Member Name | Description
CSharp | C#
VB | VB.Net


FunctionCodeTypeEnum Enumeration

FunctionCodeTypeEnum Enumeration

Syntax

[VB]

Public Enum FunctionCodeTypeEnum As Integer

[C#]

public sealed enum FunctionCodeTypeEnum : System.Enum

[Delphi]

type FunctionCodeTypeEnum = (Formula, Method, Unit);

Remarks

Use the members of this enumeration to set the value of the CodeType property in the FunctionBase class.

Member Name | Description
Formula | Code text represents expression
Method | Code text represents body of method
Unit | Code text represents code unit


GradientStyleEnum Enumeration

GradientStyleEnum Enumeration

Syntax

[VB]

Public enum GradientStyleEnum

[C#]

public sealed enum GradientStyleEnum : System.Enum

[Delphi]

type GradientStyleEnum = (Diagonal, DiagonalBack, DiagonalBackCenter, DiagonalCenter, FromCenter, Horizontal, HorizontalCenter, None, Radial, Vertical, VerticalCenter);

Remarks

Use the members of this enumeration to set the value of the GradientStyle property in the Style class and the GradientStyle property in the PlotArea class.

Member Name | Description
None | No gradient filling.
Horizontal | From left (BackColor) to right (BackColor2).
HorizontalCenter | From center (BackColor) to left and right (BackColor2).
Vertical | From top (BackColor) to bottom (BackColor2).
VerticalCenter | From center (BackColor) to top and bottom (BackColor2).
Diagonal | From left-bottom (BackColor) to right-top (BackColor2).
DiagonalCenter | From center (BackColor) to left-bottom and right-top (BackColor2).
DiagonalBack | From left-top (BackColor) to right-bottom (BackColor2).
DiagonalBackCenter | From center (BackColor) to left-top and right-bottom (BackColor2).
Radial | From center (BackColor) to corners (BackColor2) in radial direction.
FromCenter | From center (BackColor) to corners (BackColor2).


HatchStyleEnum Enumeration

HatchStyleEnum Enumeration

Syntax

[VB]

Public enum HatchStyleEnum

[C#]

public sealed enum HatchStyleEnum : System.Enum

[Delphi]

type HatchStyleEnum = (BackwardDiagonal, Cross, DarkDownwardDiagonal, DarkHorizontal, DarkUpwardDiagonal, DarkVertical, DashedDownwardDiagonal, DashedHorizontal, DashedUpwardDiagonal, DashedVertical, DiagonalBrick, DiagonalCross, Divot, DottedDiamond, DottedGrid, ForwardDiagonal, Horizontal, HorizontalBrick, LargeCheckerBoard, LargeConfetti, LightDownwardDiagonal, LightHorizontal, LightUpwardDiagonal, LightVertical, NarrowHorizontal, NarrowVertical, None, OutlinedDiamond, Percent05, Percent10, Percent20, Percent25, Percent30, Percent40, Percent50, Percent60, Percent70, Percent75, Percent80, Percent90, Plaid, Shingle. SmallCheckerBoard, SmallConfetti, SmallGrid, SolidDiamond, Sphere, Threllis, Vertical, Wave, Weave, WideDownwareDiagonal, WideUpwardDiagonal, ZigZag);

Remarks

Use the members of this enumeration to set the value of the HatchStyle property in the Style class and the HatchStyle property in the PlotArea class.

Member Name | Description
None | No pattern.
Horizontal | A pattern of horizontal lines.
Vertical | A pattern of vertical lines.
ForwardDiagonal | A pattern of lines on a diagonal from upper left to lower right.
BackwardDiagonal | A pattern of lines on a diagonal from upper right to lower left.
Cross | Specifies horizontal and vertical lines that cross.
DiagonalCross | Specifies forward diagonal and backward diagonal lines that cross. The lines are antialiased.
Percent05 | Specifies a 5-percent hatch. The ratio of foreground color to background color is 5:100.
Percent10 | Specifies a 10-percent hatch. The ratio of foreground color to background color is 10:100.
Percent20 | Specifies a 20-percent hatch. The ratio of foreground color to background color is 20:100.
Percent25 | Specifies a 25-percent hatch. The ratio of foreground color to background color is 25:100.
Percent30 | Specifies a 30-percent hatch. The ratio of foreground color to background color is 30:100.
Percent40 | Specifies a 40-percent hatch. The ratio of foreground color to background color is 40:100.
Percent50 | Specifies a 50-percent hatch. The ratio of foreground color to background color is 50:100.
Percent60 | Specifies a 60-percent hatch. The ratio of foreground color to background color is 60:100.
Percent70 | Specifies a 70-percent hatch. The ratio of foreground color to background color is 70:100.
Percent75 | Specifies a 75-percent hatch. The ratio of foreground color to background color is 75:100.
Percent80 | Specifies a 80-percent hatch. The ratio of foreground color to background color is 80:100.
Percent90 | Specifies a 90-percent hatch. The ratio of foreground color to background color is 90:100.
LightDownwardDiagonal |
LightUpwardDiagonal | Specifies diagonal lines that slant to the left from top points to bottom points and are spaced 50 percent closer together than BackwardDiagonal, but they are not antialiased.
DarkDownwardDiagonal | Specifies diagonal lines that slant to the right from top points to bottom points, are spaced 50 percent closer together than, and are twice the width of ForwardDiagonal. This hatch pattern is not antialiased.
DarkUpwardDiagonal | Specifies diagonal lines that slant to the left from top points to bottom points, are spaced 50 percent closer together than BackwardDiagonal, and are twice its width, but the lines are not antialiased.
WideDownwardDiagonal | Specifies diagonal lines that slant to the right from top points to bottom points, have the same spacing as hatch style ForwardDiagonal, and are triple its width, but are not antialiased.
WideUpwardDiagonal | Specifies diagonal lines that slant to the left from top points to bottom points, have the same spacing as hatch style BackwardDiagonal, and are triple its width, but are not antialiased.
LightVertical | Specifies vertical lines that are spaced 50 percent closer together than Vertical.
LightHorizontal | Specifies horizontal lines that are spaced 50 percent closer together than Horizontal.
NarrowVertical | Specifies vertical lines that are spaced 75 percent closer together than hatch style Vertical (or 25 percent closer together than LightVertical).
NarrowHorizontal | Specifies horizontal lines that are spaced 75 percent closer together than hatch style Horizontal (or 25 percent closer together than LightHorizontal).
DarkVertical | Specifies vertical lines that are spaced 50 percent closer together than Vertical and are twice its width.
DarkHorizontal | Specifies horizontal lines that are spaced 50 percent closer together than Horizontal and are twice the width of HatchStyleHorizontal.
DashedDownwardDiagonal | Specifies dashed diagonal lines that slant to the right from top points to bottom points.
DashedUpwardDiagonal | Specifies dashed diagonal lines that slant to the left from top points to bottom points.
DashedHorizontal | Specifies dashed horizontal lines.
DashedVertical | Specifies dashed vertical lines.
SmallConfetti | Specifies a hatch that has the appearance of confetti.
LargeConfetti | Specifies a hatch that has the appearance of confetti, and is composed of larger pieces than SmallConfetti.
ZigZag | Specifies horizontal lines that are composed of zigzags.
Wave | Specifies horizontal lines that are composed of tildes.
DiagonalBrick | Specifies a hatch that has the appearance of layered bricks that slant to the left from top points to bottom points.
HorizontalBrick | Specifies a hatch that has the appearance of horizontally layered bricks.
Weave | Specifies a hatch that has the appearance of a woven material.
Plaid | Specifies a hatch that has the appearance of a plaid material.
Divot | Specifies a hatch that has the appearance of divots.
DottedGrid | Specifies horizontal and vertical lines, each of which is composed of dots that cross.
DottedDiamond | Specifies forward diagonal and backward diagonal lines, each of which is composed of dots, that cross.
Shingle | Specifies a hatch that has the appearance of diagonally-layered shingles that slant to the right from top points to bottom points.
Trellis | Specifies a hatch that has the appearance of a trellis.
Sphere | Specifies a hatch that has the appearance of spheres laid adjacent to one another.
SmallGrid | Specifies horizontal and vertical lines that cross and are spaced 50 percent closer together than hatch style Cross.
SmallCheckerBoard | Specifies a hatch that has the appearance of a checkerboard.
LargeCheckerBoard | Specifies a hatch that has the appearance of a checkerboard with squares that are twice the size of SmallCheckerBoard.
OutlinedDiamond | Specifies forward diagonal and backward diagonal lines that cross but are not antialiased.
SolidDiamond | Specifies a hatch that has the appearance of a checkerboard placed diagonally.


HighlightActivationEnum Enumeration

HighlightActivationEnum Enumeration

Syntax

[VB]

Public enum HighlightActivationEnum

[C#]

public sealed enum HighlightActivationEnum : System.Enum

[Delphi]

type HighlightActivationEnum = (Click, Custom, Disabled, MouseOver);

Remarks

Use the members of this enumeration to set the value of the Activation

property of an DataHighlight object.

Member Name | Description
Click | Highlight is activated when a user clicks on the plotted data.
Custom | User is responsible for setting active data series and point.
Disabled | Highlight is disabled.
MouseOver | Highlight is activated when user moves mouse over the plotted data.


LabelCompassEnum Enumeration

LabelCompassEnum Enumeration

Syntax

[VB]

Public enum LabelCompassEnum

[C#]

public sealed enum LabelCompassEnum : System.Enum

[Delphi]

type LabelCompassEnum = (Auto, East, North, NorthEast, NorthWest, Orthogonal, Radial, South, SouthEast, WouthWest, West);

Remarks

Use the members of this enumeration to set the value of the Compass property in the Label class.

Member Name | Description
Auto | Places label automatically. The parameters of auto-arrangement are specified in AutoArrangment property of ChartLabels class.
North | Places label to the north or above the data point.
NorthEast | Places label to the NorthEast or above and right of the data point.
East | Places label to the East or to the right of the data point.
SouthEast | Places label to the SouthEast or blow and right of the data point.
South | Places label to the South or below the data point.
SouthWest | Places label to the SouthWest or below and left of the data point.
West | Places label to the West or left of the data point.
NorthWest | Places label to the NorthWest or above and left of the data point.
Radial | In a pie chart, places label directly away from the center of the chart.
Orthogonal | Places label perpendicularly away from the plot line.


LegendOrientationEnum Enumeration

LegendOrientationEnum Enumeration

Syntax

[VB]

Public enum LegendOrientationEnum

[C#]

public sealed enum LegendOrientationEnum : System.Enum

[Delphi]

type LegendOrientationEnum = (Auto, Horizontal, Vertical, HorizontalVariableItemWidth, VerticalVariableItemWidth);

Remarks

Use the members of this enumeration to set the value of the Orientation in the Legend classes.

Member Name | Description
Auto | Horizontal for legends with north and south Compass values, and Vertical for legends with east and west Compass values.
Horizontal | Legend entries are added side by side (horizontally) as legend width permits. If sufficient width is not available, additional legend rows are created.
Vertical | Legend entries are stacked vertically as legend height permits. If sufficient height is not available, additional legend columns are created.
HorizontalVariableItemWidth | Legend entries are added side by side as (horizontally) as legend width permits. If sufficient width is not available, additional legend rows are created. Each item width depends upon the length of the item label rather than a uniform fraction of the legend width.
VerticalVariableItemHeight | Legend entries are stacked vertically as legend height permits. If sufficient height is not available, addtion legend columns are created. Each item height depends upon the height of the item label rather than a uniform fraction of the legend height.


LinePatternEnum Enumeration

LinePatternEnum Enumeration

Syntax

[VB]

Public enum LinePatternEnum

[C#]

public sealed enum LinePatternEnum : System.Enum

[Delphi]

type LinePatternEnum = (Dash, DashDot, DashDotDot, Dot, none, Solid);

Remarks

Use the members of this enumeration to set the value of the Pattern property in the ChartGridStyle and ChartLineStyle classes.

Member Name | Description
None | No line is drawn.
Solid | A solid line.
Dash | A dashed line.
Dot | A dotted line.
DashDot | A line with alternating dashes and dots.
DashDotDot | A line with series consisting of a dash followed by two dots.


PlotElementEnum Enumeration

PlotElementEnum Enumeration

Syntax

[VB]

Public Enum PlotElementEnum As Integer

[C#]

public sealed enum PlotElementEnum : System.Enum

[Delphi]

type PlotElementEnum = (Points, Series);

Remarks

Use the members of this enumeration to set the value of the PlotElement property in the ChartToolTip class to define the plot element for data points and series.

Member Name | Description
Points | Data points are used for hit testing.
Series | Lines connecting data points are used for hit testing(only for XYPlot).


PlotFilterMethodEnum Enumeration

PlotFilterMethodEnum Enumeration

Syntax

[VB]

Public Enum PlotFilterMethodEnum As Integer

[C#]

public sealed enum PlotFilterMethodEnum : System.Enum

[Delphi]

type PlotFilterMethodEnum = (Alternative, Default, None);

Remarks

Use the members of this enumeration to set the value of the PlotFilterMethod property in the ChartDataSeries class.

Member Name | Description
Alternative | Alternative data filtering algorithm optimizes plotting of large data arrays which are ordered along one direction(x or y).
Default | Default data filtering algorithm optimizes plotting of large data arrays.
None | Data values are not filtered.


PlotLinesMethodEnum Enumeration

PlotLinesMethodEnum Enumeration

Syntax

[VB]

Public Enum PlotLinesMethodEnum As Integer

[C#]

public sealed enum PlotLinesMethodEnum : System.Enum

[Delphi]

type PlotLinesMethodEnum = (Lines, Splines);

Remarks

Use the members of this enumeration to set the value of the PlotLinesMethod property in the FunctionBase class.

Member Name | Description
Lines | The points are connected with straight lines
Splines | The points are connected with spline curves


PointStyleSelectionEnum Enumeration

PointStyleSelectionEnum Enumeration

Syntax

[VB]

Public Enum PointStyleSelectionEnum As Integer

[C#]

public sealed enum PointStyleSelectionEnum : System.Enum

[Delphi

type PointStyleSelectionEnum = (Custom, DataMaxX, DataMinX, DataMaxY, DataMinY, Index, SeriesMaxX, SeriesMinX, SeriesMaxY, SeriesMinY);

Remarks

Use the members of this enumeration to set the value of the Selection property in the PointStyle class.

Member Name | Description
Custom | PointStyle is selected in user-defined Select event handler.
DataMaxX | PointStyle applies to data point with maximum x value among all data series of the ChartData.
DataMinX | PointStyle applies to data point with minimum x value among all data series of the ChartData.
DataMaxY | PointStyle applies to data point with maximum y value among all data series of the ChartData.
DataMinY | PointStyle applies to data point with minimum y value among all data series of the ChartData.
Index | PointStyle applies to data point that is defined by PointIndex and SeriesIndex
SeriesMaxX | PointStyle applies to data point with maximum x value of data series that is defined by SeriesIndex property of PointStyle.
SeriesMinX | PointStyle applies to data point with minumum x value of data series that is defined by SeriesIndex property of PointStyle.
SeriesMaxY | PointStyle applies to data point with maximum y value of data series that is defined by SeriesIndex property of PointStyle.
SeriesMinY | PointStyle applies to data point with minumum y value of data series that is defined by SeriesIndex property of PointStyle.


PrintScaleEnum Enumeration

PrintScaleEnum Enumeration

Syntax

[VB]

Public enum PrintScaleEnum

[C#]

public sealed enum PrintScaleEnum : System.Enum

[Delphi]

type PrintScaleEnum = (ScaleNone, ScaleToFit, ScaleToHeight, ScaleToMax, ScaleToWidth);

Remarks

Use the members of this enumeration to set the value of the scaling property in the PrintChart method.

Member Name | Description
ScaleNone | Same size as actual chart.
ScaleToFit | Scale to existing window (minimum of height and width), preserving aspect ratio.
ScaleToHeight | Scale to specified height, preserving aspect ratio.
ScaleToMax | Enlarge to size of page.
ScaleToWidth | Scale to specified width, preserving aspect ratio.


PropertyPageFlagsEnum Enumeration

PropertyPageFlagsEnum Enumeration

Syntax

[VB]

Public enum PropertyPageFlags

[C#]

public sealed enum PropertyPageFlags: System.Enum

[Delphi]

type PropertyPageFlags = ( values );

Remarks

Use the members of this enumeration to indicate the elements display by the runtime property pages with calls to the ShowProperties method of the C1Chart class.

Member Name | Description
GallerySimple | Simple chart page
GalleryComplex | Complex chart page
Group0Data | 1st chart group data page
Group0DataBinding | 1st chart group data page
Group0DataTable | 1st chart group data page
Group1Data | 2nd chart group data page
Group1DataBinding | 2nd chart group data page
Group1DataTable | 2nd chart group data page
AxisX | X axis page
AxisXScale | X axis scale page
AxisXAnno | X axis annotation page
AxisXGridLines | X axis grid lines page
AxisY | Y axis page
AxisYScale | Y axis scale page
AxisYAnno | Y axis annotation page
AxisYGridLines | Y axis grid lines page
AxisY2 | Y2 axis page
AxisY2Scale | Y2 axis scale page
AxisY2Anno | Y2 axis annotation page
AxisY2GridLines | Y2 axis grid lines page
Appearance | Appearance page
AppearanceChartArea | Chart area appearance page
AppearanceHeader | Header appearance page
AppearanceFooter | Footer appearance page
AppearanceLegend | Legend appearance page
AppearancePlotArea | Plot area appearance page
Preview | Preview page
All | All pages


RotationEnum Enumeration

RotationEnum Enumeration

Syntax

[VB]

Public enum RotationEnum

[C#]

public sealed enum RotationEnum : System.Enum

[Delphi]

type RotationEnum = (Rotate0, Rotate90, Rotate180, Rotate270);

Remarks

Use the members of this enumeration to set the value of the Rotation property in the Axis and Style classes.

Member Name | Description
Rotate0 | No rotation.
Rotate90 | Object is rotated 90 degrees.
Rotate180 | Object is rotated 180 degrees, or inverted.
Rotate270 | Object is rotated 270 degrees.


ScrollBarAppearanceEnum Enumeration

ScrollBarAppearanceEnum Enumeration

Syntax

[VB]

Public enum ScrollBarAppearanceEnum

[C#]

public sealed enum ScrollBarAppearanceEnum : System.Enum

[Delphi]

type ScrollBarAppearanceEnum = (Normal, Flat);

Member Name | Description
Normal | Normal 3D scroll bar appearance.
Flat | Flat scroll bar appearance.
XP | Uses XP scrollbar appearance when appropriate.


ScrollKeyFlags Enumeration

ScrollKeyFlags Enumeration

Syntax

[VB]

Public enum ScrollKeyFlags

[C#]

public sealed enum ScrollKeyFlags : System.Enum

[Delphi]

type ScrollKeyFlags = (None, Cursor);

Member Name | Description
None | Scroll bar does not respond to keyboard events.
Cursor | Scroll bar responds to cursor keys including left/right arrow keys for horizontal scroll bars, and up/down for vertical scroll bars.


SelectActionEnum Enumeration

SelectActionEnum Enumeration

Syntax

[VB]

Public enum SelectAction

[C#]

public sealed enum SelectAction : System.Enum

[Delphi]

type SelectAction = (Click, MouseOver);

Remarks

Use the members of this enumeration to set the value of the SelectAction property in the ChartToolTip class to determine what action will be performed when a user selects a chart element.

Member Name | Description
Click | Event fires when a user clicks the mouse button over the chart element.
MouseOver | Event fires when a user positions the mouse cursor over an element.


SeriesDisplayEnum Enumeration

SeriesDisplayEnum Enumeration

Syntax

[VB]

Public enum SeriesDisplayEnum

[C#]

public sealed enum SeriesDisplayEnum : System.Enum

[Delphi]

type SeriesDisplayEnum = (Show, Hide, Exclude, ExcludeHoles);

Remarks

Use the members of this enumeration to set the value of the Display property in the ChartDataSeries class.

Member Name | Description
Show | Displays series.
Hide | Includes series in the data set, but is not drawn.
Exclude | Excludes series from the data set.
ExcludeHoles | Displays series, but disregards data holes.


ShadingEnum Enumeration

ShadingEnum Enumeration

Syntax

[VB]

Public enum ShadingEnum

[C#]

public sealed enum ShadingEnum : System.Enum

[Delphi]

type ShadingEnum = (ColorDark, ColorLight, None);

Remarks

The type of shading used for color of 3D areas when chart with 3D-effects is rendered. Use the members of this enumeration to set the value of the Shading property in the View3D class.

Member Name | Description
ColorDark | 3D color is darker than front color.
ColorLight | 3D color is lighter than front color.
None | No special 3D color is applied.


SymbolShapeEnum Enumeration

SymbolShapeEnum Enumeration

Syntax

[VB]

Public enum SymbolShapeEnum

[C#]

public sealed enum SymbolShapeEnum : System.Enum

[Delphi]

type SymbolShapeEnum = (Box, Circle, Cross, DiagCross, Diamond, Dot, HorizontalLine, InvertedTri, None, OpenDiamond, OpenInvertedTri, OpenTri, Square, Star, Tri, VerticalLine);

Remarks

Use the members of this enumeration to set the value of the Shape property in the ChartSymbolStyle class.

Member Name | Description
None | No symbol represents data point.
Box | Data point represented by a solid square.
Dot | Data point represented by a solid circle.
Tri | Data point represented by a solid triangle.
Diamond | Data point represented by a solid diamond.
InvertedTri | Data point represented by a solid inverted triangle.
Star | Data point represented by a solid star.
VerticalLine | Data point represented by a short vertical line.
HorizontalLine | Data point represented by a short horizontal line.
Cross | Data point represented by crossed horizontal and vertical lines.
DiagCross | Data point represented by diagonal crossed lines.
Circle | Data point represented by the outline of a circle.
Square | Data point represented by the outline of a square.
OpenTri | Data point represented by the outline of a triangle.
OpenDiamond | Data point represented by the outline of a diamond.
OpenInvertedTri | Data point represented by the outline of an inverted triangle.


TickLabelsEnum Enumeration

TickLabelsEnum Enumeration

Syntax

[VB]

Public enum TickLabelsEnum

[C#]

public sealed enum TickLabelsEnum : System.Enum

[Delphi]

type TickLabelsEnum = (High, Low, NextToAxis, None);

Remarks

Use the members of this enumeration to set the location of the axis annotations. All members of this enumeration have not yet been implemented.

Member Name | Description
None | No annotations along the axis.
High | Annotations are drawn near the maximum value of the perpendicular axis (not currently implemented).
Low | Annotations are drawn near the minimum value of the perpendicular axis (not currently implemented).
NextToAxis | Annnotations are drawn next to the axis.


TickMarksEnum Enumeration

TickMarksEnum Enumeration

Syntax

[VB]

Public enum TickMarksEnum

[C#]

public sealed enum TickMarksEnum : System.Enum

[Delphi]

type TickMarksEnum = (None, Inside, Outside, Cross);

Remarks

Use the members of this enumeration to set the value of the TickMajor and TickMinor properties in the Axis class.

Member Name | Description
None | No tickmarks along axis.
Inside | Tickmarks located inside chart area on axis.
Outside | Tickmarks located outside chart area on axis.
Cross | Tickmarks cross over axis.


TrendLineTypeEnum Enumeration

TrendLineTypeEnum Enumeration

Syntax

[VB]

Public Enum TrendLineTypeEnum As Integer

[C#]

public sealed enum TrendLineTypeEnum : System.Enum

[Delphi]

type TrendLineTypeEnum = (Polynom, Exponent, Logarithmic, Power, Fourier, MovingAverage, Mininmum, Maximum);

Remarks

Use the members of this enumeration to set the value of the TrendLineType property in the TrendLine class.

Member Name | Description
Polynom | Regression fit to the equation Y(x) = C0 + C1*x + C2*x2 + … + Cn-1*xn-1, wher n – number of terms.
Exponent | Regression fit to the equation Y(x) = C0 * e C1*x
Logarithmic | Regression fit to the equation Y(x) = C0 * ln(C1*x)
Power | Regression fit to the equation Y(x) = C0 * x C1
Fourier | Regression fit to the equation Y(x) = C0 + C1 * cos(x) + C2 * sin(x) + C3 * cos(2*x) + C4 * sin(2*x) + …
MovingAverage | Moving average of y data values Yi = ( yi + yi-1 + yi-2 + … + yi-p+1 ) / p, where p – period
Average | Average of y data values
Minimum | Minimum of y data values
Maximum | Maximum of y data values


ValueLabelAppearanceEnum Enumeration

ValueLabelAppearanceEnum Enumeration

Syntax

[VB]

Public Enum ValueLabelAppearanceEnum As Integer

[C#]

public sealed enum ValueLabelAppearanceEnum : System.Enum

[Delphi]

type ValueLabelAppearanceEnum = (ArrowMarker, CustomMarker, Label, TriangleMarker);

Remarks

Use the members of this enumeration to set the value of the Appearance property in the ValueLabel class.

Member Name | Description
ArrowMarker | Label with arrow marker.
CustomMarker | Label with custom marker. Marker must be painted in DrawMarker event.
Label | Only text label.
TriangleMarker | Label with triangle marker.


AboveIntervalCount Property - Histogram - C#

C#

int overflow =
(int)cds.Histogram.AboveIntervalCount;

string msg = "";

// this tests to see if there are any outlier values that fall after
the last interval.

if(overflow > 0)

{

msg = "Number > " + carea.AxisX.Max.ToString() + " = " + overflow.ToString();

}

c1Chart1.ChartLabels["overflow"].Text = msg;


AboveIntervalCount Property - Histogram - Delphi

Delphi

overflow :=
(Integer(cds.Histogram.AboveIntervalCount));

msg := '';

// this tests to see if there are any outlier values that fall after the last interval.

if (overflow > 0) then

msg := ((('Number > ' + carea.AxisX.Max.ToString) + ' = ') + overflow.ToString);

c1Chart1.ChartLabels['overflow'].Text := msg;

end;


AboveIntervalCount Property - Histogram - Visual Basic

Visual Basic

Dim overflow As Integer = _
CInt(cds.Histogram.AboveIntervalCount)

Dim msg As String = ""

' this tests to see if there are any outlier values that fall after the last interval.

If overflow > 0 Then

msg = "Number > " + carea.AxisX.Max.ToString() + " = " + overflow.ToString()

End If

c1Chart1.ChartLabels("overflow").Text = msg


AbsoluteExpiration Property (C1WebChart)

AbsoluteExpiration Property (C1WebChart)

Specifies the absolute expiration time when the image expires from the session, cache, or file object.

Syntax

[VB]

Public Property AbsoluteExpiration As DateTime

[C#]

public DateTime AbsoluteExpiration { get; set; }

[Delphi]

property AbsoluteExpiration: DateTime;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


AddAlarmZone - C#

C#

C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone();


AddAlarmZone - Delphi

Delphi

begin

C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone();

end;


AddAlarmZone - Visual Basic

Visual Basic

C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone()


Adding C1WebChart to the Visual Studio Toolbox

Before you can use C1WebChart, you must add it to the Visual Studio toolbox.

· Open Visual Studio and make sure the toolbox window is visible.

· Right-click on the toolbox and select “Customize Toolbox”.

· Select the .Net Components tab.

· Check the C1WebChart and C1WebChart3D controls. If you can’t find the controls on the list, click the Browse button and select the C1WebChart.dll and C1WebChart3D.dll files, which should be in the “c:\Program Files\ComponentOne Studio.NET\bin” directory.

These steps will add the components to the toolbox, where it will be available to all your web applications.

At this point, you should also decide whether you want C1WebChart to run from the GAC (Global Assembly Cache) or locally. If the installation program (or you) places a copy of the component in the GAC, that copy will be used by all applications that use the component. If the component is not installed in the GAC, Visual Studio will make a local copy of the required dlls into your application’s bin directory.

Using the GAC can save some disk space, but it also complicates deployment, because you will have to remember to install the components in the GAC on the server as well. In most cases, it is better to remove the component from the GAC and later use XCOPY deployment (the application folder will contain all the dlls needed to run it). To remove the component from the GAC, open the “system\assembly” folder and delete the C1WebChart, C1Chart and C1Chart3D from it. For more details on the GAC, see the .NET documentation. Also, keep in mind that C1Chart and C1Chart3D have a dependency upon C1.Common.dll, and require it to run, so be sure that it is copied during deployment as well.


Adding Charts to your Web Applications

Once the C1WebChart control has been added to the Visual Studio toolbox, you can drag it onto your web forms. When you add a C1WebChart control to the form, you will see a default chart with four data series and some random data.

Before you run the application, you need to configure it by performing these steps:

· Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”

· In the Solution Explorer, double-click the “Web.Config” file

· Place the cursor below <system.web> and select “Paste”. The Web.Config file should look like this:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<system.web>

<httpHandlers>

<add verb="*" path="c1chartimage.aspx"

type="C1.Web.C1WebChart.ImageHttpHandler,C1.Web.C1WebChart"/>

</httpHandlers>

…

This step allows C1WebChart to use its internal HttpHandler to transfer chart images directly to the client without any temporary files. It is not strictly required (you can use temporary files if you prefer), but for most applications this is the most efficient method.

If you are using C1WebChart3D, the process is identical, except that the <add> tag entry applies to C1WebChart3D and its internal HttpHandler. If you are using both C1WebChart and C1WebChart3D on the same form, then perform the operation given above for one of them, then again for the other, but this time selecting “HttpHandler string to clipboard”. This will place only the <add> tag for the control on the clipboard, which should be pasted into the web.config file inside the existing <httpHandlers>.

The result should look as follows:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<system.web>

<httpHandlers>

<add verb="*" path="c1chartimage.aspx"

type="C1.Web.C1WebChart.ImageHttpHandler,C1.Web.C1WebChart"/>

<add verb="*" path="c1chart3dimage.aspx"

type="C1.Web.C1WebChart3D.ImageHttpHandler,C1.Web.C1WebChart3D"/>

</httpHandlers>

…

At this point, you may run your application and see the chart on your web page.

Note that you only have to perform this step once per application. If you later add more charts to the form, or add new forms, there’s no need to modify the Web.Config file again.

This topic is discussed in detail in a later section (see “How C1WebChart Handles Images”)


Adding Data to the Chart

The final step is to add the data you want to show to your chart. This step requires you to write some code.

In most applications, the data will come from an ADO.NET DataSet, often with some transformations such as filtering, sorting, or summarizing. It is also possible to chart data from other sources, such as arrays or custom data structures. Regardless of where the data comes from, you can add it to the chart using methods provided by the ChartDataSeries class.

For example, the C# code below populates a chart using data from a DataTable:

private void Page_Load(object sender, EventArgs e)

{

// get dataset (from db or cache)

DataSet ds = GetDataSet();

// filter the data

DataView dv = new DataView(ds.Tables["Sales"]);

dv.RowFilter = "ProductSales >= 40000";

dv.Sort = "ProductSales";

// create an array of data points

PointF[] data = new PointF[dv.Count]

for (int i = 0; i < data.Length; i++)

{

float y = float.Parse(dv[i]["ProductSales"].ToString());

data[i] = new PointF(i, y);

}

// populate chart data points

ChartDataSeries series =

_c1webChart.ChartGroups[0].ChartData.SeriesList[0];

series.PointData.CopyDataIn(data);

}

For more details on how to add data to charts, see Entering and Modifying Data for the ChartDataArrays. Note: C1Chart and C1Chart3D are the WinForms control used by C1WebChart and C1WebChart3D, respectively, to generate the charts.


Adding the C1WebChart Components to the Toolbox

When you install C1WebChart, the following new components will appear in the Visual Studio’s toolbox customization dialog box:

· C1WebChart

· C1WebChart3D

After installing C1WebCommand on your computer, you need to add the C1WebCommand components to the Visual Studio Toolbox. To do this, follow these steps:

1. Open the Visual Studio IDE (Microsoft Development Environment.). Make sure the Toolbox is visible (select Toolbox in the View menu if necessary). Right-click the Toolbox to open its context menu.

If you want the C1WebChart for ASP.NET components to appear on their own tab in the Toolbox, Right-click in the gray Toolbox area and select Add Tab from the context menu and type in the tab name, for example, “C1WebChart”.

2. Right-click the C1WebChart tab or one of the existing tabs and select Customize Toolbox… from the context menu. The Customize Toolbox dialog box will open.

NOTE: In Visual Studio 2003 you would select the Add/Remove Items… option from the context menu.

3. In the Customize Toolbox dialog box, go to the .NET Framework Components tab. Sort the list by Namespace (click the Namespace column header).

4. Select the Browse button and find C1.Web.C1WebChart.dll and C1.Web.C1WebChart3D.dll and open it. All of the .Net components for C1WebChart will be highlighted in blue.

5. The C1WebChart components will appear under the C1WebChart tab. The picture below illustrates how the C1WebChart and C1WebChart3D components look when they are added to the form.


Adding User Interaction With ImageAreas

C1WebChart and C1WebChart3D allow you to associate tooltips and links with chart elements, so the chart responds to mouse events. This is done using an HTML image map, which is handled on the client.

The image map is defined by the ImageAreas property, a collection of chart elements with associated dynamic tooltips and HRefs. The tooltips allow you to specify the text that is displayed to the user when he moves the mouse over chart elements. The HRefs allow you to specify actions to be taken when the user clicks on a chart element.

You can edit the ImageAreas collection using the property window. Click the button to bring up an editor with a list of 11 chart elements, including ChartArea, PlotArea, Axes, ChartData, Legend, etc.

For example, if you select “ChartData” and set its Tooltip property to “{#YVAL:c}”, then the control will display the value for a point (or bar) when the user moves the mouse over the point. Note that you can use several keywords to refer to chart properties and create dynamic toolbars with no code. You can also specify the format to be used to displaying the information (the example formats the data as currency values).

This topic is discussed in detail in a later section (see “User Interaction with C1WebChart”).


Add Method (MapAreaCollection)

Add Method (MapAreaCollection)

Adds the specified MapArea to the collection.

Syntax

[VB]

Public Function Add(chartMap As MapArea) As Integer

[C#]

public int Add(MapArea chartMap);

[Delphi]

function Add(chartMap: MapArea): Integer;

Remarks

This property applies to C1WebChart.

Return Value

This method returns an integer indicating the index of the added MapArea.

See Also

MapAreaCollection Class


AddNewZone Method - C#

C#

AlarmZoneCollection AzColl = c1Chart1.ChartArea.PlotArea.AlarmZones;

AlarmZone Az = AzColl.AddNewZone();

Az.Name = "GradeA"

Az.Visible = true;


AddNewZone Method - Delphi

Delphi

var

AzColl: AlarmZoneCollection;

Az: AlarmZone;

begin

AzColl := c1Chart1.ChartArea.PlotArea.AlarmZones;

Az := AzColl.AddNewZone();

Az.Name := "Grade";

Az.Visible := true;

end;


AddNewZone Method - Visual Basic

Visual Basic

Dim AzColl As AlarmZoneCollection = C1Chart1.ChartArea.PlotArea.AlarmZones

Dim Az As AlarmZone = AzColl.AddNewZone()

Az.Name = "GradeA"

// You can either use the code above or below

.With C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone()

.Name = "GradeA"

.Visible = True

End With


AlarmZonesUsingCode1 - C#

C#

C1.Win.C1Chart.AlarmZone zone;

zone = C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone();

zone.BackColor = Color.Green;

zone.Name = "newzone";

etc. . . . ;


AlarmZonesUsingCode1 - Delphi

Delphi

var

zone: C1.Win.C1Chart.AlarmZone;

begin

zone := C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone();

zone.BackColor := Color.Green;

zone.Name := "newzone";

etc. . . . ;

end;


AlarmZonesUsingCode1 - Visual Basic

Visual Basic

With C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone()

.BackColor = Color.Green

.Name = "newzone"

etc. . . .

End With


AlarmZonesUsingCode2 - C#

C#

C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone();


AlarmZonesUsingCode2 - Delphi

Delphi

begin

C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone();

end;


AlarmZonesUsingCode2 - Visual Basic

Visual Basic

C1Chart1.ChartArea.PlotArea.AlarmZones.AddNewZone()


All Members

Properties

AbsoluteExpiration | Specifies the absolute expiration time when the image expires from the session, cache, or file object.
AssemblyFileVersionString | Gets the control’s assembly file version as a string.
AssemblyVersionString | Gets the control’s assembly version as a string.
BackColor | Gets or sets the control’s back color.
BackgroundImageUrl | Gets or sets the location of the background image through a URL.
ChartArea | Gets the internal C1Chart control ChartArea object.
ChartGroups | Gets the internal C1Chart control ChartGroups object.
ChartLabels | Gets the internal C1Chart control ChartLabels object.
ChartStyle | Gets the internal C1Chart control ChartStyle object.
DataSource | Gets or sets the data source object that is bound to the chart.
Footer | Gets the internal C1Chart control footer object.
ForeColor | Gets or sets the control's fore color.
Header | Gets the internal C1Chart control header object.
ImageAreas | Gets the MapAreaCollection object used to generate client side image maps.
ImageFormat | Gets or sets the Image format to be used for the client side image.
ImageIdGeneration | Gets or sets the level of uniqueness of the ID transfer object.
ImageQuality | Specifies the image quality created when the ImageFormat is set to jpeg
ImageRenderMethod | Indicates the method by which the HTML image tag source URL is rendered
ImageTransferMethod | Indicates the method by which image data is transferred to the source page.
ImageUri | Specifies a path for various render methods.
Legend | Gets the internal C1Chart control Legend object.
SlidingExpiration | Gets or sets the interval between the time the image was last accessed and the time when the image expires from the session, cache, or file object.
UseAntiAlias | Gets or sets whether the chart is rendered using anti-aliasing methods.

Methods

Dispose | Prepares the control for garbage collection.
ChartRegionFromCoord | Returns the enumerated value indicating the topmost displayed region at the specified coordinates.
LoadChartFromFile | Loads the chart properties and data from the specified file.
LoadChartFromString | Loads the chart properties and data from the specified string.
Reset | Clears the internal C1Chart of all data and settings.
SaveChartToFile | Saves the internal C1Chart properties and data to the specified file.
SaveChartToString | Saves the internal C1Chart properties and data to the specified string.

Events

Click | Occurs when the chart image is clicked.
DrawDataSeries | Occurs before each series is drawn.
DrawLegendEntry | Fires when the chart legend is about to be drawn.
PaintPlotArea | Occurs when the plot area of the chart is drawn.


Appearance Property - ValueLabel - C#

C#

vl.Appearance = ValueLabelAppearanceEnum.ArrowMarker;


Appearance Property - ValueLabel - Delphi

Delphi

vl.Appearance := ValueLabelAppearanceEnum.ArrowMarker;


Appearance Property - ValueLabel - Visual Basic

Visual Basic

vl.Appearance = ValueLabelAppearanceEnum.ArrowMarker


AreaShapeEnum Enumeration

AreaShapeEnum Enumeration

Syntax

[VB]

Public Enum AreaShapeEnum

[C#]

public enum AreaShapeEnum

[Delphi]

type AreaShapeEnum = (Circle, Polygon, Rectangle)

Remarks

This enumeration applies to C1WebChart.

Use the members of this enumeration to set the value of the Shape property in the MapArea class.


ASP Page-based Rendering Tutorials

The ASPPage based tutorials show how you can replace the built-in HttpHandler with custom ASP pages, thereby gaining extra control over the chart rendering mechanism. This method allows you to customize, for example, the behavior of the client and server caches, and IIS logging.

Both tutorials use the following ASP page to replace the HttpHandler mechanism, and differ only in the way they store the chart data. The code below can handle both Session and Cache transfers. It performs the exact same functions as the built-in HttpHandler, and should be useful as a starting point for your custom pages.

· Visual Basic

· C#

· Delphi


ASP Page-based Rendering Tutorials - C#

C#

using System;

using System.Web;

using System.Web.SessionState;

namespace AspPageSample

{

public class StreamResponse : System.Web.UI.Page

{

private void Page_Load(object sender,

System.EventArgs e)

{

// determine how the image is

// transferred to this page

string ses = Request["SessionID"];

// non null if session transfer

string cac = Request["CacheID"];

// non null if cache transfer

string del = Request["Delete"];

// non null if delete request

bool doDelete = false;

// check the delete request status

if(del != null)

{

del = del.ToLower();

doDelete = (del == "t" || del == "true");

}

byte [] image = null;

string imgtype = string.Empty;

string img = string.Empty;

string hsh = string.Empty;

if (ses != null)

{

// get image info from Session object

img = ses + "_ImageBytes";

hsh = ses + "_Hash";

image = (byte[])Session[img];

imgtype = (string)Session[hsh];

if(doDelete)

{

Session.Remove(img);

Session.Remove(hsh);

}

}

else if (cac != null)

{

// get image info from Application cache

img = cac + "_ImageBytes";

hsh = cac + "_Hash";

image = (byte[])Cache[img];

imgtype = (string)Cache[hsh];

if (doDelete)

{

Cache.Remove(img);

Cache.Remove(hsh);

}

}

// return image to the client

if (image != null && imgtype != null)

{

int iext = imgtype.LastIndexOf('.')+1;

imgtype = "image/" +

imgtype.Substring(iext);

Response.Clear();

Response.Cache.SetExpires(DateTime.MinValue);

// clear client cache

Response.ContentType = imgtype;

Response.BinaryWrite(image);

Response.Flush();

}

}

}

}


ASP Page-based Rendering Tutorials - Delphi

Delphi

procedure StreamResponse.Page_Load(sender: System.Object; e: System.EventArgs);

var

hsh: string;

img: string;

imgtype: string;

image: array of System.Byte;

doDelete: Boolean;

del: string;

cac: string;

ses: string;

begin

ses := Request['SessionID'];

cac := Request['CacheID'];

del := Request['Delete'];

doDelete := False;

if (del <> nil) then

begin

del := del.ToLower;

doDelete := ((del = 't') or (del = 'true'));

end;

image := nil;

imgtype := Empty;

img := Empty;

hsh := Empty;

if (ses <> nil) then

begin

img := (ses + '_ImageBytes');

hsh := (ses + '_Hash');

image := (array of System.Byte(Session[img]));

imgtype := (string(Session[hsh]));

if doDelete then

begin

Session.Remove(img);

Session.Remove(hsh);

end;

end

else

if (cac <> nil) then

begin

img := (cac + '_ImageBytes');

hsh := (cac + '_Hash');

image := (array of System.Byte(Cache[img]));

imgtype := (string(Cache[hsh]));

if doDelete then

begin

Cache.Remove(img);

Cache.Remove(hsh);

end;

end;

if ((image <> nil) and (imgtype <> nil)) then

begin

imgtype := ('image/' + imgtype.Substring((imgtype.LastIndexOf('.') + 1)));

Response.Clear;

Response.Cache.SetExpires(DateTime.MinValue);

Response.ContentType := imgtype;

Response.BinaryWrite(image);

Response.Flush;

end;

end;


ASP Page-based Rendering Tutorials - Visual Basic

Visual Basic

Imports System

Imports System.Web

Imports System.Web.SessionState

Namespace AspPageSample

_

Public Class StreamResponse

Inherits System.Web.UI.Page

Private Sub Page_Load(sender As Object, e As System.EventArgs)

' Determine how the image is transferred to this page

Dim ses As String = Request("SessionID") ' non null if session transfer

Dim cac As String = Request("CacheID") ' non null if cache transfer

Dim del As String = Request("Delete") ' non null if delete request

Dim doDelete As Boolean = False

' Check the delete request status

If Not (del Is Nothing) Then

del = del.ToLower()

doDelete = del = "t" Or del = "true"

End If

Dim image As Byte() = Nothing

Dim imgtype As String = String.Empty

Dim img As String = String.Empty

Dim hsh As String = String.Empty

If Not (ses Is Nothing) Then

' extract the image info from the session object

img = ses + "_ImageBytes"

hsh = ses + "_Hash"

image = CType(Session(img), Byte())

imgtype = CStr(Session(hsh))

If doDelete Then

Session.Remove(img)

Session.Remove(hsh)

End If

Else

If Not (cac Is Nothing) Then

' extract the image info from the Application cache

img = cac + "_ImageBytes"

hsh = cac + "_Hash"

image = CType(Cache(img), Byte())

imgtype = CStr(Cache(hsh))

If doDelete Then

Cache.Remove(img)

Cache.Remove(hsh)

End If

End If

End If

If Not (image Is Nothing) And Not (imgtype Is Nothing) Then

' return the binary image to the client

imgtype = "image/" + imgtype.Substring((imgtype.LastIndexOf("."c) + 1))

Response.Clear()

Response.Cache.SetExpires(DateTime.MinValue) ' clear client cache

Response.ContentType = imgtype

Response.BinaryWrite(image)

Response.Flush()

End If

End Sub 'Page_Load

End Class 'StreamResponse

End Namespace 'AspPageSample


AssemblyFileVersionString Property (C1WebChart)

AssemblyFileVersionString Property (C1WebChart)

Gets the control’s AssemblyFileVersion as a string. The AssemblyFileVersion is also viewable from the properties dialog of the control assembly dll.

Syntax

[VB]

Public ReadOnly Property AssemblyFileVersionString As String

[C#]

public string AssemblyFileVersionString { get; }

[Delphi]

property AssemblyFileVersionString: string;

Remarks

This property applies to C1WebChart.

The AssemblyFileVersion is different from the AssemblyVersion. The AssemblyFileVersion is viewable from the properties dialog of the control assembly dll. The AssemblyVersion is also listed in the properties dialog, but only in the “other version information” section. When viewing the Global Assembly Cache (GAC) in Windows Explorer, the AssemblyVersion is shown as a standard column.

The AssemblyFileVersion will always change with each separate release of the Chart control, including internal changes. The AssemblyVersion will only change when the object model has been changed.

See Also

C1WebChart Class


AssemblyVersionString Property (C1WebChart)

AssemblyVersionString Property (C1WebChart)

Gets the control’s AssemblyVersion as a string. The AssemblyVersion is also viewable from the properties dialog of the control assembly dll, but only in the “other version information” section.

Syntax

[VB]

Public ReadOnly Property AssemblyVersionString As String

[C#]

public String AssemblyVersionString { get; }

[Delphi]

property AssemblyVersionString: string;

Remarks

This property applies to C1WebChart.

The AssemblyFileVersion is different from the AssemblyVersion. The AssemblyFileVersion is viewable from the properties dialog of the control assembly dll. The AssemblyVersion is also listed in the properties dialog, but only in the “other version information” section. When viewing the Global Assembly Cache (GAC) in Windows Explorer, the AssemblyVersion is shown as a standard column.

The AssemblyFileVersion will always change with each separate release of the Chart control, including internal changes. The AssemblyVersion will only change when the object model has been changed.

See Also

C1WebChart Class


Attributes Property (MapArea)

Attributes Property (MapArea)

Specifies a set of attributes to be added to the <AREA> tag.

Syntax

[VB]

Public Property Attributes As String

[C#]

public string Attributes { get; set; }

[Delphi]

property Attributes: string;

Remarks

This property applies to C1WebChart.

Each MapArea can have additional attributes set as appropriate for <AREA> tags. For more information on <AREA> tags see the Microsoft documentation.

Setting this property causes the specified string to appear as a set of attributes for the MapArea. Note that the attribute value is added to the <AREA> tag as a literal string, so any encoding necessary must be performed to the property value.

See Also

MapArea Class


AxisAppearanceFont - C#

C#

Font f = new Font("Arial", 8, FontStyle.Bold);

C1Chart1.ChartArea.AxisX.Font = f;


AxisAppearanceFont - Delphi

Delphi

var

f: Font;

begin

f := new Font('Arial', 8, FontStyle.Bold);

C1Chart1.ChartArea.AxisX.Font := f;

end;


AxisAppearanceFont - Visual Basic

Visual Basic

Dim f As Font = New Font("Arial", 8, FontStyle.Bold)

C1Chart1.ChartArea.AxisX.Font = f


BackColor Property (C1WebChart)

BackColor Property (C1WebChart)

Gets or sets the control back color.

Syntax

[VB]

Public Property BackColor As Color

[C#]

public Color BackColor { get; set; }

[Delphi]

property BackColor: Color;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


BackgroundImageUrl Property (C1WebChart)

BackgroundImageUrl Property (C1WebChart)

Gets or sets the location of the background image through a URL.

Syntax

[VB]

Public Property BackgroundImageUrl As String

[C#]

public string BackgroundImageUrl { get; set; }

[Delphi]

property BackgroundImageUrl: String;

Remarks

At present, only relative URLs are supported. Absolute URLs are currently not supported. The position of the image can be adjusted using the ChartStyle.ImageAlignment property.

See Also

C1WebChart Class


Bar Charts with two Y Axes - C#

C#

// label Y-axis and show legend

_c1c.Legend.Visible = true;

_c1c.ChartArea.AxisY.Text = "Prices (in US$)";

_c1c.ChartArea.AxisY2.Text = "Unit Count";

// create two series for units in stock and reorder level

// (these are plotted against the secondary Y axis)

dscoll = _c1c.ChartGroups[1].ChartData.SeriesList;

dscoll.Clear();

// units in stock

series = dscoll.AddNewSeries();

series.Label = "Units In Stock";

series.SymbolStyle.Color = Color.Green;

series.LineStyle.Pattern = LinePatternEnum.None;

series.PointData.Length = data.Count;

for (int i = 0; i < data.Count; i++)

{

series.X[i] = i;

series.Y[i] = data[i]["UnitsInStock"];

}

// reorder level

series = dscoll.AddNewSeries();

series.Label = "Reorder Level";

series.SymbolStyle.Color = Color.Red;

series.LineStyle.Pattern = LinePatternEnum.None;

series.PointData.Length = data.Count;

for (int i = 0; i < data.Count; i++)

{

series.X[i] = i;

series.Y[i] = data[i]["ReorderLevel"];

}

// show gridlines for secondary Y-axis

_c1c.ChartArea.AxisY2.GridMajor.Visible = true;


Bar Charts with two Y Axes - Delphi

Delphi

begin

// label Y-axis and show legend

C1Chart1.Legend.Visible := true;

C1Chart1.ChartArea.AxisY.Text := 'Prices (in US$)';

C1Chart1.ChartArea.AxisY2.Text := 'Unit Count';

// create two series for units in stock and reorder level

// (these are plotted against the secondary Y axis)

dscoll := C1Chart1.ChartGroups[1].ChartData.SeriesList;

dscoll.Clear();

// units in stock

series := dscoll.AddNewSeries();

series.Label := 'Units In Stock';

series.SymbolStyle.Color = Color.Green;

series.LineStyle.Pattern = LinePatternEnum.None;

series.PointData.Length = data.Count;

for i := 0 to data.Count – 1 do

begin

series.X[i] := i;

series.Y[i] := data[i]['UnitsInStock'];

end;

// reorder level

series := dscoll.AddNewSeries();

series.Label := 'Reorder Level';

series.SymbolStyle.Color := Color.Red;

series.LineStyle.Pattern := LinePatternEnum.None;

series.PointData.Length = data.Count;

for i := 0 to data.Count – 1 do

begin

series.X[i] := i;

series.Y[i] := data[i]['ReorderLevel'];

end;

// show gridlines for secondary Y-axis

C1Chart1.ChartArea.AxisY2.GridMajor.Visible := true;

end;


Bar Charts with two Y Axes - Visual Basic

Visual Basic

' label Y-axis and show legend

C1Chart1.Legend.Visible = True

C1Chart1.ChartArea.AxisY.Text = "Prices (in US$)"

C1Chart1.ChartArea.AxisY2.Text = "Unit Count"

' create two series for units in stock and reorder level

' (these are plotted against the secondary Y axis)

dscoll = C1Chart1.ChartGroups(1).ChartData.SeriesList

dscoll.Clear()

' units in stock

series = dscoll.AddNewSeries()

series.Label = "Units In Stock"

series.SymbolStyle.Color = Color.Green

series.LineStyle.Pattern = LinePatternEnum.None

series.PointData.Length = data.Count

For i = 0 To data.Count – 1

series.X(i) = I

series.Y(i) = data(i)("UnitsInStock")

Next I

' reorder level

series = dscoll.AddNewSeries()

series.Label = "Reorder Level"

series.SymbolStyle.Color = Color.Red

series.LineStyle.Pattern = LinePatternEnum.None

series.PointData.Length = data.Count

For i = 0 To data.Count – 1

series.X(i) = I

series.Y(i) = data(i)("ReorderLevel")

Next I

' show gridlines for secondary Y-axis

C1Chart1.ChartArea.AxisY2.GridMajor.Visible = True


ByDataCoord - C#

C#

C1.Win.C1Chart.Label lab = C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod = AttachMethodEnum.DataCoordinate;

lab.AttachMethodData.X = 1.1;

lab.AttachMethodData.Y = 15.8;


ByDataCoord - Delphi

Delphi

var

lab: C1.Win.C1Chart1.Label;

begin

lab := C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod := AttachMethodEnum.DataCoordinate;

lab.AttachMethodData.X := 1.1;

lab.AttachMethodData.Y := 15.8;

end;


ByDataCoord - Visual Basic

Visual Basic

With C1Chart1.ChartLabels.LabelsCollection(0)

.AttachMethod = AttachMethodEnum.DataCoordinate

.AttachMethodData.X = 1.1

.AttachMethodData.Y = 15.8

End With


ByDataPoint - C#

C#

C1.Win.C1Chart.Label lab = C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod = AttachMethodEnum.DataIndex;

lab.AttachMethodData.GroupIndex = 0;

lab.AttachMethodData.SeriesIndex = 1;

lab.AttachMethodData.PointIndex = 2;


ByDataPoint - Delphi

Delphi

var

lab: C1.Win.C1Chart.Label

begin

lab := C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod := AttachMethodEnum.DataIndex;

lab.AttachMethodData.GroupIndex := 0;

lab.AttachMethodData.SeriesIndex := 1;

lab.AttachMethodData.PointIndex := 2;

end;


ByDataPoint - Visual Basic

Visual Basic

With C1Chart1.ChartLabels.LabelsCollection(0)

.AttachMethod = AttachMethodEnum.DataIndex

.AttachMethodData.GroupIndex = 0

.AttachMethodData.SeriesIndex = 1

.AttachMethodData.PointIndex = 2

End With


ByPixelCoord - C#

C#

C1.Win.C1Chart.Label lab = C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod = AttachMethodEnum.Coordinate;

lab.AttachMethodData.X = 250;

lab.AttachMethodData.Y = 250;


ByPixelCoord - Delphi

Delphi

var

lab: C1.Win.C1Chart1.Label;

begin

lab := C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod := AttachMethodEnum.Coordinate;

lab.AttachMethodData.X := 250;

lab.AttachMethodData.Y := 250;

end;


ByPixelCoord - Visual Basic

Visual Basic

With C1Chart1.ChartLabels.LabelsCollection(0)

.AttachMethod = AttachMethodEnum.Coordinate

.AttachMethodData.X = 250

.AttachMethodData.Y = 250

End With


C1WebChart Class

Syntax

C1.Web.C1WebChart

All Members

Properties

Methods

Events


C1WebChart Enumeration Reference

AreaShapeEnum Enumeration

ImageIdGenerationEnum Enumeration

ImageRenderMethodEnum Enumeration

ImageTransferMethodEnum Enumeration


C1WebChart Reference

This reference section pertains only to ComponentOne WebChart for ASP.NET. All properties apply to C1WebChart.

C1WebChart Class

MapArea Class

MapAreaCollection Class

C1WebChart Enumeration Reference


C1WebChart Samples

Please be advised that this ComponentOne software title is accompanied by various sample projects and/or demos, which may or not make use of other ComponentOne development tools. While the sample projects and/or demos included with the software are used to demonstrate and highlight the product’s features, and how the control may be integrated with the rest of the ComponentOne product line, some of the controls used in the demo/sample project may not be included with the purchase of certain individual products.

The ComponentOne Samples are also available at http://helpcentral.componentone.com/ProductResources.aspx.


C1WebChart Task-Based Help

The task-based help assumes that you are familiar with programming in ASP.NET, have a basic knowledge of charts, and know how to use controls in general. By following the steps outlined in the help, you will be able to create projects demonstrating a variety of C1WebChart features, and get a good sense of what the C1WebChart can do.

Using ASP.NET

File-based Rendering Tutorials

HTTPHandler-based Rendering Tutorials

ASP Page-based Rendering Tutorials


Chart 2D MSHelp Annoformat property - NumberFormatInfo class

AnnoFormat Property

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

NumberFormatInfo class

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for NumberFormatInfo class in Microsoft's Help search box.


Chart 2D MSHelp AnnoFormatString - Custom DateTime Format Strings

AnnoFormatString Property

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

Custom DateTime format strings

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for date and time format strings in Microsoft's Help search box.


Chart 2D MSHelp AnnoFormatString -Custom Numeric Format Strings

AnnoFormatString Property

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

Custom numeric format strings

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for numeric format strings in Microsoft's Help search box.


Chart 2D MSHelp DateTimeFormatInfo - DateTimeFormatInfo class

AnnoFormat Property

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

DateTimeFormatInfo class

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for DateTimeFormatInfo class in Microsoft's Help search box.


Chart 2D MSHelp FormatEnum - Date and Time Format Strings

FormatEnum

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

date and time format strings

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for date and time format strings in Microsoft's Help search box.


Chart 2D MSHelp FormatEnum - Standard Numeric Format Strings

FormatEnum

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

standard numeric format strings

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for standard numeric format strings in Microsoft's Help search box.


Chart 2D MSHelp ImageFormat - Saving Chart Images

ImageFormat class

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

ImageFormat class

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for ImageFormat class in Microsoft's Help search box.


Chart 2D MSHelp TBH Tutorial 2 IHttpHandler - IHttpHandler Interface

IhttpHandler Interface

NOTE: If you have Visual Studio .NET 2002 you can click here to access this link:

IHttpHandler Help

If you have Visual Studio .NET 2003 Or higher you can access this link by searching for IhttpHandler Interface in Microsoft's Help search box.


ChartArea Property (C1WebChart)

ChartArea Property (C1WebChart)

Gets the internal C1Chart control ChartArea object.

Syntax

[VB]

Public ReadOnly Property ChartArea() As C1.Win.C1Chart.Area

[C#]

public C1.Win.C1Chart.Area ChartArea { get; }

[Delphi]

property ChartArea: C1.Win.C1Chart.Area;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


ChartDataObject - C#

C#

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData;


ChartDataObject - Delphi

Delphi

begin

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData;

end;


ChartDataObject - Visual Basic

Visual Basic

C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartData


ChartDataSeriesObject - C#

C#

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];


ChartDataSeriesObject - Delphi

Delphi

begin

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

end;


ChartDataSeriesObject - Visual Basic

Visual Basic

C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartData.SeriesList(0)


ChartGroupObject1 - C#

C#

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartType = Chart2DTypeEnum.XYPlot;


ChartGroupObject1 - Delphi

Delphi

begin

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartType:=Chart2DTypeEnum.XYPlot;

end;


ChartGroupObject1 - Visual Basic

Visual Basic

C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartType = Chart2DTypeEnum.XYPlot


ChartGroupObject2 - C#

C#

C1Chart1.ChartGroups.Group1.ChartType = Chart2DTypeEnum.XYPlot;


ChartGroupObject2 - Delphi

Delphi

begin

C1Chart1.ChartGroups.Group1.ChartType := Chart2DTypeEnum.XYPlot;

end;


ChartGroupObject2 - Visual Basic

Visual Basic

C1Chart1.ChartGroups.Group1.ChartType = Chart2DTypeEnum.XYPlot


ChartGroupObject3 - C#

C#

ChartGroup cg;

foreach ( cg In C1Chart1.ChartGroups.ChartGroupsCollection )

cg.ChartType = Chart2DTypeEnum.XYPlot;


ChartGroupObject3 - Delphi

Delphi

var

cgs: ChartGroups;

i: Integer;

begin

cgs := C1Chart1.ChartGroups.ChartGroupsCollection;

for i := 0 to cvs.Count – 1 do

begin

cgs[i].ChartType := Chart2DTypeEnum.XYPlot;

end;

end;


ChartGroupObject3 - Visual Basic

Visual Basic

Dim cg As ChartGroup

For Each cg In C1Chart1.ChartGroups.ChartGroupsCollection

cg.ChartType = Chart2DTypeEnum.XYPlot

Next


ChartGroups Property (C1WebChart)

ChartGroups Property (C1WebChart)

Gets the internal C1Chart control ChartGroups object.

Syntax

[VB]

Public ReadOnly Property ChartGroups As C1.Win.C1Chart.ChartGroups

[C#]

public C1.Win.C1Chart.ChartGroups ChartGroups { get; }

[Delphi]

property ChartGroups: C1.Win.C1Chart.ChartGroups;

Remarks

This property applies to C1WebChart.

Each ChartGroup contains information related to data values and related appearance.

See Also

C1WebChart Class


ChartGroupsUsingCode1 - C#

C#

C1Chart.ChartGroups.ChartGroupsCollection[0].ChartType = Chart2DTypeEnum.XYPlot;


ChartGroupsUsingCode1 - Delphi

Delphi

begin

C1Chart.ChartGroups.ChartGroupsCollection(0).ChartType :=
Chart2DTypeEnum.XYPlot;

end;


ChartGroupsUsingCode1 - Visual Basic

Visual Basic

C1Chart.ChartGroups.ChartGroupsCollection(0).ChartType = Chart2DTypeEnum.XYPlot


ChartGroupsUsingCode2 - C#

C#

C1Chart.ChartGroups.Group1.ChartType == Chart2DTypeEnum.XYPlot;


ChartGroupsUsingCode2 - Delphi

Delphi

begin

C1Chart.ChartGroups.Group1.ChartType = Chart2DTypeEnum.XYPlot;

end;


ChartGroupsUsingCode2 - Visual Basic

Visual Basic

C1Chart.ChartGroups.Group1.ChartType = Chart2DTypeEnum.XYPlot


ChartLabels Property (C1WebChart)

ChartLabels Property (C1WebChart)

Gets the internal C1Chart control Labels object.

Syntax

[VB]

Public ReadOnly Property ChartLabels As C1.Win.C1Chart.ChartLabels

[C#]

public C1.Win.C1Chart.ChartLabels ChartLabels { get; }

[Delphi]

property ChartLabels: C1.Win.C1Chart.ChartLabels;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


ChartLabelsUsingCode1 - C#

C#

C1.Win.C1Chart.Label lab = C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

C1.Win.C1Chart.AttachMethodData amd = lab.AttachMethodData;

lab.Text = "Text of the label";

lab.Compass = LabelCompassEnum.East;

lab.AttachMethod = AttachMethodEnum.DataIndex;

lab.Compass = LabelCompassEnum.East;

lab.Offset = 10;

amd.GroupIndex = 0;

amd.SeriesIndex = 1;

amd.PointIndex = 2;


ChartLabelsUsingCode1 - Delphi

Delphi

var

lab: C1.Win.C1Chart.Label;

amd: C1.Win.C1Chart.AttachMethodData;

begin

lab := C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

amd := lab.AttachMethodData;

lab.Text := 'Text of the label';

lab.Compass := LabelCompassEnum.East;

lab.AttachMethod := AttachMethodEnum.DataIndex;

lab.Compass := LabelCompassEnum.East;

lab.Offset := 10;

amd.GroupIndex := 0;

amd.SeriesIndex := 1;

amd.PointIndex := 2;

end;


ChartLabelsUsingCode1 - Visual Basic

Visual Basic

With C1Chart1.ChartLabels.LabelsCollection.AddNewLabel()

.Text = "Text of the label"

.Compass = LabelCompassEnum.East

.AttachMethod = AttachMethodEnum.DataIndex

.Compass = LabelCompassEnum.East

.Offset = 10

With .AttachMethodData

.GroupIndex = 0

.SeriesIndex = 1

.PointIndex = 2

End With

End With


ChartLabelsUsingCode2 - C#

C#

C1.Win.C1Chart.Label lab;

lab = C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

lab.Text = "Text of the label";

etc.;


ChartLabelsUsingCode2 - Delphi

Delphi

var

lab: C1.Win.C1Chart.Label;

begin

lab := C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

lab.Text := 'Text of the label';

etc.;

end;


ChartLabelsUsingCode2 - Visual Basic

Visual Basic

Dim lab As C1.Win.C1Chart.Label

lab = C1Chart1.ChartLabels.LabelsCollection.AddNewLabel()

lab.Text = "Text of the label"

etc.


ChartLabelsUsingCode3 - C#

C#

// get first label in collection

lab = C1Chart1.ChartLabels.LabelsCollection[0];

lab.Text = "new text for the first label";


ChartLabelsUsingCode3 - Delphi

Delphi

begin

// get first label in collection

lab := C1Chart1.ChartLabels.LabelsCollection[0];

lab.Text := 'new text for the first label';

end;


ChartLabelsUsingCode3 - Visual Basic

Visual Basic

' get first label in collection

lab = C1Chart1.ChartLabels.LabelsCollection(0)

lab.Text = "New text for the first label"


ChartLabelsUsingCode4 - C#

C#

lab = C1Chart1.ChartLabels[0] // get first label in collection;

lab.Text = "New text for the first label";


ChartLabelsUsingCode4 - Delphi

Delphi

begin

// get first label in collection;

lab := C1Chart1.ChartLabels[0];

end;


ChartLabelsUsingCode4 - Visual Basic

Visual Basic

lab = C1Chart1.ChartLabels(0) ' get first label in collection

lab.Text = "New text for the first label"


ChartRegionFromCoord Method (C1WebChart)

ChartRegionFromCoord Method (C1WebChart)

Returns the enumerated value indicating the topmost displayed region at the specified coordinates.

Syntax

[VB]

Public Function ChartRegionFromCoord (X As Integer, Y As Integer) As ChartRegionEnum

[C#]

public ChartRegionEnum ChartRegionFromCoord(int X, int Y);

[Delphi]

procedure ChartRegionFromCoord(X: Integer; Y: Integer) : ChartRegionEnum;

See Also

C1WebChart Class


ChartStyle Property (C1WebChart)

ChartStyle Property (C1WebChart)

Gets the internal C1Chart control ChartStyle object.

Syntax

[VB]

Public ReadOnly Property ChartStyle() As C1.Win.C1Chart.Style

[C#]

public C1.Win.C1Chart.Style: ChartStyle { get; }

[Delphi]

property ChartStyle: C1.Win.C1Chart.Style;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


Click Event (C1WebChart)

Click Event (C1WebChart)

Fires when the chart image is clicked.

Syntax

[VB]

Public Event Click As ImageClickEventHandler

[C#]

public event ImageClickEventHandler Click;

[Delphi]

property Click: ImageClickEventHandler;

Event Data

The event handler receives an argument of type ImageClickEventArgs containing coordinate data of the mouse click relative to the chart image. The sender object of the event is the instance of the C1WebChart.

This property applies to C1WebChart.

Remarks

When an event hander is attached, the chart is rendered as an input tag and image map generation is suppressed.

See Also

C1WebChart Class


C#Note - C#

C#

float[] xpo;

xpo = (float[])C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData
.SeriesList[0].X.CopyDataOut(typeof(float[]));


C#Note - Delphi

Delphi

var

xpo: array of Single;

begin

xpo = (array of Single)(C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData
.SeriesList[0].X.CopyDataOut(TypeOf(array of Single)));

end;


C#Note - Visual Basic

Visual Basic

Dim cds As ChartDataSeries

Dim o As Object

Dim xpo() As Single

Cds = C1Chart1.ChartGroups.ChartGroupCollection(0).ChartData.SeriesList(0)

O = cds.X.CopyDataOut(GetType(Single())

Xpo = Ctype(o, Single())


Configuring the Chart

Once the chart is on the page, the next step is to use the built-in Wizard to customize its appearance. To do so, right-click the chart and select “Chart Wizard”. This will bring up the wizard so you can select the chart type you want, the number of series and their appearance, the axes, titles, and so on.

You can also use the property window to set properties such as the chart’s BackColor and ChartStyle.

The Wizard and property window are powerful enough to customize virtually every aspect of the chart without writing any code at all. You can even use the Wizard to populate the chart with data, but that is rarely practical except to play with ranges and number of points and get a feel for the final look of the data.

After the chart is configured, you can save it to a file. This is useful so you can reuse this layout later in other charts. To do so, right-click the chart and select “Save Chart”. To re-use the layout later, right-click another chart and select “Load Chart”. You can define as many of these chart layouts as you want, and use them as templates to achieve a consistent look for all charts throughout your applications. You can even load chart layouts at run time using the LoadChartFromFile method.

For more details on how to configure charts and use the Chart Wizard, see Using the 2DChart, Note: C1Chart and C1Chart3D are the WinForms control used by C1WebChart and C1WebChart3D, respectively, to generate the charts.


ControllingTransformation - C#

C#

private void c1Chart1_Transform(object sender,C1.Win.C1Chart.TransformEventArgs e)

{

if( e.MinX < -10 || e.MaxX > 10)

e.Cancel = true;

}


ControllingTransformation - Delphi

Delphi

procedure Class1.c1Chart1_Transform(sender: System.Object;

e: C1.Win.C1Chart.TransformEventArgs);

begin

if ((e.MinX < -10) or (e.MaxX > 10)) then

e.Cancel := True;

end;


ControllingTransformation - Visual Basic

Visual Basic

Private Sub C1Chart1_Transform(ByVal sender As Object, ByVal e As _
C1.Win.C1Chart.TransformEventArgs) Handles C1Chart1.Transform

If e.MinX < -10 Or e.MaxX > 10 Then

e.Cancel = True

End If

End Sub


ConvertFromCoordValues1 - C#

C#

double CoordXOutput = 0;

double CoordYOutput = 0;

C1Chart1.ChartGroups.Group0.CoordToDataCoord(e.X, e.Y, CoordXOutput,
CoordYOutput);

C1Chart1.ChartGroups.Group0.CoordToDataCoord(e.X, e.Y, ref CoordXOutput, ref
CoordYOutput);

ConsoleDebug.Writeline("X Data Coordinate: " + CoordXOutput.ToString());

ConsoleDebug.Writeline("Y Data Coordinate: " + CoordYOutput.ToString());


ConvertFromCoordValues1 - Delphi

Delphi

var

CoordYOutput: System.Double;

CoordXOutput: System.Double;

begin

C1Chart1.ChartGroups.Group0.

CoordToDataCoord(e.X, e.Y, ref CoordXOutput, ref CoordYOutput);

ConsoleDebug.Writeline(('X Data Coordinate: ' + CoordXOutput.ToString());

ConsoleDebug.Writeline(('Y Data Coordinate: ' + CoordYOutput.ToString());

end;


ConvertFromCoordValues1 - Visual Basic

Visual Basic

Dim CoordXOutput As Double

Dim CoordYOutput As Double

C1Chart1.ChartGroups.Group0.CoordToDataCoord(e.X, e.Y, CoordXOutput, CoordYOutput)

Debug.WriteLine("X Data Coordinate: " & CoordXOutput.ToString())

Debug.WriteLine("Y Data Coordinate: " & CoordYOutput.ToString())


ConvertFromCoordValues2 - C#

C#

int SeriesOutput = 0;

int PointOutput = 0;

int DistanceOutput = 0;

C1Chart1.ChartGroups.Group0.CoordToDataIndex(e.X, e.Y,

CoordinateFocusEnum.XandYCoord,

ref SeriesOutput, ref PointOutput, ref DistanceOutput);

ConsoleDebug.Writeline("Series Index: " + SeriesOutput.ToString());

ConsoleDebug.Writeline("Point Index: " + PointOutput.ToString());

ConsoleDebug.Writeline("Distance From Point: " + DistanceOutput.ToString());


ConvertFromCoordValues2 - Delphi

Delphi

var

DistanceOutput: Integer;

PointOutput: Integer;

SeriesOutput: Integer;

begin

C1Chart1.ChartGroups.Group0.CoordToDataIndex(e.X, e.Y,

CoordinateFocusEnum.XandYCoord, SeriesOutput, PointOutput, DistanceOutput);

ConsoleDebug.Writeline(('Series Index: ' + SeriesOutput.ToString());

ConsoleDebug.Writeline(('Point Index: ' + PointOutput.ToString());

ConsoleDebug.Writeline(('Distance From Point: ' + DistanceOutput.ToString());

end;


ConvertFromCoordValues2 - Visual Basic

Visual Basic

Dim SeriesOutput As Integer

Dim PointOutput As Integer

Dim DistanceOutput As Integer

C1Chart1.ChartGroups.Group0._

CoordToDataIndex(e.X, e.Y, CoordinateFocusEnum.XandYCoord,_
ref SeriesOutput, ref PointOutput, ref DistanceOutput)

Debug.WriteLine("Series Index: " & SeriesOutput.ToString())

Debug.WriteLine("Point Index: " & PointOutput.ToString())

Debug.WriteLine("Distance From Point: " & DistanceOutput.ToString())


ConvertToCoordValues1 - C#

C#

int CoordX=0, CoordY=0;

C1Chart1.ChartGroups.Group0.

DataIndexToCoord(ChartSeries, ChartPoint, ref CoordX, ref CoordY);

Debug.Writeline("X Chart Coordinate: " + CoordX.ToString());

Debug.Writeline("Y Chart Coordinate: " + CoordY.ToString());


ConvertToCoordValues1 - Delphi

Delphi

var

CoordX, CoordY: Integer;

begin

C1Chart1.ChartGroups.Group0.

DataIndexToCoord(ChartSeries, ChartPoint, CoordX, CoordY);

Debug.Writeline('X Chart Coordinate: ' + CoordX.ToString());

Debug.Writeline('Y Chart Coordinate: ' + CoordY.ToString());

end;


ConvertToCoordValues1 - Visual Basic

Visual Basic

Dim CoordX, CoordY As Integer

C1Chart1.ChartGroups.Group0.

DataIndexToCoord(ChartSeries, ChartPoint, CoordX, CoordY)

Debug.WriteLine("X Chart Coordinate: " & CoordX.ToString())

Debug.WriteLine("Y Chart Coordinate: " & CoordY.ToString())


ConvertToCoordValues2 - C#

C#

int CoordX=0, CoordY=0;

C1Chart1.ChartGroups.Group0.DataCoordToCoord(DataCordX, DataCoordY, ref CoordX,
ref CoordY);

ConsoleDebug.Writeline("X Chart Coordinate: " + CoordX.ToString());

ConsoleDebug.Writeline("Y Chart Coordinate: " + CoordY.ToString());


ConvertToCoordValues2 - Delphi

Delphi

var

CoordX, CoordY: Integer;

begin

C1Chart1.ChartGroups.Group0.

DataCoordToCoord(DataCordX, DataCoordY, ref CoordX, ref CoordY);

Debug.Writeline('X Chart Coordinate: ' + CoordX.ToString());

Debug.Writeline('Y Chart Coordinate: ' + CoordY.ToString());

end;


ConvertToCoordValues2 - Visual Basic

Visual Basic

Dim CoordX, CoordY As Integer

C1Chart1.ChartGroups.Group0._
DataCoordToCoord(DataCordX, DataCoordY, CoordX, CoordY)

Debug.WriteLine("X Chart Coordinate: " & CoordX.ToString())

Debug.WriteLine("Y Chart Coordinate: " & CoordY.ToString())


CopyDataIn Method - C#

C#

float xp(10);

float yp(10);

int i;

for( i=0; i < 10; i++)

{

xp[i] = i;

yp[i] = i * i;

}

ChartDataSeries cds =

C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

cds.X.CopyDataIn(xp);

cds.Y.CopyDataIn(yp);


CopyDataIn Method - Delphi

Delphi

var

xp: array[0..9] of Single;

yp: array[0..9] of Single;

i: Integer;

cds: ChartDataSeries;

begin

for i := 0 to 9 do

begin

xp[i] := i;

yp[i] := i * i;

end

cds := C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

cds.X.CopyDataIn(xp);

cds.X.CopyDataIn(yp);

end;


CopyDataIn Method - Visual Basic

Visual Basic

Dim xp(9) As Single

Dim yp(9) As Single

Dim i As Integer

For i = 0 To 9

xp(i) = i

yp(i) = i * i

Next i

With C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartData.SeriesList(0)

.X.CopyDataIn(xp)

.Y.CopyDataIn(yp)

End With


CopyDataOut Method1 - C#

C#

object xpo;

ChartDataSeries cds;

cds = C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

xpo = cds.X.CopyDataOut();


CopyDataOut Method1 - Delphi

Delphi

var

xpo: Object;

cds: ChartDataSeries;

begin

cds = C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

xpo = cds.X.CopyDataOut();

end;


CopyDataOut Method1 - Visual Basic

Visual Basic

Dim xpo As Object

Dim cds As ChartDataSeries

cds = C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartData.SeriesList(0)

xpo = cds.X.CopyDataOut()


CopyDataOut Method2 - C#

C#

ChartDataSeries cds;

cds = C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

float[] xpo = cds.X.CopyDataOut(typeof(float[]));

float[] ypo = cds.Y.CopyDataOut(typeof(float[]));


CopyDataOut Method2 - Delphi

Delphi

var

cds: ChartDataSeries;

xpo: array of Single;

ypo: array of Single;

begin

cds := C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData.SeriesList[0];

xpo := cds.X.CopyDataOut(TypeOf(array of Single));

ypo := cds.Y.CopyDataOut(TypeOf(array of Single));

end;


CopyDataOut Method2 - Visual Basic

Visual Basic

Dim xpo As Single()

Dim ypo As Single()

With C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartData.SeriesList(0)

xpo = .X.CopyDataOut(GetType(Single()))

ypo = .Y.CopyDataOut(GetType(Single()))

End With


Creating an ASP.NET Project

1. From the File menu in .NET, select New and click Project. The New Project dialog box opens.

2. Under Project Types, choose either Visual Basic Projects or Visual C# Projects, and select ASP.NET Web Application from the list of Templates in the right pane.

3. Enter a URL for your application in the Location field and click OK.

Note: The Web server must have IIS version 5 or later and the .NET Framework installed on it. If you have IIS on your computer, you can specify http://localhost for the server.

A new Web Forms project is created at the root of the Web server you specified. In addition, a new Web Forms page called WebForm1.aspx is displayed in the Web Forms Designer in Design view.

4. Add a C1WebChart control to WebForm1.aspx.

After a chart has been configured at design-time in the ASP.Net IDE, and upon compilation, C1WebChart creates an <IMG> tag in the resulting HTML page. The <IMG> tag will be created where the C1WebChart control is placed on the main .aspx page. The source attribute of this <IMG> tag is where the chart image data gets referenced or placed. How this attribute gets filled with data is the concern of the ImageRenderMethod property, and how the actual data actually gets streamed back to the source attribute is the concern of the ImageTransferMethod property. For more information, see ImageRenderMethod Property (C1WebChart) and ImageTransferMethod Property (C1WebChart).

The below table lists what the effect of an intersection between a transfer method and render method produces:


Creating an ASP.NET Project

This topic demonstrates how to create a new ASP.NET project.

1. From the File menu in .NET, select New and click Project. The New Project dialog box opens.

2. Under Project Types, choose either Visual Basic Projects or Visual C# Projects, and select ASP.NET Web Application from the list of Templates in the right pane.

3. Enter a URL for your application in the Location field and click OK.

Note: The Web server must have IIS version 5 or later and the .NET Framework installed on it. If you have IIS on your computer, you can specify http://localhost for the server.


CreatingGradientBrush - C#

C#

private void c1Chart1_DrawDataSeries(object sender,
C1.Win.C1Chart.DrawDataSeriesEventArgs e)

{

C1.Win.C1Chart.ChartDataSeries ds = (ChartDataSeries)sender;

Color clr1 = ds.LineStyle.Color;

Color clr2 = ds.SymbolStyle.Color;

if(e.Bounds.Size.Height > 0 && e.Bounds.Size.Width > 0)

{

System.Drawing.Drawing2D.LinearGradientBrush lgb =

new LinearGradientBrush(e.Bounds, clr1, clr2, LinearGradientMode.Horizontal);

e.Brush = lgb;

}

}


CreatingGradientBrush - Delphi

Delphi

procedure Class1.c1Chart1_DrawDataSeries(sender: System.Object;
e: C1.Win.C1Chart.DrawDataSeriesEventArgs);

var

ds: C1.Win.C1Chart.ChartDataSeries;

forecolor: Color;

backcolor: Color;

lgb: System.Drawing.Drawing2D.LinearGradientBrush;

begin

ds := ChartDataSeries(sender);

forecolor := ds.SymbolStyles.Color;

backcolor := ds.LineStyle.Color;

lgb := LinearGradientBrush.Create(HatchStyle.OutlinedDiamond,

forecolor, backcolor;

e.Brush := lgb;

end;


CreatingGradientBrush - Visual Basic

Visual Basic

Private Sub C1Chart1_DrawDataSeries(ByVal sender As Object, _
ByVal e As C1.Win.C1Chart.DrawDataSeriesEventArgs) _
Handles C1Chart1.DrawDataSeries

Dim ds As C1.Win.C1Chart.ChartDataSeries = sender

Dim clr1 As Color = ds.LineStyle.Color

Dim clr2 As Color = ds.SymbolStyle.Color

If(e.Bounds.Height > 0 And e.Bounds.Width > 0) Then
Dim lgb As System.Drawing.Drawing2D.LinearGradientBrush = _
New LinearGradientBrush(e.Bounds, clr1, clr2, LinearGradientMode.Horizontal)
e.Brush = lgb

End If

End Sub


CreatingHatchedBrush - C#

C#

private void C1Chart1_DrawDataSeries(object sender,
C1.Win.C1Chart.DrawDataSeriesEventArgs e)

{

C1.Win.C1Chart.ChartDataSeries ds = (ChartDataSeries)sender;

Color forecolor = ds.SymbolStyle.Color;

Color backcolor = ds.LineStyle.Color;

System.Drawing.Drawing2D.HatchBrush hb;

hb = new HatchBrush(HatchStyle.OutlinedDiamond, forecolor, backcolor);

e.Brush = hb;

}


CreatingHatchedBrush - Delphi

Delphi

procedure Class1.c1Chart1_DrawDataSeries(sender: System.Object;
e: C1.Win.C1Chart.DrawDataSeriesEventArgs);var

ds: C1.Win.C1Chart.ChartDataSeries;

forecolor: Color;

backcolor: Color;

hb: System.Drawing.Drawing2D.HatchBrush;

begin

ds = ChartDataSeries(sender);

forecolor := ds.SymbolStyle.Color;

backcolor := ds.LineStyle.Color;

hb := HatchBrush.Create(HatchStyle.OutlinedDiamond, forecolor, backcolor);

e.Brush := hb;

end;


CreatingHatchedBrush - Visual Basic

Visual Basic

Private Sub C1Chart1_DrawDataSeries(ByVal sender As Object, _
ByVal e As C1.Win.C1Chart.DrawDataSeriesEventArgs) _
Handles C1Chart1.DrawDataSeries

Dim ds As C1.Win.C1Chart.ChartDataSeries = sender

Dim foreclr As Color = ds.SymbolStyle.Color

Dim backclr As Color = ds.LineStyle.Color

Dim hb As System.Drawing.Drawing2D.HatchBrush

hb = New HatchBrush(HatchStyle.OutlinedDiamond, foreclr, backclr)

e.Brush = hb

End Sub


CreatingPointStylesAtRuntime - C#

C#

C1.Win.C1Chart.PointStylesCollection styles =
c1Chart1.ChartGroups[0].ChartData.PointStylesList;

// min value

C1.Win.C1Chart.PointStyle psmin = styles.AddNewPointStyle();

psmin.LineStyle.Pattern = C1.Win.C1Chart.LinePatternEnum.None;

psmin.SymbolStyle.Color = Color.MistyRose;

psmin.SymbolStyle.OutlineColor = Color.Blue;

psmin.SymbolStyle.OutlineWidth = 2;

psmin.SymbolStyle.Size = 10;

psmin.Selection = C1.Win.C1Chart.PointStyleSelectionEnum.SeriesMinY;

// show in legend

psmin.Label = "Y Min";

psmin.LegendEntry = true;

// max value

C1.Win.C1Chart.PointStyle psmax = styles.AddNewPointStyle();

psmax.LineStyle.Pattern = C1.Win.C1Chart.LinePatternEnum.None;

psmax.SymbolStyle.Color = Color.MistyRose;

psmax.SymbolStyle.OutlineColor = Color.Red;

psmax.SymbolStyle.OutlineWidth = 2;

psmax.SymbolStyle.Size = 10;

psmax.Selection = C1.Win.C1Chart.PointStyleSelectionEnum.SeriesMaxY;

// show in legend

psmax.Label = "Y Max";

psmax.LegendEntry = true;

c1Chart1.Legend.Visible = true;


CreatingPointStylesAtRuntime - Delphi

Delphi

var

styles: C1.Win.C1Chart.PointStylesCollection;

psmin: C1.Win.C1Chart.PointStyle;

psmax: C1.Win.C1Chart.PointStyle;

begin

styles := c1Chart1.ChartGroups[0].ChartData.PointStylesList;

// min value

psmin := styles.AddNewPointStyle();

psmin.LineStyle.Pattern := C1.Win.C1Chart.LinePatternEnum.None;

psmin.SymbolStyle.Color := Color.MistyRose;

psmin.SymbolStyle.OutlineColor := Color.Blue;

psmin.SymbolStyle.OutlineWidth := 2;

psmin.SymbolStyle.Size := 10;

psmin.Selection := C1.Win.C1Chart.PointStyleSelectionEnum.SeriesMinY;

// max value

psmax := styles.AddNewPointStyle();

psmax.LineStyle.Pattern := C1.Win.C1Chart.LinePatternEnum.None;

psmax.SymbolStyle.Color := Color.MistyRose;

psmax.SymbolStyle.OutlineColor := Color.Red;

psmax.SymbolStyle.OutlineWidth := 2;

psmax.SymbolStyle.Size := 10;

psmax.Selection := C1.Win.C1Chart.PointStyleSelectionEnum.SeriesMaxY;

c1Chart1.Legend.Visible := true;

end;


CreatingPointStylesAtRuntime - Visual Basic

Visual Basic

Dim styles As C1.Win.C1Chart.PointStylesCollection = _
c1Chart1.ChartGroups(0).ChartData.PointStylesList

' min value

Dim psmin As C1.Win.C1Chart.PointStyle = styles.AddNewPointStyle()

psmin.LineStyle.Pattern = C1.Win.C1Chart.LinePatternEnum.None

psmin.SymbolStyle.Color = Color.MistyRose

psmin.SymbolStyle.OutlineColor = Color.Blue

psmin.SymbolStyle.OutlineWidth = 2

psmin.SymbolStyle.Size = 10

psmin.Selection = C1.Win.C1Chart.PointStyleSelectionEnum.SeriesMinY

' show in legend

psmin.Label = "Y Min"

psmin.LegendEntry = True

' max value

Dim psmax As C1.Win.C1Chart.PointStyle = styles.AddNewPointStyle()

psmax.LineStyle.Pattern = C1.Win.C1Chart.LinePatternEnum.None

psmax.SymbolStyle.Color = Color.MistyRose

psmax.SymbolStyle.OutlineColor = Color.Red

psmax.SymbolStyle.OutlineWidth = 2

psmax.SymbolStyle.Size = 10

psmax.Selection = C1.Win.C1Chart.PointStyleSelectionEnum.SeriesMaxY

' show in legend

psmax.Label = "Y Max"

psmax.LegendEntry = True

c1Chart1.Legend.Visible = True


CreatingTrendLinesAtRuntime - C#

C#

// create trend line

C1.Win.C1Chart.TrendLine tl = new C1.Win.C1Chart.TrendLine();

// first data series

tl.SeriesIndex = 0;

// set line color and thickness

tl.LineStyle.Color = Color.Red;

tl.LineStyle.Thickness = 2;

// show formula in legend

tl.Text = "{#FORMULA}";

// add trend to the chart

c1Chart1.ChartGroups[0].ChartData.TrendsList.Add( tl);


CreatingTrendLinesAtRuntime - Delphi

Delphi

var

tl: C1.Win.C1Chart.TrendLine;

begin

// create trend line

tl := C1.Win.C1Chart.TrendLine.Create;

// first data series

tl.SeriesIndex := 0;

// set line color and thickness

tl.LineStyle.Color := Color.Red;

tl.LineStyle.Thickness := 2;

// show formula in legend

tl.Text := '{#FORMULA}';

// add trend to the chart

c1Chart1.ChartGroups[0].ChartData.TrendsList.Add(tl);end;


CreatingTrendLinesAtRuntime - Visual Basic

Visual Basic

' create trend line

Dim tl As C1.Win.C1Chart.TrendLine = New C1.Win.C1Chart.TrendLine()

' first data series

tl.SeriesIndex = 0

' set line color and thickness

tl.LineStyle.Color = Color.Red

tl.LineStyle.Thickness = 2

' show formula in legend

tl.Text = "{#FORMULA}"

' add trend to the chart

c1Chart1.ChartGroups(0).ChartData.TrendsList.Add(tl)


CustomPointStyles - C#

C#

private void button1_Click(object sender, System.EventArgs e)

{

// create point style

C1.Win.C1Chart.PointStyle ps = new C1.Win.C1Chart.PointStyle();

// custom point style

ps.Selection = C1.Win.C1Chart.PointStyleSelectionEnum.Custom;

ps.Select += new C1.Win.C1Chart.PointStyleSelectEventHandler(PS_Select);

// add point style

c1Chart1.ChartGroups[0].ChartData.PointStylesList.Add( ps);

}

void PS_Select( object sender, C1.Win.C1Chart.PointStyleSelectEventArgs e)

{

C1.Win.C1Chart.PointStyle ps = sender as C1.Win.C1Chart.PointStyle;

// set visual appearance depending on y value

C1.Win.C1Chart.ChartDataSeries ds =
c1Chart1.ChartGroups[0].ChartData[e.SeriesIndex];

double y = Convert.ToDouble( ds.Y[e.PointIndex]);

if( y<0)

ps.LineStyle.Color = Color.Blue;

else

ps.LineStyle.Color = Color.Red;

// apply to all points

e.Selected = true;

}


CustomPointStyles - Delphi

Delphi

procedure TWinForm1.PS_Select(sender: System.Object;
e: C1.Win.C1Chart.PointStyleSelectEventArgs);

var

ps: C1.Win.C1Chart.PointStyle;

ds: C1.Win.C1Chart.ChartDataSeries;

y: double;

begin

// set visual appearance depending on y value

ps := C1.Win.C1Chart.PointStyle(sender);

ds := C1Chart1.ChartGroups[0].ChartData[e.SeriesIndex];

y := Convert.ToDouble( ds.Y[e.PointIndex]);

if y < 0 then

ps.LineStyle.Color := Color.Blue

else

ps.LineStyle.Color := Color.Red;

// apply to all points

e.Selected := true;

end;

procedure TWinForm1.Button2_Click(sender: System.Object; e: System.EventArgs);

var

ps: C1.Win.C1Chart.PointStyle;

begin

// create point style

ps := C1.Win.C1Chart.PointStyle.Create;

// custom point style

ps.Selection := C1.Win.C1Chart.PointStyleSelectionEnum.Custom;

Include(ps.Select, Self.PS_Select);

// add point style

c1Chart1.ChartGroups[0].ChartData.PointStylesList.Add( ps);

end;


CustomPointStyles - Visual Basic

Visual Basic

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button1.Click

' create point style

Dim ps As C1.Win.C1Chart.PointStyle = New C1.Win.C1Chart.PointStyle()

' custom point style

ps.Selection = C1.Win.C1Chart.PointStyleSelectionEnum.Custom

AddHandler ps.Select, AddressOf PS_Select

' add point style

c1Chart1.ChartGroups(0).ChartData.PointStylesList.Add(ps)

End Sub

Private Sub PS_Select(ByVal sender As Object, ByVal e As _
C1.Win.C1Chart.PointStyleSelectEventArgs)

Dim ps As C1.Win.C1Chart.PointStyle = CType(sender, C1.Win.C1Chart.PointStyle)

' set visual appearance depending on y value

Dim ds As C1.Win.C1Chart.ChartDataSeries = _
c1Chart1.ChartGroups(0).ChartData(e.SeriesIndex)

Dim y As Double = Convert.ToDouble(ds.Y(e.PointIndex))

If (y < 0) Then

ps.LineStyle.Color = Color.Blue

Else

ps.LineStyle.Color = Color.Red

End If

' apply to all points

e.Selected = True

End Sub


CustomTrendLine - C#

C#

private void button1_Click(object sender, System.EventArgs e)

{

// create trend line

C1.Win.C1Chart.TrendLine tl =
c1Chart1.ChartGroups[0].ChartData.TrendsList.AddNewTrendLine();

// setup line properties

tl.LineStyle.Color = Color.DarkRed;

tl.LineStyle.Thickness = 3;

tl.LineStyle.Pattern = C1.Win.C1Chart.LinePatternEnum.Dash;

// set custom trend line

tl.CustomTrendLine = new CustomTrendLine();

}

public class CustomTrendLine : C1.Win.C1Chart.ICustomTrendLine

{

private double[] _x;

private double[] _y;

public void Calculate( C1.Win.C1Chart.TrendLine tl, double[] x, double [] y)

{

if( x==null || x.Length==0 || y==null || y.Length==0)

{

_x = null; _y = null;

return;

}

// find min and max

double xmin = x[0], xmax = x[0];

double ymin = y[0], ymax = y[0];

for( int i=1; i<x.Length; i++)

{

if( x[i] < xmin)

xmin = x[i];

else if( x[i] > xmax)

xmax = x[i];

if( y[i] < ymin)

ymin = y[i];

else if( y[i] > ymax)

ymax = y[i];

}

// rectangle around data points

_x = new double[5];

_y = new double[5];

_x[0] = xmin; _y[0] = ymin;

_x[4] = _x[0]; _y[4] = _y[0];

_x[2] = xmax; _y[2] = ymax;

_x[1] = _x[0]; _y[1] = _y[2];

_x[3] = _x[2]; _y[3] = _y[0];

}

public double[] GetXValues() { return _x;}

public double[] GetYValues() { return _y;}

// don't use it just return something

public double GetY( double x) { return 0;}

public string Text { get{ return "Custom trend";}}

}


CustomTrendLine - Delphi

Delphi

type

TDoubleArray = array of Double;

CustomTrendLine = class(C1.Win.C1Chart.ICustomTrendLine)

strict private

_x: array of System.Double;

_y: array of System.Double;

public

function get_Text: string;

property Text: string read get_Text;

procedure Calculate(tl: C1.Win.C1Chart.TrendLine; x: TDoubleArray;

y: TDoubleArray);

function GetXValues: TDoubleArray;

function GetYValues: TDoubleArray;

function GetY(x: Double): Double;

end;

implementation

function CustomTrendLine.get_Text: string;

begin

Result := 'Custom trend';

end;

procedure CustomTrendLine.Calculate(tl: C1.Win.C1Chart.TrendLine;
x: TDoubleArray; y: TDoubleArray);

var

i: Integer;

ymax: Double;

ymin: Double;

xmax: Double;

xmin: Double;

begin

if ((Length(x) = 0) or Length(y) = 0) then

begin

Self._x := nil;

Self._y := nil;

Exit;

end;

xmin := x[0];

xmax := x[0];

ymin := y[0];

ymax := y[0];

i := 1;

while (i < Length(x)) do

begin

if (x[i] < Self.xmin) then

Self.xmin := x[i]

else

if (x[i] > xmax) then

xmax := x[i];

if (y[i] < Self.ymin) then

Self.ymin := y[i]

else

if (y[i] > ymax) then

ymax := y[i];

end;

SetLength(_x, 5);

SetLength(_y, 5);

Self._x[0] := Self.xmin;

Self._y[0] := Self.ymin;

Self._x[4] := Self._x[0];

Self._y[4] := Self._y[0];

Self._x[2] := xmax;

Self._y[2] := ymax;

Self._x[1] := Self._x[0];

Self._y[1] := Self._y[2];

Self._x[3] := Self._x[2];

Self._y[3] := Self._y[0];

end;

function CustomTrendLine.GetXValues: TDoubleArray;

begin

Result := Self._x;

end;

function CustomTrendLine.GetYValues: TDoubleArray;

begin

Result := Self._y;

end;

function Class1.CustomTrendLine.GetY(x: Double): Double;

begin

Result := 0;

end;

procedure TForm1.Button1Click(sender: object; e: System.EventArgs);

var

tl: C1.Win.C1Chart.TrendLine;

begin

tl := c1Chart1.ChartGroups[0].ChartData.TrendsList.AddNewTrendLine;

tl.LineStyle.Color := Color.DarkRed;

tl.LineStyle.Thickness := 3;

tl.LineStyle.Pattern := C1.Win.C1Chart.LinePatternEnum.Dash;

tl.CustomTrendLine := CustomTrendLine.Create;

end;


CustomTrendLine - Visual Basic

Visual Basic

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _

Handles Button1.Click

' create trend line

Dim tl As C1.Win.C1Chart.TrendLine = _
c1Chart1.ChartGroups(0).ChartData.TrendsList.AddNewTrendLine()

' setup line properties

tl.LineStyle.Thickness = 3

tl.LineStyle.Pattern = C1.Win.C1Chart.LinePatternEnum.Dash

' set custom trend line

tl.CustomTrendLine = New CustomTrendLine()

End Sub

Public Class CustomTrendLine Implements C1.Win.C1Chart.ICustomTrendLine

Private _x() As Double

Private _y() As Double

Public Sub Calculate(ByVal tl As C1.Win.C1Chart.TrendLine,_
ByVal x() As Double, ByVal y() As Double) Implements _
C1.Win.C1Chart.ICustomTrendLine.Calculate

If x Is Nothing Or x.Length = 0 Or y Is Nothing Or y.Length = 0 Then

_x = Nothing

_y = Nothing

Return

End If

' find min and max

Dim xmin As Double = x(0), xmax = x(0)

Dim ymin As Double = y(0), ymax = y(0)

Dim i As Integer

For i = 1 To x.Length - 1

If x(i) < xmin Then

xmin = x(i)

ElseIf x(i) > xmax Then

xmax = x(i)

End If

If y(i) < ymin Then

ymin = y(i)

ElseIf y(i) > ymax Then

ymax = y(i)

End If

Next

' rectangle around data points

_x = New Double(4) {}

_y = New Double(4) {}

_x(0) = xmin

_y(0) = ymin

_x(4) = _x(0)

_y(4) = _y(0)

_x(2) = xmax

_y(2) = ymax

_x(1) = _x(0)

_y(1) = _y(2)

_x(3) = _x(2)

_y(3) = _y(0)

End Sub

Public Function GetXValues() As Double() _

Implements C1.Win.C1Chart.ICustomTrendLine.GetXValues

Return _x

End Function

Public Function GetYValues() As Double() _

Implements C1.Win.C1Chart.ICustomTrendLine.GetYValues

Return _y

End Function

' don't use it just return something

Public Function GetY(ByVal x As Double) As Double _

Implements C1.Win.C1Chart.ICustomTrendLine.GetY

Return 0

End Function

Public ReadOnly Property Text() As String _

Implements C1.Win.C1Chart.ICustomTrendLine.Text

Get

Return "Custom trend"

End Get

End Property

End Class


DataBoundChart - C#

C#

// DataBinding is only available with C1Chart

// version 1.0.20034.13244 and later.

//

// get chart data

string sql = "select * from products";

string conn = @"provider=… nwind.mdb;";

OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);

da.Fill(dt);

// bind chart to table (each series will bind to a field on the table)

c1chart.DataSource = dt;

// clear data series collection

ChartDataSeriesCollection dsc = c1chart.ChartGroups[0].ChartData.SeriesList;

dsc.Clear();

// add unit price series

ChartDataSeries ds = dsc.AddNewSeries();

//ds.AutoEnumerate = true; // (in case you don't want to set the X values)

ds.X.DataField = "ProductName";

ds.Y.DataField = "UnitPrice";

// add units in stock series

ds = dsc.AddNewSeries();

ds.X.DataField = "ProductName";

ds.Y.DataField = "UnitsInStock";

// apply filters, sorting, etc

dt.DefaultView.RowFilter = "CategoryID = 4";


DataBoundChart - Delphi

Delphi

// DataBinding is only available with C1Chart

// version 1.0.20034.13244 and later.

//

var

// global variabels defined elsewhere

c1chart: C1.Win.C1Chart.C1Chart;

dt: DataTable;

// local variables

sql: String;

conn: String;

da: OleDbDataAdapter;

dsc: ChartDataSeriesCollection;

ds: ChartDataSeries;

begin

sql := 'select * from products';

conn := 'provider=… nwind.mdb;';

da := OleDbDataAdapter.Create(sql, conn);

da.Fill(dt);

// bind chart to table (each series will bind to a field on the table);

c1chart.DataSource := dt;

// clear data series collection;

dsc := c1chart.ChartGroups[0].ChartData.SeriesList;

dsc.Clear;

// add unit price series;

ds := dsc.AddNewSeries;

// ds.AutoEnumerate := true; // (in case you don't want to set the X values);

ds.X.DataField :='ProductName';

ds.Y.DataField :='UnitPrice';

// add units in stock series;

ds := dsc.AddNewSeries();

ds.X.DataField :='ProductName';

ds.Y.DataField :='UnitsInStock';

// apply filters, sorting, etc;

dt.DefaultView.RowFilter :='CategoryID = 4';

end;


DataBoundChart - Visual Basic

Visual Basic

' DataBinding is only available with C1Chart

' version 1.0.20034.13244 and later.

'

' get chart data

Dim sql As String = "select * from products"

Dim conn As String = "provider=… nwind.mdb"

Dim da As New OleDbDataAdapter(sql, conn)

da.Fill(dt)

' bind chart to table (each series will bind to a field on the table)

c1chart.DataSource = dt

' clear data series collection

Dim dsc As ChartDataSeriesCollection = _
c1chart.ChartGroups(0).ChartData.SeriesList

dsc.Clear()

' add unit price series

Dim ds As ChartDataSeries = dsc.AddNewSeries()

'ds.AutoEnumerate = true ' (in case you don't want to set the X values)

ds.X.DataField = "ProductName"

ds.Y.DataField = "UnitPrice"

' add units in stock series

ds = dsc.AddNewSeries()

ds.X.DataField = "ProductName"

ds.Y.DataField = "UnitsInStock"

' apply filters, sorting, etc

dt.DefaultView.RowFilter = "CategoryID = 4"


DataSource Property (C1WebChart)

DataSource Property (C1WebChart)

Gets or sets the data source object that is bound to the chart.

Syntax

[VB]

Public Property DataSource() As Object

[C#]

public Object DataSource {get; set;}

[Delphi]

property DataSource: Object;

See Also

C1WebChart Class


DefaultLabelStyle - C#

C#

C1Chart1.ChartLabels.DefaultLabelStyle.BackColor = Color.Green;


DefaultLabelStyle - Delphi

Delphi

begin

C1Chart1.ChartLabels.DefaultLabelStyle.BackColor := Color.Green;

end;


DefaultLabelStyle - Visual Basic

Visual Basic

C1Chart1.ChartLabels.DefaultLabelStyle.BackColor =Color.Green


DisplayType Property - Histogram - C#

C#

//Dislays the chart histogram as a Histogram

ch.DisplayType = DisplayTypeEnum.Histogram;

//Displays the chart histogram as a frequency graph

ch.DisplayType = DisplayTypeEnum.FrequencyGraph;

//Displays the chart histogram as a stepped frequency graph

ch.DisplayType = DisplayTypeEnum.SteppedFrequencyGraph;


DisplayType Property - Histogram - Delphi

Delphi

//Dislays the chart histogram as a Histogram

ch.DisplayType := DisplayTypeEnum.Histogram;

//Displays the chart histogram as a frequency graph

ch.DisplayType := DisplayTypeEnum.FrequencyGraph;

//Displays the chart histogram as a stepped frequency graph

ch.DisplayType := DisplayTypeEnum.SteppedFrequencyGraph;


DisplayType Property - Histogram - Visual Basic

Visual Basic

'Dislays the chart histogram as a Histogram

ch.DisplayType = DisplayTypeEnum.Histogram

'Displays the chart histogram as a frequency graph

ch.DisplayType = DisplayTypeEnum.FrequencyGraph

'Displays the chart histogram as a stepped frequency graph

ch.DisplayType = DisplayTypeEnum.SteppedFrequencyGraph


Dispose Method (C1WebChart)

Dispose Method (C1WebChart)

Prepares the control for garbage collection by freeing disposable objects.

Syntax

[VB]

Public Sub Dispose()

[C#]

public void Dispose();

[Delphi]

procedure Dispose;

Remarks

This property applies to C1WebChart.

The control should not be referenced after calling Dispose().

See Also

C1WebChart Class


Documentation

ComponentOne documentation is available with each of our products in HTML Help, Microsoft Help 2.0 (.NET, ASP.NET and Mobile Device products only), and PDF format. All of the PDFs are also available on Help Central. If you have suggestions on how we can improve our documentation, please email the Documentation team. Please note that e-mail sent to the Documentation team is for documentation feedback only. Technical Support and Sales issues should be sent directly to their respective departments.


DrawDataSeries Event (C1WebChart)

DrawDataSeries Event (C1WebChart)

Fires when the data series is about to be drawn. This event allows changes to the brush that will be used for data series plotting, including the addition of hatching, gradients and textures.

Syntax

[VB]

Public Event DrawDataSeries As C1.Win.C1Chart.DrawDataSeriesEventHandler

[C#]

public event C1.Win.C1Chart.DrawDataSeriesEventHandler DrawDataSeries;

[Delphi]

property DrawDataSeries: DrawDataSeriesEventHandler;

Event Data

The event handler receives an argument of type DrawDataSeriesEventArgs containing data related to this event. The sender object of the event is the ChartDataSeries object about to be drawn.

Remarks

This event applies to C1WebChart only.

See Also

C1WebChart Class


DrawLegendEntry Event (C1WebChart)

DrawLegendEntry Event (C1WebChart)

Fires when the legend is about to be drawn. This event allows changes to the pen color that will be used to stroke the text of the legend entry.

Syntax

[VB]

Public Event DrawLegendEntry As DrawLegendEntryEventHandler

[C#]

public event DrawLegendEntryEventHandler DrawLegendEntry;

[Delphi]

property DrawLegendEntry: DrawLegendEntryEventHandler

Event Data

The event handler receives an argument of type DrawLegendEntryEventArgs containing data related to this event. The sender object of the event is the ChartLegend object about to be drawn.

See Also

C1WebChart Class


Events

Click Event (C1WebChart)

DrawLegendEntry Event (C1WebChart)

DrawDataSeries Event (C1WebChart)

PaintPlotArea Event (C1WebChart)


Events - C#

C#

private void button_Click(object sender, System.EventArgs e)

{

C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();

yf.MinX = -5;

yf.MaxX = 5;

yf.LineStyle.Color = Color.DarkBlue;

yf.LineStyle.Thickness = 2;

yf.CalculateY += new C1.Win.C1Chart.CalculateFunctionEventHandler(
Function_Calculate);

c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add( yf);

}

void Function_Calculate( object sender, C1.Win.C1Chart.CalculateFunctionEventArgs
e)

{

e.Result = e.Parameter * e.Parameter * e.Parameter; // y = x*x*x

}


Events - Delphi

Delphi

procedure TWinForm1.FuncCalculate(sender: System.Object;

e: C1.Win.C1Chart.CalculateFunctionEventArgs);

begin

e.Result := e.Parameter * e.Parameter * e.Parameter; // y = x*x*x

end;

procedure TWinForm1.Button_Click(sender: System.Object; e: System.EventArgs);

var

yf: C1.Win.C1Chart.YFunction;

begin

yf := C1.Win.C1Chart.YFunction.Create;

yf.MinX := -5;

yf.MaxX := 5;

yf.LineStyle.Color := Color.DarkBlue;

yf.LineStyle.Thickness := 2;

Include(yf.CalculateY, Self.FuncCalculate);

C1Chart1.ChartGroups[0].ChartData.FunctionsList.Add(yf);

end;


Events - Visual Basic

Visual Basic

Private Sub Button_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button.Click

Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()

AddHandler yf.CalculateY, AddressOf Function_Calculate

yf.MinX = -5

yf.MaxX = 5

yf.LineStyle.Color = Color.DarkBlue

yf.LineStyle.Thickness = 3

C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)

End Sub

Private Sub Function_Calculate(ByVal sender As Object, _
ByVal e As C1.Win.C1Chart.CalculateFunctionEventArgs)

e.Result = e.Parameter * e.Parameter * e.Parameter ' y = x*x*x

End Sub


Exploding Pie - C#

C#

//Get the appropriate ChartData object.

ChartData cd = C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData;

//Sets the offset for the first series to 10% of the pie's radius

cd.SeriesList[0].Offset = 10;

//Resets the exploded slices.

cd.SeriesList[0].Offset = 0;


Exploding Pie - Delphi

Delphi

var

cd: ChartData;

begin

// Get the appropriate ChartData object.

cd := C1Chart1.ChartGroups.ChartGroupsCollection[0].ChartData;

// Sets the offset for the first series to 10% of the pie's radius.

cd.SeriesList[0].Offset = 10;

// Resets the exploded slices

cd.SeriesList[0].Offset = 0;

end;


Exploding Pie - Visual Basic

Visual Basic

'Get the appropriate ChartData object.

Dim cd As ChartData = C1Chart1.ChartGroups.ChartGroupsCollection(0).ChartData

'Sets the offset for the first series to 10% of the pie's radius

cd.SeriesList(0).Offset = 10

'Resets the exploded slices.

cd.SeriesList(0).Offset = 0


File-based Rendering Tutorials

The File-based tutorials transfer charts to the client using temporary files. Repeated requests for the same chart use the same file, reducing load on the server. New requests create new files as needed. Files are not cleaned up automatically. This method is indicated when charts are complex (expensive to generate) or when you expect a large number of requests for a relatively small number of different charts.


FitType Property - Histogram - C#

C#

cds.FitType = FitTypeEnum.Spline;


FitType Property - Histogram - Delphi

Delphi

cds.FitType := FitTypeEnum.Spline


FitType Property - Histogram - Visual Basic

Visual Basic

cds.FitType = FitTypeEnum.Spline


Footer Property (C1WebChart)

Footer Property (C1WebChart)

Gets the internal C1Chart control Title object object.

Syntax

[VB]

Public ReadOnly Property Footer As C1.Win.C1Chart.Title

[C#]

public C1.Win.C1Chart.Title Footer { get; }

[Delphi]

property Footer: C1.Win.C1Chart.Title;

Remarks

This property applies to C1WebChart.

The Title class for the 2D (C1.Win.C1Chart.Title) chart contain similar properties.

See Also

C1WebChart Class


ForeColor Property (C1WebChart)

ForeColor Property (C1WebChart)

Gets or sets the control fore color.

Syntax

[VB]

Public Property ForeColor As Color

[C#]

public Color ForeColor { get; set; }

[Delphi]

property ForeColor: Color;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


Formula - C#

C#

C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();

yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Formula;

yf.CodeText = "x*x";

yf.MinX = -5;

yf.MaxX = 5;

yf.LineStyle.Color = Color.Red;

yf.LineStyle.Thickness = 3;

c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add(yf);


Formula - Delphi

Delphi

var

yf: C1.Win.C1Chart.YFunction;

begin

yf := C1.Win.C1Chart.YFunction.Create;

yf.CodeType := C1.Win.C1Chart.FunctionCodeTypeEnum.Formula;

yf.CodeText := 'x*x';

yf.MinX := -5;

yf.MaxX := 5;

yf.LineStyle.Color := Color.Red;

yf.LineStyle.Thickness := 3;

C1Chart1.ChartGroups[0].ChartData.FunctionsList.Add(yf);

end;


Formula - Visual Basic

Visual Basic

Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()

yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Formula

yf.CodeLanguage = C1.Win.C1Chart.FunctionCodeLanguageEnum.VB

yf.CodeText = "x*x"

yf.MinX = -5

yf.MaxX = 5

yf.LineStyle.Color = Color.Red

yf.LineStyle.Thickness = 3

C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)


GetByName Method (MapAreaCollection)

GetByName Method (MapAreaCollection)

Gets the MapArea with the specified name from the collection.

Syntax

[VB]

Public Function GetByName(name As String) As MapArea

[C#]

public MapArea GetByName(string name);

[Delphi]

function GetByName(name: String): MapArea;

Remarks

This property applies to C1WebChart.

Return Value

This method returns the MapArea from the collection with the specified name. If such a MapArea is not found, the method returns null.

See Also

MapAreaCollection Class


GetHtmlMap Method (MapAreaCollection)

GetHtmlMap Method (MapAreaCollection)

Gets the content of an Html map tag appropriate for the C1WebChart image as a string.

Syntax

[VB]

Public Function GetHtmlMap() As String

Public Function GetHtmlMap(name As String) As String

[C#]

public string GetHtmlMap();

public string GetHtmlMap(string name);

[Delphi]

function GetHtmlMap: MapArea;

function GetHtmlMap(name: string): string;

Remarks

This property applies to C1WebChart.

Return Value

This method returns a string with map tag content appropriate for the C1WebChart image. If a string is passed, the string will be used as the name of the map element. Note that the content of the string does not include the <map> and </map> tag and end tag marker.

See Also

MapAreaCollection Class


Getting Started With C1WebChart

Adding C1WebChart to the Visual Studio Toolbox

Adding Charts to your Web Applications

Configuring the Chart

Adding User Interaction With ImageAreas

Adding Data to the Chart


HeaderFooterUsingCode - C#

C#

C1Chart.Header.Text = "Sample Header Text";

C1Chart.Header.Compass = CompassEnum.North;

C1Chart.Header.Location = new Point[20, -1];

C1Chart.Footer.Text = "Sample Footer Text";

C1Chart.Footer.Compass = CompassEnum.South;

C1Chart.Footer.Location = new Point[C1Chart.Size – 120, -1];


HeaderFooterUsingCode - Delphi

Delphi

begin

C1Chart.Header.Text := 'Sample Header Text';

C1Chart.Header.Compass := CompassEnum.North;

C1Chart.Header.Location = Point.Create(20, -1);

C1Chart.Footer.Text := 'Sample Footer Text';

C1Chart.Footer.Compass := CompassEnum.South;

C1Chart.Footer.Location := Point.Create(C1Chart.Size – 120, -1);

end;


HeaderFooterUsingCode - Visual Basic

Visual Basic

C1Chart.Header.Text = "Sample Header Text"

C1Chart.Header.Compass = CompassEnum.North

C1Chart.Header.Location = New Point(20, -1)

C1Chart.Footer.Text = "Sample Footer Text"

C1Chart.Footer.Compass = CompassEnum.South

C1Chart.Footer.Location = New Point(C1Chart.Size – 120, -1)


Header Property (C1WebChart)

Header Property (C1WebChart)

Gets the internal C1Chart control Title object.

Syntax

[VB]

Public ReadOnly Property Header As C1.Win.C1Chart.Title

[C#]

public C1.Win.C1Chart.Title Header { get; }

[Delphi]

property Header: C1.Win.C1Chart.Title;

Remarks

This property applies to C1WebChart.

The Title class for the 2D (C1.Win.C1Chart.Title) chart contain similar properties.

See Also

C1WebChart Class


How C1WebChart Handles Images

When you add a chart to a web page, C1WebChart inserts an image in the HTML stream. This image is represented by an <img> tag and contains a reference to a second URL that provides the actual image. C1WebChart is responsible for creating this URL and providing its content. The diagram below illustrates this process:

The diagram shows a browser on the left, displaying an ASP page. To display this page, the browser requests the page content from the server (myWebPage.aspx) and receives an HTML stream. The HTML contains a chart, represented by an <img> tag. The source for this tag is a second URL (c1ChartImage.aspx) that the server translates into an image stream that is rendered in the browser.

The source attribute for the tag can be a temporary image file, an HttpHandler, or a second .aspx page. This is determined by the value of the ImageRenderMethod property.

The source attribute also contains parameters that specify where the chart data is stored so the URL can create the chart image. This data can be stored in a temporary file, in the Session variable, or in the Cache. This is determined by the value of the ImageTransferMethod property.

By default, C1WebChart stores the chart data in the Session variable. In some cases, you may prefer to use the Cache or temporary files instead. Each option has its advantages and drawbacks, depending on how the server is set up and on the nature of the application. For details on the operation of the Session and Cache objects, please refer to the .NET documentation.

The ImageRenderMethod property has settings that range from completely automatic (HttpHandler, File) to manual (Manual). These settings are described below, and demonstrated in the tutorials that follow.

The best combination for the ImageRenderMethod and ImageTransferMethod properties will depend on the complexity and variety of the charts being delivered, the expected site traffic, and server configuration. This is not a trivial task, but the good news is you can test different configurations easily, just by changing those two properties.


How does Licensing Work?

ComponentOne uses a licensing model based on the standard set by Microsoft, which works with all types of components.

NOTE: The Compact Framework components use a slightly different mechanism for licensing than the other ComponentOne components due to platform differences.

When a user decides to purchase a product, he receives an installation program and a Serial Number. During the installation process, the user is prompted for the serial number that is saved on the system. (Users can also enter the serial number by clicking the "License" button on the About Box of any ComponentOne product.)

When a licensed component is added to a form or web page, Visual Studio asks the newly created component for licensing information. The component looks for licensing information stored in the system and generates a key, which Visual Studio saves in two files:

1. a "<projectName>.licenses" resource file which contains the actual key and

2. a "licenses.licx" file that contains references to those resources.

These files are automatically added to the project.

Note that the licenses.licx file is usually not shown in the Solution Explorer; it appears if you press the "Show All Files" button in the Solution Explorer's toolbox, or select "Project | Show All Files" from Visual Studio's main menu.

Later, when the component is created at run time, it gets passed the key that was created at design time and can decide whether to simply accept the key, to throw an exception and fail altogether, or to display some information reminding the user that the software has not been licensed.

All ComponentOne products are designed to display licensing information if the product is not licensed. None will throw licensing exceptions and prevent applications from running.


Href Property (MapArea)

Href Property (MapArea)

Specifies an Href for the MapArea.

Syntax

[VB]

Public Property Href As String

[C#]

public string Href { get; set; }

[Delphi]

property Href: string;

Remarks

This property applies to C1WebChart.

Each MapArea in the resulting ImageMap can link to another URL. If this property is set to a valid address, clicking on the MapArea will link users to the specified page.

Note

The Href is automatically HTML encoded as appropriate (unless it is a JavaScript url).

See Also

MapArea Class


HTTPHandler-based Rendering Tutorials

The HttpHandler based tutorials transfer charts to the client using C1WebChart’s built-in http handler. This method doesn’t use temporary image files, reducing the load on the server’s file system. This method is indicated when charts are simple (easy to generate) or when you expect requests for a large number of different charts.

Tutorial 2 - Using HTTPHandler with a Session-based Transfer Method and a Unique Image ID

Tutorial 3 - Using HTTPHandler with a Cache-based Transfer Method and a Unique Image ID

Tutorial 4 - Using the HTTPHandler with a File-based Transfer Method and a Unique Image ID

Tutorial 5 - Using the HTTPHandler with a Session-based Transfer Method and a per-Application Image ID

Tutorial 6 - Using the HTTPHandler with a Cache-based Transfer Method and a per-Application Image ID

Tutorial 7 - Using the HTTPHandler with a File-based Transfer Method and a per-Application Image ID


ImageAreas Property (C1WebChart)

ImageAreas Property (C1WebChart)

Gets the MapAreaCollection object used to generate client side image maps.

Syntax

[VB]

Public ReadOnly Property ImageAreas As MapAreaCollection

[C#]

public MapAreaCollection ImageAreas { get; }

[Delphi]

property ImageAreas: MapAreaCollection;

Remarks

This property applies to C1WebChart.

The ImageAreas property exposes a collection of MapArea objects. This collection defines the properties of the generated image map to be used for end-user interaction. Each MapArea object in turn specifies the behaviors of the image map.

See Also

C1WebChart Class


ImageFormat Property (C1WebChart)

ImageFormat Property (C1WebChart)

Gets or sets the Image format to be used for the client side image.

Syntax

[VB]

Public Property ImageFormat As System.Drawing.Imaging.ImageFormat

[C#]

public System.Drawing.Imaging.ImageFormat ImageFormat { get; set; }

[Delphi]

property ImageFormat: System.Drawing.Imaging.ImageFormat;

Remarks

This property applies to C1WebChart.

Note that while this property accepts a .Net ImageFormat value, the only image formats available to the C1WebChart programmer are .gif, .jpeg, and .png.

See Also

C1WebChart Class


ImageIdGenerationEnum Enumeration

ImageIdGenerationEnum Enumeration

Syntax

[VB]

Public Enum ImageIdGenerationEnum

[C#]

public enum ImageIdGenerationEnum

[Delphi]

type ImageIdGenerationEnum = (Application, Unique);

Remarks

This enumeration applies to C1WebChart.

Use the members of this enumeration to set the value of the ImageIDGeneration property in the C1WebChart class.


ImageIdGeneration Property (C1WebChart)

ImageIdGeneration Property (C1WebChart)

Gets or sets the level of uniqueness of the ID transfer object.

Syntax

[VB]

Public Property ImageIDGeneration As ImageIdGenerationEnum

[C#]

public ImageIdGenerationEnum ImageIDGeneration { get; set; }

[Delphi]

property ImageIDGeneration: ImageIdGenerationEnum;

Remarks

This property applies to C1WebChart.

When chart data is transferred from one page to another, IDs are created for the Session or Cache variables or for a filename in order to render a chart image. This property determines whether a unique ID is created each time the chart image is accessed (i.e. when the chart image is accessed by a single user), or if the same ID is to be used for the duration of the application life (i.e. when the identical chart image is accessed by multiple users or accessed repeatedly by a single user).

Note

The ImageIdGeneration property has no effect with the ImageRenderMethodEnum.File or ImageRenderMethodEnum.BinaryWrite. For more information, see ImageRenderMethod Property (C1WebChart).

See Also

C1WebChart Class


ImageQuality Property (C1WebChart)

ImageQuality Property (C1WebChart)

Specifies the image quality created when the ImageFormat is set to jpeg.

Syntax

[VB]

Public Property ImageQuality As Integer

[C#]

public int ImageQuality { get; set; }

[Delphi]

property ImageQuality: Integer;

Remarks

This property applies to C1WebChart.

This property accepts an integer from 0 to 100 which specifies the quality of the jpeg image file.

See Also

C1WebChart Class


ImageRenderMethodEnum Enumeration

ImageRenderMethodEnum Enumeration

Syntax

[VB]

Public Enum ImageRenderMethodEnum

[C#]

public enum ImageRenderMethodEnum

[Delphi]

type ImageRenderMethodEnum = (ASPPage, BinaryWrite, File, HTTPHandler, Manual);

Remarks

This enumeration applies to C1WebChart.

Use the members of this enumeration to set the value of the ImageRenderMethod property in the C1WebChart class.

Member Name | Description
ASPPage | C1WebChart will utilize a secondary asp(x) page to stream the image data back to an imbedded <IMG> tag on the primary page. If this option is selected, the chart will generate an appropriately placed <IMG> tag within the page that hosts the chart. The positioning of the <IMG> tag will be in the same location as shown on the Visual Studio design page, and <IMG> tag src attribute will reference the specified asp(x) page. The path to the page will be that specified by the ImageUri property.
BinaryWrite | C1WebChart will perform a binary write to its host page response stream directly, without transferring data to another page. However, the binary image data will be the only data returned.
File | C1WebChart will generate image files that can be referenced directly by an <IMG> tag. The <IMG> tag will be generated and will reference the file specified by the ImageUri property. If the ImageUri property is not specified, then a name for the temporary file will be generated and the URL will reference the temporary file.
HTTPHandler | C1WebChart supports the IHTTPHandler interface and will generate an appropriately placed <IMG> tag within the page that references its internal HTTPHandler to stream the image to the client.
Manual | C1WebChart does nothing to render itself at runtime. All operations required for generating and placing the chart image within the page are the responsibility of the programmer.


ImageRenderMethod Property (C1WebChart)

ImageRenderMethod Property (C1WebChart)

Indicates the method by which the HTML image tag source URL is rendered.

Syntax

[VB]

Public Property ImageRenderMethod As ImageRenderMethodEnum

[C#]

public ImageRenderMethodEnum ImageRenderMethod { get; set; }

[Delphi]

property ImageRenderMethod: ImageRenderMethodEnum;

Remarks

This property applies to C1WebChart.

For more information, see the ImageRenderMethod Property (C1WebChart) topic.

See Also

C1WebChart Class


ImageTransferMethod

The ImageTransferMethod property lists how the chart data is transferred to the source attribute of the <IMG> tag. ImageTransferEnum.Session places the chart data (byte array) into a Session variable, while ImageTransferEnum.Cache places the chart data into a Cache variable. ImageTransferEnum.File writes chart data to a temporary file.

This property only applies to the Manual, HTTPHandler, and ASP Page rendering methods. The below table lists what the effect of an intersection between a transfer method and render method produces:


ImageTransferMethodEnum Enumeration

ImageTransferMethodEnum Enumeration

Syntax

[VB]

Public Enum ImageTransferMethodEnum

[C#]

public enum ImageTransferMethodEnum

[Delphi]

type ImageTransferMethodEnum = (Cache, File, None, Session);

Remarks

This enumeration applies to C1WebChart.

Use the members of this enumeration to set the value of the ImageTransferMethod property in the C1WebChart class.


ImageTransferMethod Property (C1WebChart)

ImageTransferMethod Property (C1WebChart)

Indicates the method by which image data is transferred to the source page.

Syntax

[VB]

Public Property ImageTransferMethod As ImageTransferMethodEnum

[C#]

public ImageTransferMethodEnum ImageTransferMethod { get; set; }

[Delphi]

property ImageTransferMethod: ImageTransferMethodEnum;

Remarks

This property applies to C1WebChart.

When a secondary URL is used to stream image data back to an <IMG> tag on the primary page, it is necessary to transfer the chart data through either a session object, cache object, or a file. For more information see the ImageTransferMethod Property topic.

See Also

C1WebChart Class


ImageUri Property (C1WebChart)

ImageUri Property (C1WebChart)

Specifies a path for various render methods.

Syntax

[VB]

Public Property ImageUri As String

[C#]

public string ImageUri { get; set; }

[Delphi]

property ImageUri: string;

Remarks

This property applies to C1WebChart.

This property specifies a pathname. It has different applications for different properties and settings. For more information, see ImageRenderMethod Property (C1WebChart). Also refer to File-based Rendering Tutorials, HTTPHandler-based Rendering Tutorials, and ASP Page-based Rendering Tutorials.

See Also

C1WebChart Class


InsertNewZone Method - C#

C#

AlarmZoneCollection AzColl = c1Chart1.ChartArea.PlotArea.AlarmZones;

AlarmZone Az = AzColl.InsertNewZone(2);

Az.Name = "GradeA"

Az.Visible = true;


InsertNewZone Method - Delphi

Delphi

var

AzColl: AlarmZoneCollection;

Az: AlarmZone;

begin

AzColl := c1Chart1.ChartArea.PlotArea.AlarmZones;

Az := AzColl.InsertNewZone();

Az.Name := "Grade";

Az.Visible := true;

end;


InsertNewZone Method - Visual Basic

Visual Basic

Dim AzColl As AlarmZoneCollection = C1Chart1.ChartArea.PlotArea.AlarmZones

Dim Az As AlarmZone = AzColl.InsertNewZone(2)

Az.Name = "GradeA"

'you can either use the code above or below

With C1Chart1.ChartArea.PlotArea.AlarmZones.InsertNewZone(2)

.Name = "GradeA"

.Visible = True

End With


Installing Demonstration Versions

If you wish to try WebChart for ASP.NET or any of our other products and do not have a registration key, follow the steps through the installation wizard and use the default serial number.

The only difference between unregistered (demonstration) and registered (purchased) versions of our products is that registered versions will stamp every application you compile so a ComponentOne banner will not appear when your users run the applications.


Installing WebChart for ASP.NET

This section describes the setup files and system requirements for WebChart for ASP.NET. It also explains how to install demonstration versions of ComponentOne products and uninstall WebChart for ASP.NET.

WebChart for .ASP.NET Setup Files

System Requirements

Installing Demonstration Versions

Uninstalling C1WebChart for ASP.NET


Interface - C#

C#

private void button_Click(object sender, System.EventArgs e)

{

C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();

yf.MinX = -5;

yf.MaxX = 5;

yf.LineStyle.Color = Color.DarkGreen;

yf.LineStyle.Thickness = 2;

yf.CustomFunction = new CustomFunction();

c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add( yf);

}

class CustomFunction : C1.Win.C1Chart.ISimpleFunction

{

public double Calculate( double x)

{

return -x*x*x; // y = -x*x*x

}

}


Interface - Delphi

Delphi

type

CustomFunction = class(TObject, C1.Win.C1Chart.ISimpleFunction)

public

function Calculate(x: double): double;

end;

implementation

function CustomFunction.Calculate(x: double): double;

begin

Result := -x*x*x; // y = -x*x*x

end;

procedure button_Click(sender: System.Object; e: System.EventArgs);

var

yf: C1.Win.C1Chart.YFunction;

begin

yf := C1.Win.C1Chart.YFunction.Create;

yf.MinX := -5;

yf.MaxX := 5;

yf.LineStyle.Color := Color.DarkGreen;

yf.LineStyle.Thickness := 2;

yf.CustomFunction := CustomFunction.Create;

C1Chart1.ChartGroups[0].ChartData.FunctionsList.Add(yf);

end;


Interface - Visual Basic

Visual Basic

Private Sub Button_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button.Click

Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()

yf.CustomFunction = New CustomFunction()

yf.MinX = -5

yf.MaxX = 5

yf.LineStyle.Color = Color.DarkGreen

yf.LineStyle.Thickness = 3

C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)

End Sub

Public Class CustomFunction

Implements C1.Win.C1Chart.ISimpleFunction

Public Function Calculate(ByVal x As Double) As Double _
Implements C1.Win.C1Chart.ISimpleFunction.Calculate

Return -x * x * x ' y = - x*x*x

End Function

End Class


IntervalCreationMethod - Histogram - C#

C#

cds.Histogram.IntervalCreationMethod = IntervalMethodEnum.SemiAutomatic;


IntervalCreationMethod - Histogram - Delphi

Delphi

cds.Histogram.IntervalCreationMethod := IntervalMethodEnum.SemiAutomatic;


IntervalCreationMethod - Histogram - Visual Basic

Visual Basic

cds.Histogram.IntervalCreationMethod = IntervalMethodEnum.SemiAutomatic


Item Property (MapAreaCollection)

Item Property (MapAreaCollection)

Gets the specified MapArea of the collection by index.

Syntax

[VB]

Public ReadOnly Property Item(index As Integer) As MapArea

[C#]

public MapArea this[int index] { get; }

[Delphi]

property Item(index: Integer): MapArea;

Remarks

This property applies to C1WebChart.

See Also

MapAreaCollection Class


Legend Property (C1WebChart)

Legend Property (C1WebChart)

Gets the internal C1Chart control Legend object.

Syntax

[VB]

Public ReadOnly Property Legend As C1.Win.C1Chart.Legend

[C#]

public C1.Win.C1Chart.Legend Legend { get; }

[Delphi]

property Legend: C1.Win.C1Chart.Legend;

Remarks

This property applies to C1WebChart.

See Also

C1WebChart Class


LegendUsingCode1 - C#

C#

C1Chart.Legend.Compass = CompassEnum.East;

C1Chart.Legend.Style.Border.BorderStyle = BorderStyleEnum.Solid;

C1Chart.Legend.Style.Border.Thickness = 3;

C1Chart.Legend.Style.Border.Color = Color.Black;

C1Chart.Legend.Style.BackColor = Color.Gray;

C1Chart.Legend.Text = "Legend Text";


LegendUsingCode1 - Delphi

Delphi

begin

C1Chart.Legend.Compass := CompassEnum.East;

C1Chart.Legend.Style.Border.BorderStyle := BorderStyleEnum.Solid;

C1Chart.Legend.Style.Border.Thickness := 3;

C1Chart.Legend.Style.Border.Color := Color.Black;

C1Chart.Legend.Style.BackColor := Color.Gray;

C1Chart.Legend.Text := 'Legend Text';

end;


LegendUsingCode1 - Visual Basic

Visual Basic

C1Chart.Legend.Compass = CompassEnum.East

C1Chart.Legend.Style.Border.BorderStyle = BorderStyleEnum.Solid

C1Chart.Legend.Style.Border.Thickness = 3

C1Chart.Legend.Style.Border.Color = Color.Black

C1Chart.Legend.Style.BackColor = Color.Gray

C1Chart.Legend.Text = "Legend Text"


LegendUsingCode2 - C#

C#

C1.Win.C1Chart.Legend legend = C1Chart.Legend;

C1.Win.C1Chart.Style style = legend.Style;

C1.Win.C1Chart.Border border = style.Border;

legend.Compass = CompassEnum.East;

border.BorderStyle = BorderStyleEnum.Solid;

border.Thickness = 3;

border.Color = Color.Black;

style.BackColor = Color.Gray;

legend.Text = "Legend Text";


LegendUsingCode2 - Delphi

Delphi

var

legend: C1.Win.C1Chart.Legend;

style: C1.Win.C1Chart.Style;

border: C1.Win.C1Chart.Border;

begin

legend.Compass := CompassEnum.East;

border.BorderStyle := BorderStyleEnum.Solid;

border.Thickness := 3;

border.Color := Color.Black;

style.BackColor := Color.Gray;

legend.Text := 'Legend Text';

end;


LegendUsingCode2 - Visual Basic

Visual Basic

With C1Chart.Legend

.Compass = CompassEnum.East

With .Style

With.Border

.BorderStyle = BorderStyleEnum.Solid

.Thickness = 3

.Color = Color.Black

End With

.BackColor = Color.Gray

End With

.Text = "Legend Text"

End With


LoadChartFromFile Method (C1WebChart)

LoadChartFromFile Method (C1WebChart)

Loads the chart properties and data from the specified file.

Syntax

[VB]

Public Sub LoadChartFromFile(filename As String)

[C#]

public void LoadChartFromFile(string filename);

[Delphi]

procedure LoadChartFromFile(filename: string);

Remarks

This property applies to C1WebChart.

Note that only the C1.Win.C1Chart properties and data are loaded by this method. C1WebChart properties are not loaded by this method.

See Also

C1WebChart Class


LoadChartFromString Method (C1WebChart)

LoadChartFromString Method (C1WebChart)

Loads the chart properties and data from the specified string.

Syntax

[VB]

Public Sub LoadChartFromString(strChart As String)

[C#]

public void LoadChartFromString(string strChart);

[Delphi]

procedure LoadChartFromString(strChart: string);

Remarks

This property applies to C1WebChart.

Note that only the C1.Win.C1Chart properties and data are loaded by this method. C1WebChart properties are not loaded by this method.

See Also

C1WebChart Class


LoadSaveChartData1 - C#

C#

C1Chart1.ChartGroups.Group0.ChartData
.SaveDataToFile("C:\\ComponentOneDocs\\chartdata1.xml");


LoadSaveChartData1 - Delphi

Delphi

begin

C1Chart1.ChartGroups.Group0.ChartData
.SaveDataToFile('C:\\ComponentOneDocs\\chartdata1.xml');

end;


LoadSaveChartData1 - Visual Basic

Visual Basic

C1Chart1.ChartGroups.Group0.ChartData_
.SaveDataToFile("C:\ComponentOneDocs\chartdata1.xml")


LoadSaveChartData2 - C#

C#

C1Chart1.ChartGroups.Group0.ChartData
.LoadDataFromFile("C:\\ComponentOneDocs\\chartdata1.xml");


LoadSaveChartData2 - Delphi

Delphi

begin

Chart1.ChartGroups.Group0.ChartData
.LoadDataFromFile('C:\\ComponentOneDocs\\chartdata1.xml');

end;


LoadSaveChartData2 - Visual Basic

Visual Basic

C1Chart1.ChartGroups.Group0.ChartData_
.LoadDataFromFile("C:\ComponentOneDocs\chartdata1.xml")


MapArea All Members

MapArea Properties

Attributes | Specifies a set of attributes to be added to the <AREA> tag.
Href | Specifies an Href for the MapArea.
Shape | Gets or sets a shape for the MapArea.
Tooltip | Specifies a tooltip for the MapArea.


MapArea Class

Syntax

MapArea


MapAreaCollection All Members

MapAreaCollection Properties

Item

Gets the specified element of the MapArea collection.

MapAreaCollection Methods

Add | Adds the specified MapArea to the collection.
GetByName | Gets the MapArea with the specified name from the collection.
GetHtmlMap | Gets html map tag content as a string.


MapAreaCollection Class

Syntax

MapAreaCollection


MapAreaCollection Methods

Add Method (MapAreaCollection)

GetByName Method (MapAreaCollection)

GetHtmlMap Method (MapAreaCollection)


MapAreaCollection Properties

Item Property (MapAreaCollection)


MapArea Properties

Attributes Property (MapArea)

Href Property (MapArea)

Shape Property (MapArea)

Tooltip Property (MapArea)


MapArea Properties and Keywords

Each MapArea object contains the following properties that define how the image map will respond to end-user interaction.

Attributes | Specifies additional attributes for the <area> tag in the image map.
Href | Specifies the URL to link when the corresponding chart object is clicked.
Shape | Gets or sets a shape for the MapArea.
Tooltip | Specifies the text to show when mouse pointer is over the element.

If none of these properties are set, then the MapArea will be excluded from the resulting image map.

The following example creates a new area and sets its Tooltip and an Href property, turning the area into a hyperlink:

map.Tooltip = "Go to C1 home page";

map.HRef = "http://componentone.com";

You can also use the Attributes property to attach JavaScript event handler to areas:

map.Attributes = "onclick=window.open('url.com')";

In fact, the Attributes property can be used to add any attributes to the map <area> of a chart element, including an ID, TITLE, TARGET or anything else you wish. The enter string specified by the Attributes property is embedded within the <area> tag for the chart element.

If all of the ImageAreas elements are empty, then at runtime, the ImageAreas collection will appear empty, i.e. – the Count will be zero. However, build in map areas can still be accessed and automatically added to the collection by retrieving them by name. For example, to retrieve the header element,

MapArea map = C1WebChart1.ImageAreas.GetByName("Header");

map.Attributes = "onclick=window.open('url.com')";


Method - C#

C#

string code =

"double x2 = x*x;" +

"if( x<0)" +

" return x;" +

"else" +

" return 0.5*x2;";

C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();

yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Method;

yf.CodeText = code;

yf.MinX = -5;

yf.MaxX = 5;

yf.LineStyle.Color = Color.Blue;

yf.LineStyle.Thickness = 2;

c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add(yf);


Method - Delphi

Delphi

var

code: string ;

yf: C1.Win.C1Chart.YFunction;

begin

code :=

'double x2 = x*x;' +

'if( x<0)' +

' return x;' +

'else' +

' return 0.5*x2; ';

yf := C1.Win.C1Chart.YFunction.Create;

yf.CodeType := C1.Win.C1Chart.FunctionCodeTypeEnum.Method;

yf.CodeText := code;

yf.MinX := -5;

yf.MaxX := 5;

yf.LineStyle.Color := Color.Blue;

yf.LineStyle.Thickness := 2;

C1Chart1.ChartGroups[0].ChartData.FunctionsList.Add(yf);

end;


Methods

ChartRegionFromCoord Method (C1WebChart)

Dispose Method (C1WebChart)

LoadChartFromFile Method (C1WebChart)

LoadChartFromString Method (C1WebChart)

Reset Method (C1WebChart)

SaveChartToFile Method (C1WebChart)

SaveChartToString Method (C1WebChart)


Method - Visual Basic

Visual Basic

Dim code As String = _

"Dim x2 As Double = x*x" & vbNewLine & _
"if x<0 then " & vbNewLine & _
" return x" & vbNewLine & _
"else" & vbNewLine & _
" return 0.5*x2" & vbNewLine & _
"End If"

Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()

yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Method

yf.CodeLanguage = C1.Win.C1Chart.FunctionCodeLanguageEnum.VB

yf.CodeText = code

yf.MinX = -5

yf.MaxX = 5

yf.LineStyle.Color = Color.Blue

yf.LineStyle.Thickness = 3

C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)


MixingChartDataArrayInputs - C#

C#

private void BindMultipleSeriesViewsAndChartSetup(C1.Win.C1Chart.C1Chart chart)

{

// following objects are in namespace System.Data.OleDb

OleDbConnection connect = new OleDbConnection();

OleDbDataAdapter adapt1 = new OleDbDataAdapter();

OleDbDataAdapter adapt2 = new OleDbDataAdapter();

OleDbCommand select1 = new OleDbCommand();

OleDbCommand select2 = new OleDbCommand();

// set up the connect to the ComponentOne sample database

connect.ConnectionString =

"Provider=Microsoft.Jet.OLEDB.4.0;" +

"User ID=Admin;" +

"Data Source=C:\\Program Files\\ComponentOne Studio.Net\\common\\NWIND.MDB;" +

"Jet OLEDB:Engine Type=5;";

// select Save-A-Lot entries in [Sales Totals by Amount]

select1.CommandText =

"SELECT SaleAmount, ShippedDate, CompanyName " +
"FROM [Sales Totals by Amount] " +
"WHERE (CompanyName = \'Save-a-lot Markets\') " +
"ORDER BY ShippedDate";

select1.Connection = connect;

// select Quick-Stop entries [Sales Totals by Amount]

select2.CommandText =

"SELECT SaleAmount, ShippedDate, CompanyName " +
"FROM [Sales Totals by Amount] " +
"WHERE (CompanyName = \'QUICK-Stop\') " +
"ORDER BY ShippedDate";

select2.Connection = connect;

// using System.Data.Common namespace for the Mapping objects.

// TableMapping is used to allow multiple views of the same table

// to appear in the same DataSet.

// set up the adapter, adapt1.

adapt1.SelectCommand = select1;

DataColumnMapping [] ColumnMaps_SaveALot =

{

new DataColumnMapping("SaleAmount", "SaleAmount"),
new DataColumnMapping("CompanyName", "CompanyName"),
new DataColumnMapping("ShippedDate", "ShippedDate")
};

adapt1.TableMappings.Add(new DataTableMapping("Table", "SaveALot",
ColumnMaps_SaveALot));

// set up the adapter, adapt2.

adapt2.SelectCommand = select2;

DataColumnMapping [] ColumnMaps_QuickStop =
{

new DataColumnMapping("SaleAmount", "SaleAmount"),
new DataColumnMapping("CompanyName", "CompanyName"),
new DataColumnMapping("ShippedDate", "ShippedDate")
};

adapt2.TableMappings.Add(new DataTableMapping("Table", "QuickStop",
ColumnMaps_QuickStop));

// Create the dataset and fill it from all adapters

DataSet ds = new DataSet();

adapt1.Fill(ds);

adapt2.Fill(ds);

// set up the chart, assigning the DataSource, DataFields and properties.

chart.Dock = DockStyle.Fill;

chart.DataSource = ds;

ChartDataSeriesCollection sc = chart.ChartGroups[0].ChartData.SeriesList;

sc.RemoveAll();

// Add the Save-A-Lot series.

ChartDataSeries s = sc.AddNewSeries();

s.Label = "Save-A-Lot";

s.X.DataField = "SaveALot.ShippedDate";

s.Y.DataField = "SaveALot.SaleAmount";

// Add the Quick-Stop series.

s = sc.AddNewSeries();

s.Label = "Quick-Stop";

s.X.DataField = "QuickStop.ShippedDate";

s.Y.DataField = "QuickStop.SaleAmount";

// Set up the Axes and Legend.

chart.ChartArea.AxisX.AnnoFormat = FormatEnum.DateShort;

chart.ChartArea.AxisY.AnnoFormat = FormatEnum.NumericCurrency;

chart.ChartArea.AxisY.Min = 0;

// Change to a bar chart

chart.ChartGroups[0].ChartType = Chart2DTypeEnum.Bar;

chart.ChartGroups[0].ShowOutline = false;

// Position, Orient and Show the Legend

chart.Legend.Compass = CompassEnum.North;

chart.Legend.Orientation = LegendOrientationEnum.Horizontal;

chart.Legend.Visible = true; chart.Legend.Visible = true;

}

private void Form1_Load(object sender, System.EventArgs e)

{

c1Chart1.Location = new Point(0);

c1Chart1.Size = this.ClientSize;

BindMultipleSeriesViewsAndChartSetup(c1Chart1);

}


MixingChartDataArrayInputs - Delphi

Delphi

procedure TWinForm.BindMultipleSeriesViewsAndChartSetup(chart:
C1.Win.C1Chart.C1Chart);

var

connect: OleDbConnection;

adapt1: OleDbDataAdapter;

adapt2: OleDbDataAdapter;

select1: OleDbCommand;

select2: OleDbCommand;

ColumnMaps_SaveALot: array of DataColumnMapping;

ColumnMaps_QuickStop: array of DataColumnMapping;

ds: DataSet;

sc: ChartDataSeriesCollection;

s: ChartDataSeries;

begin

// following objects are in namespace System.Data.OleDb

connect := OleDbConnection.Create;

adapt1 := OleDbDataAdapter.Create;

adapt2 := OleDbDataAdapter.Create;

select1 := OleDbCommand.Create;

select2 := OleDbCommand.Create;

// set up the connect to the ComponentOne sample database

connect.ConnectionString :=

'Provider=Microsoft.Jet.OLEDB.4.0;' +

'User ID=Admin;' +

'Data Source=C:\\Program Files\\ComponentOne Studio.Net\\common\\NWIND.MDB;' +
'Jet OLEDB:Engine Type=5;';

// select Save-A-Lot entries in [Sales Totals by Amount]

select1.CommandText :=
'SELECT SaleAmount, ShippedDate, CompanyName ' +
'FROM [Sales Totals by Amount] ' +
'WHERE (CompanyName = "Save-a-lot Markets") ' +
'ORDER BY ShippedDate';

select1.Connection := connect;

// select Quick-Stop entries [Sales Totals by Amount]

select2.CommandText :=
'SELECT SaleAmount, ShippedDate, CompanyName ' +
'FROM [Sales Totals by Amount] ' +
'WHERE (CompanyName = "QUICK-Stop") ' +
'ORDER BY ShippedDate';

select2.Connection := connect;

// using System.Data.Common namespace for the Mapping objects.

// TableMapping is used to allow multiple views of the same table

// to appear in the same DataSet.

// set up the adapter, adapt1.

adapt1.SelectCommand := select1;

SetLength(ColumnMaps_SaveALot, 3);

ColumnMaps_SaveALot[0] := DataColumnMapping.Create('SaleAmount', 'SaleAmount');

ColumnMaps_SaveALot[1] := DataColumnMapping.Create('CompanyName',
'CompanyName');

ColumnMaps_SaveALot[2] := DataColumnMapping.Create('ShippedDate',
'ShippedDate');

adapt1.TableMappings.Add(DataTableMapping.Create('Table', 'SaveALot',
ColumnMaps_SaveALot));

// set up the adapter, adapt2.

adapt2.SelectCommand := select2;

SetLength(ColumnMaps_QuickStop, 3);

ColumnMaps_QuickStop[0] := DataColumnMapping.Create('SaleAmount', 'SaleAmount');

ColumnMaps_QuickStop[1] := DataColumnMapping.Create('CompanyName',
'CompanyName');

ColumnMaps_QuickStop[2] := DataColumnMapping.Create('ShippedDate',
'ShippedDate');

adapt2.TableMappings.Add(DataTableMapping.Create('Table', 'QuickStop',
ColumnMaps_QuickStop));

// Create the dataset and fill it from all adapters

ds := DataSet.Create;

adapt1.Fill(ds);

adapt2.Fill(ds);

// set up the chart, assigning the DataSource, DataFields and properties.

chart.Dock := DockStyle.Fill;

chart.DataSource := ds;

sc := chart.ChartGroups[0].ChartData.SeriesList;

sc.RemoveAll();

// Add the Save-A-Lot series.

s := sc.AddNewSeries();

//s.Label := 'Save-A-Lot';

s.X.DataField := 'SaveALot.ShippedDate';

s.Y.DataField := 'SaveALot.SaleAmount';

// Add the Quick-Stop series.

s := sc.AddNewSeries();

//s.Label := 'Quick-Stop';

s.X.DataField := 'QuickStop.ShippedDate';

s.Y.DataField := 'QuickStop.SaleAmount';

// Set up the Axes

chart.ChartArea.AxisX.AnnoFormat := FormatEnum.DateShort;

chart.ChartArea.AxisY.AnnoFormat := FormatEnum.NumericCurrency;

chart.ChartArea.AxisY.Min := 0;

// Change to a bar chart

chart.ChartGroups[0].ChartType := Chart2DTypeEnum.Bar;

chart.ChartGroups[0].ShowOutline := false;

// Position, Orient and Show the Legend

chart.Legend.Compass := CompassEnum.North;

chart.Legend.Orientation := LegendOrientationEnum.Horizontal;

chart.Legend.Visible := true;

end;

procedure TWinForm.TWinForm_Load(sender: System.Object; e: System.EventArgs);

begin

Self.C1Chart1.Location := Point.Create(0);

Self.C1Chart1.Size := Self.ClientSize;

BindMultipleSeriesViewsAndChartSetup(C1Chart1);

end;


MixingChartDataArrayInputs - Visual Basic

Visual Basic

Private Sub BindMultipleSeriesViewsAndChartSetup(ByVal chart As _
C1.Win.C1Chart.C1Chart)

' following objects are in namespace System.Data.OleDb

Dim connect As OleDbConnection = New OleDbConnection()

Dim adapt1 As OleDbDataAdapter = New OleDbDataAdapter()

Dim adapt2 As OleDbDataAdapter = New OleDbDataAdapter()

Dim select1 As OleDbCommand = New OleDbCommand()

Dim select2 As OleDbCommand = New OleDbCommand()

' set up the connect to the ComponentOne sample database

connect.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" + _
"User ID=Admin;" + _
"Data Source=C:\Program Files\ComponentOne Studio.Net\common\NWIND.MDB;" + _
"Jet OLEDB:Engine Type=5;"

' select Save-A-Lot entries in [Sales Totals by Amount]

select1.CommandText = _

"SELECT SaleAmount, ShippedDate, CompanyName " + _
"FROM [Sales Totals by Amount] " + _
"WHERE (CompanyName = 'Save-a-lot Markets') " + _
"ORDER BY ShippedDate"

select1.Connection = connect

' select Quick-Stop entries [Sales Totals by Amount]

select2.CommandText = _
"SELECT SaleAmount, ShippedDate, CompanyName " + _
"FROM [Sales Totals by Amount] " + _
"WHERE (CompanyName = 'QUICK-Stop') " + _
"ORDER BY ShippedDate"

select2.Connection = connect

' using System.Data.Common namespace for the Mapping objects.

' TableMapping is used to allow multiple views of the same table

' to appear in the same DataSet.

' set up the adapter, adapt1.

adapt1.SelectCommand = select1

Dim ColumnMaps_SaveALot As DataColumnMapping() = _
{ _

     New
DataColumnMapping("SaleAmount", "SaleAmount"), _
New
DataColumnMapping("CompanyName", "CompanyName"), _
New DataColumnMapping("ShippedDate", "ShippedDate") _
}

adapt1.TableMappings.Add(New DataTableMapping("Table", "SaveALot", _
ColumnMaps_SaveALot))

' set up the adapter, adapt2.

adapt2.SelectCommand = select2

Dim ColumnMaps_QuickStop As DataColumnMapping() = _
{ _

     New
DataColumnMapping("SaleAmount", "SaleAmount"), _
New
DataColumnMapping("CompanyName", "CompanyName"), _
New DataColumnMapping("ShippedDate", "ShippedDate") _
}

adapt2.TableMappings.Add(New DataTableMapping("Table", "QuickStop", _
ColumnMaps_QuickStop))

' Create the dataset and fill it from all adapters

Dim ds As DataSet = New DataSet()

adapt1.Fill(ds)

adapt2.Fill(ds)

' set up the chart, assigning the DataSource, DataFields and properties.

chart.Dock = DockStyle.Fill

chart.DataSource = ds

Dim sc As ChartDataSeriesCollection = chart.ChartGroups(0).ChartData.SeriesList

sc.RemoveAll()

' Add the Save-A-Lot series.

Dim s As ChartDataSeries = sc.AddNewSeries()

s.Label = "Save-A-Lot"

s.X.DataField = "SaveALot.ShippedDate"

s.Y.DataField = "SaveALot.SaleAmount"

' Add the Quick-Stop series.

s = sc.AddNewSeries()

s.Label = "Quick-Stop"

s.X.DataField = "QuickStop.ShippedDate"

s.Y.DataField = "QuickStop.SaleAmount"

' Set up the Axes and Legend.

chart.ChartArea.AxisX.AnnoFormat = FormatEnum.DateShort

chart.ChartArea.AxisY.AnnoFormat = FormatEnum.NumericCurrency

chart.ChartArea.AxisY.Min = 0

' Change to a bar chart

chart.ChartGroups[0].ChartType = Chart2DTypeEnum.Bar

chart.ChartGroups[0].ShowOutline = false

' Position, Orient and Show the Legend

chart.Legend.Compass = CompassEnum.North

chart.Legend.Orientation = LegendOrientationEnum.Horizontal

chart.Legend.Visible = true

End Sub

Private Sub Form1_Load(ByVal sender As System.Object,_
ByVal e As System.EventArgs) Handles MyBase.Load

C1Chart1.Location = New Point(0)

C1Chart1.Size = Me.ClientSize

BindMultipleSeriesViewsAndChartSetup(C1Chart1)

End Sub


Namespaces1 - C#

C#

C1.Win.C1Chart.C1Chart chart;


Namespaces1 - Delphi

Delphi

chart: C1.Win.C1Chart.C1Chart;


Namespaces1 - Visual Basic

Visual Basic

Dim chart As C1.Win.C1Chart.C1Chart


Namespaces2 - C#

C#

using C1.Win.C1Chart = MyChart;

MyChart chart;


Namespaces2 - Delphi

Delphi

uses MyChart: C1.Win.C1Chart;

chart: MyChart;


Namespaces2 - Visual Basic

Visual Basic

Imports MyChart = C1.Win.C1Chart

Dim chart As MyChart


Namespaces3 - C#

C#

using C1.Win.C1Chart;


Namespaces3 - Delphi

Delphi

uses C1.Win.C1Chart;


Namespaces3 - Visual Basic

Visual Basic

Imports C1.Win.C1Chart


Namespaces

Namespaces organize the objects defined in an assembly. Assemblies can contain multiple namespaces, which can in turn contain other namespaces. Namespaces prevent ambiguity and simplify references when using large groups of objects such as class libraries.

The general namespace for ComponentOne Windows products is C1.Win. The general namespace for ComponentOne Web-based products is C1.Web. The namespace for the C1Chart control is C1.Win.C1Chart, while the namespace for the wrapper assembly is C1.Web.C1WebChart. The following code fragment shows how to declare a C1WebChart control using the fully qualified name for this class:

· Visual Basic

· C#

· Delphi

Namespaces address a problem sometimes known as namespace pollution, in which the developer of a class library is hampered by the use of similar names in another library. These conflicts with existing components are sometimes called name collisions.

For example, if a new class named ChartLabels is created, it can be used inside the project without qualification. However, the C1Chart assembly also implements a class called ChartLabels. So, if the C1Chart class will be used in the same project, a fully qualified reference must be used to make the reference unique. If the reference is not unique, Visual Studio .NET produces an error stating that the name is ambiguous.

Fully qualified names are object references that are prefixed with the name of the namespace where the object is defined. Objects defined in other projects can be used if a reference to the class is created (by choosing Add Reference from the Project menu) and then using the fully qualified name for the object in the code.

Fully qualified names prevent naming conflicts because the compiler can always determine which object is being used. However, the names themselves can get long and cumbersome. To get around this, use the Imports statement (using in C#) to define an alias — an abbreviated name used in place of a fully qualified name. For example, the following code snippet creates aliases for two fully qualified names, and uses these aliases to define two objects:

· Visual Basic

· C#

· Delphi

If the Imports statement is used without an alias, use all the names in that namespace without qualification provided they are unique to the project. Note that it would be beneficial to import C1.Win.C1Chart since C1WebChart contains objects that are part of the C1.Win.C1Chart assembly:

As a warning, unless specified explicitly in the code, it is taken for granted that the

· Visual Basic

· C#

· Delphi

statement has been specified. This applies only to small code samples. Tutorials and other longer samples will specify complete qualifiers.


NormalDisplay Property - Histogram - C#

C#

NormalCurve nc = cg.Histogram.NormalDisplay;


NormalDisplay Property - Histogram - Delphi

Delphi

NormalCurve nc := cg.Histogram.NormalDisplay;


NormalDisplay Property - Histogram - Visual Basic

Visual Basic

Dim nc As NormalCurve = cg.Histogram.NormalDisplay


Overview

C1WebChart leverages the power of the C1Chart control to create the charts. C1Chart is a popular and powerful WinForms control that allows you to create various types of charts to display complex data. If you already know how to use C1Chart, you will find C1WebChart extremely familiar. Conversely, once you learn C1WebChart, you will also be able to use C1Chart in your WinForms applications.

This document focuses on the process of adding charts to web pages and later caching and transferring the chart images from the server to the client efficiently. It assumes that you are familiar with Visual Studio, with the creation of ASP.NET applications, and with C# or Visual Basic.

This document also covers the basic techniques involved in creating, configuring, and populating charts. For details on these topics, please refer to the Using the 2DChart section.

This document assumes that you are familiar with Visual Studio and ASP.NET web applications. For details on these topics, please refer to the .Net documentation.


PaintPlotArea Event (C1WebChart)

PaintPlotArea Event (C1WebChart)

Fires when the plot area is about to be drawn. This event allows an event handler to customize the plot area with custom draw methods before the data is drawn.

Syntax

[VB]

Public Event PaintPlotArea As System.Windows.Forms.PaintEventHandler

[C#]

public event System.Windows.Forms.PaintEventHandler PaintPlotArea;

[Delphi]

property PaintPlotArea: System.Windows.Forms.PaintEventHandler;

Event Data

The event handler receives an argument of type System.Windows.Forms.PaintEventArgs containing data related to this event. The sender object of the event is the instance of the chart PlotArea object with the data about to be drawn.

Remarks

This event applies to C1WebChart only.

See Also

C1WebChart Class


PieCharts - C#

C#

// get chart data

DataView data = _dataSet.Tables["Products"].DefaultView;

data.Sort = "UnitPrice";

data.RowFilter = "CategoryID = 1"; // beverages

// configure chart

C1Chart1.Reset();

C1Chart1.BackColor = Color.White;

C1Chart1.ChartArea.Style.Font = new Font("Tahoma", 8);

C1Chart1.ChartGroups[0].ChartType = Chart2DTypeEnum.Pie;

// get series collection (pies have one series per slice)

ChartDataSeriesCollection dscoll = C1Chart1.ChartGroups[0].ChartData.SeriesList;

dscoll.Clear();

// populate the series

for (int i = 0; i < data.Count; i++)

{

ChartDataSeries series = dscoll.AddNewSeries();

series.PointData.Length = 1;

series.Y[0] = data[i]["UnitPrice"];

series.Label = string.Format("{0} ({1:c})",

data[i]["ProductName"], data[i]["UnitPrice"]);

}

// show pie legend

C1Chart1.Legend.Visible = true;

C1Chart1.Legend.Text = "Product Unit Prices";


PieCharts - Delphi

Delphi

var

data: DataView;

dscoll: ChartDataSeriesCollection;

i: Integer;

series: ChartDataSeries;

begin

// get chart data

data := _dataSet.Tables['Products'].DefaultView;

data.Sort := 'UnitPrice';

data.RowFilter := 'CategoryID = 1'; // beverages

// configure chart

C1Chart1.Reset();

C1Chart1.BackColor := Color.White;

C1Chart1.ChartAreaStyle.Font := new Font('Tahoma', 8);

C1Chart1.ChartGroups[0].ChartType := Chart2DTypeEnum.Pie;

// get series collection (pies have one series per slice)

dscoll := C1Chart1.ChartGroups[0].ChartData.SeriesList;

dscoll.Clear();

// populate the series

for i := 0 to data.Count – 1 do

begin

series := dscoll.AddNewSeries();

series.PointData.Length = 1;

series.Y[0] = data[i]['UnitPrice'];

series.Label = String.Format('{0} ({1:c})',
data[i]['ProductName'], data[i]['UnitPrice']);

end;

// show pie legend

C1Chart1.Legend.Visible := true;

C1Chart1.Legend.Text := 'Product Unit Prices';

end;


PieCharts - Visual Basic

Visual Basic

' get chart data

Dim data As DataView = _dataSet.Tables["Products"].DefaultView

data.Sort = "UnitPrice"

data.RowFilter = "CategoryID = 1" ' beverages

' configure chart

C1Chart1.Reset()

C1Chart1.BackColor = Color.White

C1Chart1.ChartArea.Style.Font = new Font("Tahoma", 8)

C1Chart1.ChartGroups(0).ChartType = Chart2DTypeEnum.Pie

' get series collection (pies have one series per slice)

Dim dscoll As ChartDataSeriesCollection = _
C1Chart1.ChartGroups(0).ChartData.SeriesList

dscoll.Clear()

' populate the series

Dim i As Integer

For i = 0 To data.Count – 1

Dim series As ChartDataSeries = dscoll.AddNewSeries()

series.PointData.Length = 1

series.Y(0) = data(i)("UnitPrice")

series.Label = String.Format("{0} ({1:c})", _
data(i)("ProductName"), data(i)("UnitPrice"))

Next I

' show pie legend

C1Chart1.Legend.Visible = True

C1Chart1.Legend.Text = "Product Unit Prices"


PieChartsWithLabels - C#

C#

// hide legend, configure labels

C1Chart1.Legend.Visible = false;

Style s = C1Chart1.ChartLabels.DefaultLabelStyle;

s.Font = new Font("Tahoma", 7);

s.BackColor = SystemColors.Info;

s.Opaque = true;

s.Border.BorderStyle = BorderStyleEnum.Solid;

// attach labels to each slice

for (int i = 0; i < data.Count; i++)

{

C1.Win.C1Chart.Label lbl =
C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

lbl.Text = string.Format("{0} ({1:c})",
data[i]["ProductName"], data[i]["UnitPrice"]);

lbl.Compass = LabelCompassEnum.Radial;

lbl.Offset = 20;

lbl.Connected = true;

lbl.Visible = true;

lbl.AttachMethod = AttachMethodEnum.DataIndex;

AttachMethodData am = lbl.AttachMethodData;

am.GroupIndex = 0;

am.SeriesIndex = i;

am.PointIndex = 0;

}


PieChartsWithLabels - Delphi

Delphi

var

s: Style;

i: Integer;

lbl: C1.Win.C1Chart.Label;

am: AttachMethodData;

begin

// hide legend, configure labels

C1Chart1.Legend.Visible := false;

s := C1Chart1.ChartLabels.DefaultLabelStyle;

s.Font := new Font('Tahoma', 7);

s.BackColor := SystemColors.Info;

s.Opaque := true;

s.Border.BorderStyle := BorderStyleEnum.Solid;

// attach labels to each slice

for i := 0 to data.Count – 1 do

begin

lbl := C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

lbl.Text := string.Format('{0} ({1:c})',
data[i]['ProductName'], data[i]['UnitPrice']);

lbl.Compass := LabelCompassEnum.Radial;

lbl.Offset := 20;

lbl.Connected := true;

lbl.Visible := true;

lbl.AttachMethod := AttachMethodEnum.DataIndex;

am := lbl.AttachMethodData;

am.GroupIndex := 0;

am.SeriesIndex := i;

am.PointIndex := 0;

end;

end;


PieChartsWithLabels - Visual Basic

Visual Basic

' hide legend, configure labels

C1Chart1.Legend.Visible = false

Dim s As Style = C1Chart1.ChartLabels.DefaultLabelStyle

s.Font = new Font("Tahoma", 7)

s.BackColor = SystemColors.Info

s.Opaque = true

s.Border.BorderStyle = BorderStyleEnum.Solid

' attach labels to each slice

Dim i As Integer

For i = 0 To data.Count – 1

Dim lbl As C1.Win.C1Chart.Label = _
C1Chart1.ChartLabels.LabelsCollection.AddNewLabel()

lbl.Text = string.Format("{0} ({1:c})", _
data(i)("ProductName"), data(i)("UnitPrice"))

lbl.Compass = LabelCompassEnum.Radial

lbl.Offset = 20

lbl.Connected = True

lbl.Visible = True

lbl.AttachMethod = AttachMethodEnum.DataIndex

Dim am As AttachMethodData = lbl.AttachMethodData

am.GroupIndex = 0

am.SeriesIndex = I

am.PointIndex = 0

Next i


PointandYValue - C#

C#

C1.Win.C1Chart.Label lab = C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod = AttachMethodEnum.DataIndex;

lab.AttachMethodData.GroupIndex = 0;

lab.AttachMethodData.SeriesIndex = 1;

lab.AttachMethodData.PointIndex = 2;

lab.AttachMethodData.Y = 15.8;


PointandYValue - Delphi

Delphi

var

lab: C1.Win.C1Chart.Label

begin

lab := C1Chart1.ChartLabels.LabelsCollection[0];

lab.AttachMethod := AttachMethodEnum.DataIndex;

lab.AttachMethodData.GroupIndex := 0;

lab.AttachMethodData.SeriesIndex := 1;

lab.AttachMethodData.PointIndex := 2;

lab.AttachMethodData.Y := 15.8;

end;


PointandYValue - Visual Basic

Visual Basic

With C1Chart1.ChartLabels.LabelsCollection(0)

.AttachMethod = AttachMethodEnum.DataIndex

.AttachMethodData.GroupIndex = 0

.AttachMethodData.SeriesIndex = 1

.AttachMethodData.PointIndex = 2

.AttachMethodData.Y = 15.8

End With


PointFValues - C#

C#

PointF [] ps =

{

new PointF(30.0F, 20.0F),

new PointF(60.0F, 24.0F),

new PointF(90.0F, 42.0F),

new PointF(120.0F, 13.0F),

new PointF(150.0F, 10.0F)

};

ChartDataSeries s = new ChartDataSeries();

C1Chart1.ChartGroups.Group1.ChartData.SeriesList.Add(s);

s.PointData.CopyDataIn(ps);


PointFValues - Delphi

Delphi

var

s: ChartDataSeries;

ps: array of PointF;

begin

SetLength(ps, 5);

ps[0] := PointF.Create(30, 20);

ps[1] := PointF.Create(60, 24);

ps[2] := PointF.Create(90, 42);

ps[3] := PointF.Create(120, 13);

ps[4] := PointF.Create(150, 10);

s := ChartDataSeries.Create();

C1Chart1.ChartGroups.Group1.ChartData.SeriesLisdt.Add(s);

s.PointData.CopyDataIn(ps);

end;


PointFValues - Visual Basic

Visual Basic

Dim ps() As PointF = _
{ _

New PointF(30.0F, 20.0F), _
New PointF(60.0F, 24.0F), _
New PointF(90.0F, 42.0F), _
New PointF(120.0F, 13.0F), _
New PointF(150.0F, 10.0F) _
}

Dim s As New ChartDataSeries()

C1Chart1.ChartGroups.Group1.ChartData.SeriesList.Add(s)

s.PointData.CopyDataIn(ps)


Properties

AbsoluteExpiration Property (C1WebChart)

AssemblyFileVersionString Property (C1WebChart)

AssemblyVersionString Property (C1WebChart)

BackColor Property (C1WebChart)

BackgroundImageUrl Property (C1WebChart)

ChartArea Property (C1WebChart)

ChartGroups Property (C1WebChart)

ChartLabels Property (C1WebChart)

ChartStyle Property (C1WebChart)

DataSource Property (C1WebChart)

Footer Property (C1WebChart)

ForeColor Property (C1WebChart)

Header Property (C1WebChart)

ImageAreas Property (C1WebChart)

ImageFormat Property (C1WebChart)

ImageIdGeneration Property (C1WebChart)

ImageQuality Property (C1WebChart)

ImageRenderMethod Property (C1WebChart)

ImageTransferMethod Property (C1WebChart)

ImageUri Property (C1WebChart)

Legend Property (C1WebChart)

SlidingExpiration Property (C1WebChart)

UseAntiAlias Property (C1WebChart)


Redistributable Files

ComponentOne WebChart for ASP.NET is developed and published by ComponentOne LLC. You may use it to develop applications in conjunction with Microsoft Visual Studio or any other programming environment that enables the user to use and integrate the control(s). You may also distribute, free of royalties, the following Redistributable Files with any such application you develop to the extent that they are used separately on a single CPU on the client/workstation side of the network:

· C1.Common.dll

· C1.Web.C1WebChart.dll

· C1.Web.C1WebChart3D.dll

· C1.Win.C1Chart.dll

· C1.Win.C1Chart3D.dll

Site licenses are available for groups of multiple developers. Please contact Sales@ComponentOne.com for details.


Reset Method (C1WebChart)

Reset Method (C1WebChart)

Clears the internal C1Chart or of all data and settings.

Syntax

[VB]

Public Sub Reset ()

[C#]

public void Reset ();

[Delphi]

procedure Reset;

Remarks

This property applies to C1WebChart.

Note that only the C1.Win.C1Chart data and properties are cleared by this method. C1WebChart properties are not modified. The unmodified properties are the properties listed in this section.

See Also

C1WebChart Class


RunTime1 - C#

C#

C1Chart1.ChartGroups.Group0.ChartData.SeriesList[0].X[4] = 4;


RunTime1 - Delphi

Delphi

begin

C1Chart1.ChartGroups.Group0.ChartData.SeriesList[0].X[4] = 4;

end;


RunTime1 - Visual Basic

Visual Basic

C1Chart1.ChartGroups.Group0.ChartData.SeriesList(0).X(4) = 4


RunTime2 - C#

C#

float xval;

xval = C1Chart1.ChartGroups.Group0.ChartData.SeriesList[0].X[4];


RunTime2 - Delphi

Delphi

var

xval: Single;

begin

xval = C1Chart1.ChartGroups.Group0.ChartData.SeriesList[0].X[4];

end;


RunTime2 - Visual Basic

Visual Basic

Dim xval As Single

xval = C1Chart1.ChartGroups.Group0.ChartData.SeriesList(0).X(4)


SaveChartToFile Method (C1WebChart)

SaveChartToFile Method (C1WebChart)

Saves the chart properties and data to the specified file.

Syntax

[VB]

Public Sub SaveChartToFile(filename As String)

[C#]

public void SaveChartToFile(string filename);

[Delphi]

procedure SaveChartToFile(filename: string);

Remarks

This property applies to C1WebChart.

Note that only the C1.Win.C1Chart properties and data are saved by this method. C1WebChart properties are not saved by this method.

See Also

C1WebChart Class


SaveChartToString Method (C1WebChart)

SaveChartToString Method (C1WebChart)

Saves the chart properties and data to the specified string.

Syntax

[VB]

Public Function SaveChartToString as String

[C#]

public string SaveChartToString;

[Delphi]

procedure SaveChartToString:string;

Remarks

This property applies to C1WebChart.

Note that only the C1.Win.C1Chart properties and data are saved by this method. C1WebChart properties are not saved by this method.

See Also

C1WebChart Class


SaveToString1 - C#

C#

string ChartString;

ChartString = C1Chart1.SaveChartToString();


SaveToString1 - Delphi

Delphi

var

ChartString: string;

begin

ChartString := C1Chart1.SaveChartToString();

end;


SaveToString1 - Visual Basic

Visual Basic

Dim ChartString As String

ChartString = C1Chart1.SaveChartToString()


SaveToString2 - C#

C#

C1Chart1.LoadChartFromString(ChartString);


SaveToString2 - Delphi

Delphi

begin

C1Chart1.LoadChartFromString(ChartString);

end;


SaveToString2 - Visual Basic

Visual Basic

C1Chart1.LoadChartFromString(ChartString)


SavingChartImages1 - C#

C#

C1Chart1.SaveImage(System.Drawing.Imaging.ImageFormat.Bmp);


SavingChartImages1 - Delphi

Delphi

begin

C1Chart1.SaveImage(System.Drawing.Imaging.ImageFormat.Bmp);

end;


SavingChartImages1 - Visual Basic

Visual Basic

C1Chart1.SaveImage(System.Drawing.Imaging.ImageFormat.Bmp)


SavingChartImages2 - C#

C#

C1Chart1.SaveImage("C:\\temp\\ChartImages\\CandleChart.bmp",
System.Drawing.Imaging.ImageFormat.Bmp);


SavingChartImages2 - Delphi

Delphi

begin

C1Chart1.SaveImage('C:\\temp\\ChartImages\\CandleChart.bmp',
System.Drawing.Imaging.ImageFormat.Bmp);

end;


SavingChartImages2 - Visual Basic

Visual Basic

C1Chart1.SaveImage("C:\temp\ChartImages\CandleChart.bmp",_
System.Drawing.Imaging.ImageFormat.Bmp)


SavingChartImages3 - C#

C#

System.IO.MemoryStream coutstream == new System.IO.MemoryStream();

C1Chart1.SaveImage(coutstream, System.Drawing.Imaging.ImageFormat.Bmp);


SavingChartImages3 - Delphi

Delphi

var

coutstream: System.IO.MemoryStream;

begin

C1Chart1.SaveImage(coutstream, System.Drawing.Imaging.ImageFormat.Bmp);

end;


SavingChartImages3 - Visual Basic

Visual Basic

Dim coutstream As New System.IO.MemoryStream()

C1Chart1.SaveImage(coutstream, System.Drawing.Imaging.ImageFormat.Bmp)


SavingChartImages4 - C#

C#

Byte[] bytes;

C1Chart1.SaveImage(bytes, System.Drawing.Imaging.ImageFormat.Bmp);


SavingChartImages4 - Delphi

Delphi

var

bytes: array of Byte;

begin

C1Chart1.SaveImage(bytes, System.Drawing.Imaging.ImageFormat.Bmp);

end;


SavingChartImages4 - Visual Basic

Visual Basic

Dim bytes() As Byte

C1Chart1.SaveImage(bytes, System.Drawing.Imaging.ImageFormat.Bmp)


SeriesFromCoord - C#

C#

int LegendGroup = 0;

int LegendSeries = 0;

C1Chart1.Legend.SeriesFromCoord(170, 275, ref LegendGroup, ref LegendSeries);


SeriesFromCoord - Delphi

Delphi

var

LegendSeries: Integer;

LegendGroup: Integer;

begin

C1Chart1.Legend.SeriesFromCoord(170, 275, LegendGroup, LegendSeries);

end;


SeriesFromCoord - Visual Basic

Visual Basic

Dim LegendGroup As Integer

Dim LegendSeries As Integer

C1Chart1.Legend.SeriesFromCoord(170, 275, LegendGroup, LegendSeries)


SeriesListProperty1 - C#

C#

ChartDataSeriesCollection cdc = c1Chart1.ChartGroups[0].ChartData.SeriesList;

cdc.Clear();

for (int i = 0; i < 3; i++)

{

cdc.AddNewSeries();

cdc[i].Label = "Series " + i.ToString();

}


SeriesListProperty1 - Delphi

Delphi

var

cdc: ChartDataSeriesCollection;

i: Integer;

begin

cdc := C1Chart1.ChartGroups[0].ChartData.SeriesList;

cdc.Clear();

for i := 0 to 2 do

begin

cdc.AddNewSeries();

cdc[i].Label = 'Series ' + i.ToString();

end;

end;


SeriesListProperty1 - Visual Basic

Visual Basic

Dim cdc As ChartDataSeriesCollection = _
C1Chart1.ChartGroups(0).ChartData.SeriesList

cdc.Clear()

Dim i As Integer

For i = 0 To 2

cdc.AddNewSeries()

cdc(i).Label = "Series " + i.ToString()

Next i


SeriesListProperty2 - C#

C#

// get data source

DataView data = GetDataView();

// get reference to series object

ChartDataSeries series = C1Chart1.ChartGroups[0].ChartData.SeriesList[0];

// add data to the series

series.PointData.Length = data.Count;

for (int i = 0; i < data.Count; i++)

{

series.X[i] = i;

series.Y[i] = data[i]["UnitPrice"];

}


SeriesListProperty2 - Delphi

Delphi

var

data: DataView;

series: ChartDataSeries;

i: Integer;

begin

// get data source

data := GetDataView();

// get reference to series object

series := C1Chart1.ChartGroups[0].ChartData.SeriesList[0];

// add data to the series

series.PointData.Length = data.Count;

for i := 0 to data.Count – 1 do

begin

series.X[i] := i;

series.Y[i] := data[i]['UnitPrice'];

end;

end;


SeriesListProperty2 - Visual Basic

Visual Basic

// get data source

// Dim data As DataView = GetDataView()

' get reference to series object

Dim series As ChartDataSeries = C1Chart1.ChartGroups(0).ChartData.SeriesList(0)

' add data to the series

series.PointData.Length = data.Count

Dim i As Integer

For i = 0 To data.Count – 1

series.X(i) = I

series.Y(i) = data(i)("UnitPrice")

Next i


SettingTheDataFields - C#

C#

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].X.DataField =
"QuickStop.ShippedDate";

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].Y.DataField =
"QuickStop.SaleAmount";


SettingTheDataFields - Delphi

Delphi

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].X.DataField :=
'QuickStop.ShippedDate';

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].Y.DataField :=
'QuickStop.SaleAmount';


SettingTheDataFields - Visual Basic

Visual Basic

C1Chart1.ChartGroups(0).ChartData.SeriesList(0).X.DataField = _
"QuickStop.ShippedDate"

C1Chart1.ChartGroups(0).ChartData.SeriesList(0).Y.DataField = _
"QuickStop.SaleAmount"


SettingTheDataSource - C#

C#

c1Chart1.DataSource = dataSet11;


SettingTheDataSource - Delphi

Delphi

c1Chart1.DataSource := dataSet11;


SettingTheDataSource - Visual Basic

Visual Basic

C1Chart1.DataSource = DataSet11


Shape Property - AlarmZone - C#

C#

alarmzone.Shape = AlarmZoneShapeEnum.Rectangle;


Shape Property - AlarmZone - Delphi

Delphi

alarmzone.Shape := AlarmZoneShapeEnum.Rectangle;


Shape Property - AlarmZone - Visual Basic

Visual Basic

alarmzone.Shape = AlarmZoneShapeEnum.Rectangle


Shape Property (MapArea)

Shape Property (MapArea)

Gets or sets a shape for the MapArea.

Syntax

[VB]

Public Property Shape() As C1WebChart.AreaShapeEnum

[C#]

public C1WebChart.AreaShapeEnum Shape { get; set; }

[Delphi]

property Shape: C1WebChart.AreaShapeEnum;

Remarks

This property applies to C1WebChart.

See Also

MapArea Class


SimpleBarCharts - C#

C#

// get chart data

DataView data = _dataSet.Tables["Products"].DefaultView;

data.Sort = "UnitPrice";

data.RowFilter = "CategoryID = 1"; // beverages

// configure the chart

C1Chart1.Reset();

C1Chart1.ChartArea.Inverted = true;

C1Chart1.ChartGroups[0].ChartType = Chart2DTypeEnum.Bar;

// create single series for product price

ChartDataSeriesCollection dscoll = C1Chart1.ChartGroups[0].ChartData.SeriesList;

dscoll.Clear();

ChartDataSeries series = dscoll.AddNewSeries();

series.Label = "Product Prices";

// populate the series

series.PointData.Length = data.Count;

for (int i = 0; i < data.Count; i++)

{

series.X[i] = i;

series.Y[i] = data[i]["UnitPrice"];

}

// attach product names to x-axis

Axis ax = C1Chart1.ChartArea.AxisX;

ax.AnnoMethod = AnnotationMethodEnum.ValueLabels;

for (int i = 0; i < data.Count; i++)

ax.ValueLabels.Add(i, (string)data[i]["ProductName"]);

// configure y-axis

Axis ay = C1Chart1.ChartArea.AxisY;

ay.AnnoFormat = FormatEnum.NumericCurrency;


SimpleBarCharts - Delphi

Delphi

var

data: DataView;

dscoll: ChartDataSeriesCollection;

series: ChartDataSeries;

i: Integer;

ax, ay: Axis;

begin

// get chart data

data := _dataSet.Tables['Products'].DefaultView;

data.Sort := 'UnitPrice';

data.RowFilter := 'CategoryID = 1'; // beverages

// configure the chart

C1Chart1.Reset();

C1Chart1.ChartArea.Inverted := true;

C1Chart1.ChartGroups[0].ChartType := Chart2DTypeEnum.Bar;

// create single series for product price

dscoll = C1Chart1.ChartGroups[0].ChartData.SeriesList;

dscoll.Clear();

series := dscoll.AddNewSeries();

series.Label := 'Product Prices';

// populate the series

series.PointData.Length := data.Count;

for i := 0 to data.Count – 1 do

begin

series.X[i] := i;

series.Y[i] := data[i]['UnitPrice'];

end;

// attach product names to x-axis

ax := C1Chart1.ChartArea.AxisX;

ax.AnnoMethod := AnnotationMethodEnum.ValueLabels;

for i := 0 to data.Count – 1

ax.ValueLabels.Add(i, String(data[i]['ProductName']));

// configure y-axis

ay := C1Chart1.ChartArea.AxisY;

ay.AnnoFormat := FormatEnum.NumericCurrency;

end;


SimpleBarCharts - Visual Basic

Visual Basic

' get chart data

Dim data As DataView = _dataSet.Tables("Products").DefaultView

data.Sort = "UnitPrice"

data.RowFilter = "CategoryID = 1" ' beverages

' configure the chart

C1Chart1.Reset()

C1Chart1.ChartArea.Inverted = true

C1Chart1.ChartGroups(0).ChartType = Chart2DTypeEnum.Bar

' create single series for product price

Dim dscoll As ChartDataSeriesCollection = _
C1Chart1.ChartGroups(0).ChartData.SeriesList

dscoll.Clear()

Dim series As ChartDataSeries = dscoll.AddNewSeries()

series.Label = "Product Prices"

' populate the series

series.PointData.Length = data.Count

Dim i As Integer

For i = 0 To data.Count – 1

series.X(i) = I

series.Y(i) = data(i)("UnitPrice")

Next I

' attach product names to x-axis

Dim ax As Axis = C1Chart1.ChartArea.AxisX

ax.AnnoMethod = AnnotationMethodEnum.ValueLabels

For i = 0 To data.Count – 1

ax.ValueLabels.Add(i, CType(data(i)("ProductName"), String))

Next I

' configure y-axis

Dim ay As Axis = C1Chart1.ChartArea.AxisY

ay.AnnoFormat = FormatEnum.NumericCurrency


SlidingExpiration Property (C1WebChart)

SlidingExpiration Property (C1WebChart)

Gets or sets the interval between the time the image was last accessed and the time when the image expires from the session, cache, or file object.

Syntax

[VB]

Public Property SlidingExpiration As TimeSpan

[C#]

public TimeSpan SlidingExpiration { get; set; }

[Delphi]

property SlidingExpiration: TimeSpan;

Remarks

This property applies to C1WebChart.

If this value is the equivalent of 5 minutes, the image expires and is removed from the transfer object 5 minutes after it was last accessed.

See Also

C1WebChart Class


Special Keywords

You can embed special keywords in the MapArea properties to access chart data such as the coordinates of a data point. The chart below lists the keywords available:

Keyword | Chart Element | Chart Type | Description
#TEXT | All | 2D, 3D | Text property value of chart element.
#XVAL | ChartData, ChartLabel | 2D, 3D | X data coordinate.
#YVAL | ChartData, ChartLabel | 2D, 3D | Y data coordinate.
#Y1VAL | ChartData | 2D only | Y1 data coordinate.
#Y2VAL | ChartData | 2D only | Y2 data coordinate.
#Y3VAL | ChartData | 2D only | Y3 data coordinate.
#ISERIES | ChartData, ChartLabel | 2D only | Data series index.
#IPOINT | ChartData, ChartLabel | 2D only | Data point index.
#ZVAL | ChartData, ChartLabel | 3D only | Z data coordinate.
#IROW | ChartData, ChartLabel | 3D only | Data row index.
#ICOL | ChartData, ChartLabel | 3D only | Data column index.

The keywords are case-sensitive and should be placed in curly brackets. You may include a colon and a .NET format string after the keyword. For example:

map.Tooltip = "X={#XVAL}, Y={#YVAL:c}";


StringInputForChartDataArrays - C#

C#

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].X.DataField = "CompanyNames";

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].Y.DataField = "UnitsPurchased";


StringInputForChartDataArrays - Delphi

Delphi

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].X.DataField := 'CompanyNames';

c1Chart1.ChartGroups[0].ChartData.SeriesList[0].Y.DataField := 'UnitsPurchased';


StringInputForChartDataArrays - Visual Basic

Visual Basic

C1Chart1.ChartGroups(0).ChartData.SeriesList(0).X.DataField = "CompanyNames"

C1Chart1.ChartGroups(0).ChartData.SeriesList(0).Y.DataField = "UnitsPurchased"


System Requirements

· Operating Systems:

-Windows 2000

-Windows 2003 Server

-Windows NT 4

-Windows XP, sp1, sp2

· Web Server:

- Microsoft Internet Information Services (IIS) 5.x

- Microsoft Internet Information Services (IIS) 6.x

· Environments:

- .NET Framework 1.0

- .NET Framework1.1

- ASP.NET

- C# .NET

- Delphi

- Internet Explorer 4.x

- Internet Explorere 5.x

- Internet Explorer 6.x

- Netscape 4

- Netscape 6

- Netscape 7

- Visual Basic .NET

· Hard Disk Space: 22 mb hard disk space for storage of the software

· Disc Drive: CD or DVD-ROM drive if installing from CD


The ImageAreas Property

The ImageAreas property is a collection of MapArea objects. Each MapArea object has properties that specify a tooltip to be displayed when the user moves the mouse over the area, and an action to be performed when the area is clicked.

The ImageAreas property has a set of built-in areas, created automatically by the control:

· ChartArea, PlotArea

· AxisX, AxisY, AxisY2

· ChartData (one <area> tag per data point or series)

· ChartLabel (one <area> tag per label)

· Header, Footer

· Legend, LegendItem (one <area> tag per item)

You can add your own MapArea objects using the collection’s Add method. When you create new MapArea objects, specify their shape (circle, rectangle or polygon) and the coordinates of the area to be created. You can do this at design time, using the collection editor, or using code. For example:

MapArea a = new MapArea();

a.Shape = AreaShapeEnum.Rectangle;

a.Coords = new int[] { 169,225,175,240 };

a.Tooltip = "My Custom Area";

_c1wc.ImageAreas.Add(a);

The coordinates are specified as an array of integers. This array corresponds to the ‘coords’ attribute of the <area> tag. The meaning of the array elements depends on the shape of the area:

Shape | Coords | Description
Circle | "x1,y1,r" | x1,y2 are the coordinates of the center of the circle, and r is the radius of the circle.
Polygon | "x1,y1,x2,y2...xn,yn" | Each x,y pair contains the coordinates of one vertex of the polygon.
Rectangle | "x1,y1,x2,y2" | x1,y1 are the coordinates of the upper-left corner of the rectangle and x2,y2 are the coordinates of the lower-right coordinates of the rectangle.

You can obtain coordinate values for the various chart elements using methods and properties exposed by C1WebChart.


Tooltip Property (MapArea)

Tooltip Property (MapArea)

Specifies a tooltip for the MapArea.

Syntax

[VB]

Public Property Tooltip As String

[C#]

public string Tooltip { get; set; }

[Delphi]

property Tooltip: string;

Remarks

This property applies to C1WebChart.

Each MapArea can have a tooltip string specified. The tooltip appears when the end-user scrolls over the appointed MapArea. The string is automatically HTML encoded as appropriate and appears as the value of the <AREA> tag Title attribute. There are special entries for Tooltip entries that will be translated by the chart.

Keyword | Chart element | Note | Description
#TEXT | All |  | Represents text property value of chart element.
#XVAL | ChartData, ChartLabel |  | Represents X data coordinate.
#YVAL | ChartData, ChartLabel |  | Represents Y data coordinate.
#Y1VAL | ChartData | 2D only | Represents Y1 data coordinate.
#Y2VAL | ChartData | 2D only | Represents Y2 data coordinate.
#Y3VAL | ChartData | 2D only | Represents Y3 data coordinate.
#ISERIES | ChartData, ChartLabel, LegendItem | 2D only | Represents data series index.
#IPOINT | ChartData, ChartLabel | 2D only | Represents data point index.

The keywords should be placed in braces with optional formatting. Formatting rules are same as for .Net framework string.Format() method.

For example:

map.Tooltip = "X={#XVAL}, Y={#YVAL}";

map.Tooltip = "{#XVAL:d} {#YVAL:c}";

During image map generation special keywords will be replaced by corresponding values with the specified formatting.

See Also

MapArea Class


Tutorial 1 - Using a File-based Rendering Method

Tutorial 1 – Using a File-based Rendering Method

1. Place a WebChart control on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to ImageRenderMethodEnum.File.

4. Ensure the ImageUri property is blank.

Run the program and notice the following:

The image tag created should look similar to the following:

<img id=_c1wc
src=C1WebChartTemp/c1c_105_f1_d814d8cf.png>

The “C1WebChartTemp” directory is always assumed if a virtual path is not specified. File security settings must allow writing here for the anonymous web user.

Because the ImageUri property is blank, the control manufactures a name for the temporary file. The manufactured name is a hash code of the chart properties, and is virtually unique for each different chart.


Tutorial 2 - Using HTTPHandler with a Session-based Transfer Method and a Unique Image ID

Tutorial 2 – Using HTTPHandler with a Session-based Transfer Method and a Unique Image ID

1. Place a C1WebChart on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “HttpHandler”.

4. Set the ImageTransferMethod property to “Session”.

5. Set the ImageIDGeneration property to “Unique”.

6. Set the ImageUri property to an empty string.

7. Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”,
In the Solution Explorer, double-click the “Web.Config” file,
Place the cursor below <system.web> and select “Paste”.

The last step configures the application to enable the C1WebChart’s built-in HttpHandler. The Web.Config file in your project should contain this entry:

<configuration>

<system.web>

<httpHandlers>

<add verb="*" path="c1webchartimage.aspx"

type="C1.Web.C1WebChart.ImageHttpHandler,C1.Web.C1WebChart"/>

</httpHandlers>

</system.web>

<configuration>

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc src='c1webchartimage.aspx?SessionID=91…93&Delete=T'/>

Because the ImageIDGeneration property is set to “Unique”, the “SessionID” attribute is unique for each rendering of the chart. It provides access to the following Session variables:

91…93_ImageBytes (image)

91…93_Hash (hash code and image type)

The “Delete=T” attribute causes the session variables to be deleted after the data is received by the HTTPHandler. This attribute is always invoked for Unique IDs.

The “httpHandler” entry in the Web.Config file contains the page alias for the class within C1WebChart that handles the http request. In this case, the alias it set to the default value “c1webchartimage.aspx”. For more details on this, see IHttpHandler Help in the .NET documentation.


Tutorial 3 - Using HTTPHandler with a Cache-based Transfer Method and a Unique Image ID

Tutorial 3 – Using HTTPHandler with a Cache-based Transfer Method and a Unique Image ID

1. Place a C1WebChart on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “HttpHandler”.

4. Set the ImageTransferMethod property to “Cache”.

5. Set the ImageIDGeneration property to “Unique”.

6. Set the ImageUri property to an empty string.

7. Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”
In the Solution Explorer, double-click the “Web.Config” file
Place the cursor below <system.web> and select “Paste”.

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc src='c1webchartimage.aspx?CacheID=91…93&Delete=T'/>

Because the ImageIDGeneration property is set to “Unique”, the “CacheID” attribute is unique for each rendering of the chart. It provides access to the following Cache entries:

91…93_ImageBytes (image)

91…93_Hash (hash code and image type)

The “Delete=T” attribute causes the cache entries to be deleted after the data is received by the HTTPHandler. This attribute is always invoked for Unique IDs.


Tutorial 4 - Using the HTTPHandler with a File-based Transfer Method and a Unique Image ID

Tutorial 4 – Using the HTTPHandler with a File-based Transfer Method and a Unique Image ID

1. Place a C1WebChart on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “HttpHandler”.

4. Set the ImageTransferMethod property to “File”.

5. Set the ImageIDGeneration property to “Unique”.

6. Set the ImageUri property a viable folder on the server. To use the C1WebChart’s sample folder, for example, use:

/C1WebChartApps/Sample/c1webchartimage.aspx

7. Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”
In the Solution Explorer, double-click the “Web.Config” file
Place the cursor below <system.web> and select “Paste”.

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc

src='c1webchartimage.aspx?FileID=/C1WebChartApps/Sample/91…93.png&Delete=T'/>

Because the ImageIDGeneration property is set to “Unique”, the FileID is unique for each rendering of the chart. It contains the virtual path to the temporary file used for the transfer. The virtual path consists of the virtual directory specified by the ImageUri property and a file name manufactured from the image type and the unique ID string. The file part of the ImageUri property is used to specify the HTTPHandler page.

If the ImageUri property is blank, default values are used.

The “Delete=T” attribute causes the temporary file to be deleted after the data is received by the HTTPHandler. This attribute is always invoked for Unique IDs.


Tutorial 5 - Using the HTTPHandler with a Session-based Transfer Method and a per-Application Image ID

Tutorial 5 – Using the HTTPHandler with a Session-based Transfer Method and a per-Application Image ID

1. Place a C1WebChart on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “HttpHandler”.

4. Set the ImageTransferMethod property to “Session”.

5. Set the ImageIDGeneration property to “Application”.

6. Set the ImageUri property to an empty string.

7. Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”
In the Solution Explorer, double-click the “Web.Config” file
Place the cursor below <system.web> and select “Paste”.

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc

src='c1webchartimage.aspx?SessionID=WebForm1.aspx_C1WebChart1_9F0D3D0E'/>

The “SessionID” attribute is common for each rendering of the chart. This allows existing images to be reused if no changes occur. Since the session object is distinct for each browser session, data is secure for each client. The “SessionID” attribute provides access to the following Session variables:

WebForm1…9F0D3D0E_ImageBytes (image)

WebForm1…9F0D3D0E_Hash (hash code and image type)

In this case, the _Hash variable contains the following string:

"c1c_104_f1_c69d1f91.png"

This string is uniquely generated from the contents of the chart properties. Each time C1WebChart renders itself, it checks the value of the current hash with the existing hash in the Session object. If there has been no change, then the chart image need not be recreated. This behavior is built into the internal HTTPHandler in C1WebChart to help reduce server load.

The Session object variables names do not change from one render to the next (only the values change), so it is not necessary to delete the session variables with each rendering.


Tutorial 6 - Using the HTTPHandler with a Cache-based Transfer Method and a per-Application Image ID

Tutorial 6 – Using the HTTPHandler with a Cache-based Transfer Method and a per-Application Image ID

1. Place a C1WebChart on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “HttpHandler”.

4. Set the ImageTransferMethod property to “Cache”.

5. Set the ImageIDGeneration property to “Application”.

6. Set the ImageUri property to an empty string.

7. Set the Page.ID property.

8. Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”
In the Solution Explorer, double-click the “Web.Config” file
Place the cursor below <system.web> and select “Paste”.

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc

src='c1webchartimage.aspx?SessionID=WebForm1.aspx_C1WebChart1_9F0D3D0E'/>

The “SessionID” attribute is common for each rendering of the chart. This allows existing images to be reused if no changes occur. Since the session object is distinct for each browser session, data is secure for each client. The “SessionID” attribute provides access to the following Session variables:

WebForm1…9F0D3D0E_ImageBytes (image)

WebForm1…9F0D3D0E_Hash (hash code and image type)

In this case, the _Hash variable contains the following string:

"c1c_104_f1_c69d1f91.png"

This string is uniquely generated from the contents of the chart properties. Each time C1WebChart renders itself, it checks the value of the current hash with the existing hash in the Session object. If there has been no change, then the chart image need not be recreated. This behavior is built into the internal HTTPHandler in C1WebChart to help reduce server load.

The Session object variables names do not change from one render to the next (only the values change), so it is not necessary to delete the session variables with each rendering.


Tutorial 7 - Using the HTTPHandler with a File-based Transfer Method and a per-Application Image ID

Tutorial 7 – Using the HTTPHandler with a File-based Transfer Method and a per-Application Image ID

1. Place a C1WebChart control on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “HttpHandler”.

4. Set the ImageTransferMethod property to “File”.

5. Set the ImageIDGeneration property to “Application”.

6. Set the ImageUri property a viable folder on the server. To use the C1WebChart’s sample folder, for example, use:

/C1WebChartApps/Sample/c1webchartimage.aspx

7. Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”
In the Solution Explorer, double-click the “Web.Config” file
Place the cursor below <system.web> and select “Paste”.

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc

rc='c1webchartimage.aspx?FileID=C1WebChartTemp/WebForm1.aspx_C1WebChart1.png'/>

Because the ImageIDGeneration property is set to “Application”, the FileID is common for each rendering of the chart and contains a virtual path to the temporary file used for the transfer. The virtual path consists of the virtual directory specified by the ImageUri property, and the file manufactured from the image type and the ID string. The file part of the ImageUri property is used to specify the HttpHandler page (it must match the “httpHandler” entry in the Web.Config file).

Image files created in this manner are set to expire based upon Absolute and Sliding expiration. The files are actually deleted during the next render, or by rendering of other C1WebChart files in the same directory.


Tutorial 8 - Using an ASP Page-based Rendering Method with a Session-based Transfer Method

Tutorial 8 – Using an ASP Page-based Rendering Method with a Session-based Transfer Method

1. Place a WebChart on a form.

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “ASPPage”.

4. Set the ImageTransferMethod property to “Session”.

5. Set the ImageIDGeneration property to “Unique”.

6. Set the ImageUri to the above ASP Page ( “StreamResponse.aspx”).

(ImageUri = C:\…StreamResponse.aspx).

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc src='StreamResponse.aspx?SessionID=3b…a5&Delete=T'/>

Because the ImageIDGeneration property is set to “Unique”, the SessionID is unique for each rendering of the chart.

The Session object variables are:

3b…a5_ImageBytes (image)

3b…a5_Hash (hash code and image type)

The “Delete=T” attribute means the ASP Page is expected to remove the session variables after the data is received by the page. Delete is always requested for Unique Ids, and is handled by the “SreamResponse.aspx” code above.

Using an ASP Page instead of the internal HttpHandler allows full control of the stream to be sent to the client. The code given above provides exactly the same function as used by the internal HttpHandler.

ImageUri specifies the full path to the ASP Page used to handle the image. Note that the file part of the Uri must not be the same as any HttpHandlers added to Web.Config. If the same name is used, ASP.NET will use the HttpHandlers instead of the page.

If the ImageTransferMethod were changed to “Cache”, the generated image tag would be identical in format, except that a “CacheID” would be specified instead of the “SessionID”, and the data would be added to the application cache instead of the session object.


Tutorial 9 - Using an ASP Page-based Rendering Method with a Cache-based Transfer Method

Tutorial 9 – Using an ASP Page-based Rendering Method with a Cache-based Transfer Method

1. Place a WebChart on a form

2. Configure the data and appearance elements as desired.

3. Set the ImageRenderMethod property to “ASPPage”.

4. Set the ImageTransferMethod property to “Cache”.

5. Set the ImageIDGeneration property to “Application”.

6. Set the ImageUri to the above ASP Page (“StreamResponse.aspx”).

(ImageUri = C:\…StreamResponse.aspx)

7. Set the SlidingExpiration property to “00:00:30”.

Run the program and notice the following:

The image tag created should look similar to:

<img id=_c1wc src='StreamResponse.aspx?CacheID=WebForm1.aspx_C1WebChart1_9F0D3D0E'/>

Because the ImageIDGeneration property is set to “Unique”, the CacheID is unique for each rendering of the chart.

The Cache object variables are:

WebForm…3D0E_ImageBytes (image)

WebForm…3D0E_Hash (hash code and image type)

Because the SlidingExpiration property is set to 30 seconds, the lifetime of the cache variables is 30 seconds from the last access.

Using an ASP Page instead of the internal HttpHandler allows full control of the stream to be sent to the client. The code given above provides exactly the same function as used by the internal HttpHandler.

ImageUri specifies the full path to the ASP Page used to handle the image. Note that the file part of the Uri must not be the same as any HttpHandlers added to Web.Config. If the same name is used, ASP.NET will use the HttpHandlers instead of the page.

If the ImageTransferMethod were changed to “Session”, the generated image tag would be identical in format, except that a “SessionID” would be specified instead of the “CacheID”, and the data would be added to the Application Cache instead of the Session object.


Uninstalling C1WebChart for ASP.NET

To uninstall C1WebChart for ASP.NET, open the Control Panel application, select the "Add or Remove Programs" option, select C1WebChart for ASP.NET and click the "Remove" button.


Unit - C#

C#

string code =
"namespace UserFunction" +
"{" +
" class Calculator : ISimpleFunction" +
" {" +
" public double Calculate(double x)" +
" {" +
" double x2 = x*x;" +
" if( x<0)" +
" return -x;" +
" else" +
" return -0.5*x2;" +
" }" +
" }" +
"}";

C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();

yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Unit;

yf.CodeText = code;

yf.MinX = -5;

yf.MaxX = 5;

yf.LineStyle.Color = Color.Green;

yf.LineStyle.Thickness = 2;

c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add( yf);


Unit - Delphi

Delphi

var

code: string;

yf: C1.Win.C1Chart.YFunction;

begin

code :=

'namespace UserFunction' +

'{' +

' class Calculator : ISimpleFunction' +

' {' +

' public double Calculate(double x)' +

' {' +

' double x2 = x*x;' +

' if( x<0)' +

' return -x;' +

' else' +

' return -0.5*x2;' +

' }' +

' }' +

'}';

yf := C1.Win.C1Chart.YFunction.Create;

yf.CodeType := C1.Win.C1Chart.FunctionCodeTypeEnum.Unit;

yf.CodeText := code;

yf.MinX := -5;

yf.MaxX := 5;

yf.LineStyle.Color := Color.Green;

yf.LineStyle.Thickness := 2;

C1Chart1.ChartGroups[0].ChartData.FunctionsList.Add( yf);

end;


Unit - Visual Basic

Visual Basic

Dim code As String = _
"Namespace UserFunction" & vbNewLine & _
" Class Calculator" & vbNewLine & _
" Implements ISimpleFunction" & vbNewLine & _
" Public Function Calculate(x As Double) As Double _" & vbNewLine & _
" Implements ISimpleFunction.Calculate" & vbNewLine & _
" Dim x2 As Double = x*x" & vbNewLine & _
" if( x<0)" & vbNewLine & _
" return -x" & vbNewLine & _
" else" & vbNewLine & _
" return -0.5*x2" & vbNewLine & _
" End If" & vbNewLine & _
" End Function" & vbNewLine & _
" End Class" & vbNewLine & _
"End Namespace"

Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()

yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Unit

yf.CodeLanguage = C1.Win.C1Chart.FunctionCodeLanguageEnum.VB

yf.CodeText = code

yf.MinX = -5

yf.MaxX = 5

yf.LineStyle.Color = Color.Green

yf.LineStyle.Thickness = 3

C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)


UseAntiAlias Property (C1WebChart)

UseAntiAlias Property (C1WebChart)

Sets the interval between the time the image was last accessed and the time when the image expires from the session, cache, or file object.

Syntax

[VB]

Public Property UseAntiAlias As String

[C#]

public string UseAntiAlias { get; set; }

[Delphi]

property UseAntiAlias: string;

Remarks

This property applies to C1WebChart.

If this value is the equivalent of 5 minutes, the image expires and is removed from the transfer object 5 minutes after it was last accessed.

See Also

C1WebChart Class


User Interaction with C1WebChart

C1WebChart allows you to associate tooltips and links with chart elements, so the chart responds to mouse events. This is done using an HTML image map, which is handled on the client.

The image map is defined by the ImageAreas property, a collection of chart elements with associated dynamic tooltips and HRefs. The tooltips allow you to specify the text that is displayed to the user when he moves the mouse over chart elements. The HRefs allow you to specify actions to be taken when the user clicks a chart element.

When the ImageAreas contains non-empty elements, C1WebChart automatically generates <map> and <area> tags, and associates the map with the chart by adding a “usemap” attribute to the chart’s image tag.

Note that the automatic creation of image maps does not work when the ImageRenderMethod property is set to BinaryWrite. The workaround is to create a web chart with image maps on a web page other than the one that contains the resulting image.


Using ASP.NET

Creating an ASP.NET Project


Using C1WebChart for ASP.Net

This section starts with a walkthrough of C1WebChart, covering the main aspects of its usage. Later sections drill down into the details involved in each step and provide in-depth knowledge of the control.


UsingChartLabels1 - C#

C#

C1Chart1.ChartLabels.LabelsCollection[0].Text = "First label in collection";


UsingChartLabels1 - Delphi

Delphi

begin

C1Chart1.ChartLabels.LabelsCollection[0].Text := 'First label in collection');

end;


UsingChartLabels1 - Visual Basic

Visual Basic

C1Chart1.ChartLabels.LabelsCollection(0).Text = "First label in collection"


UsingChartLabels2 - C#

C#

C1.Win.C1Chart.Label Clabel;

Clabel = C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();


UsingChartLabels2 - Delphi

Delphi

var

Clabel: C1.Win.C1Chart.Label;

begin

Clabel := C1Chart1.ChartLabels.LabelsCollection.AddNewLabel();

end;


UsingChartLabels2 - Visual Basic

Visual Basic

Dim Clabel As C1.Win.C1Chart.Label

Clabel = C1Chart1.ChartLabels.LabelsCollection


ValueLabels Annotation1 - C#

C#

ValueLabelsCollecton VlColl = C1Chart1.ChartArea.AxisX.ValueLabels;

VlColl.Add(1, "one");

VlColl.Add(2, "two");

VlColl.Add(3, "three");

C1Chart1.ChartArea.AxisX.AnnoMethod = AnnotationMethodEnum.ValueLabels;


ValueLabels Annotation1 - Delphi

Delphi

var

VlColl: ValueLabelsCollection;

begin

VlColl := C1Chart1.ChartArea.AxisX.ValueLabels;

VlColl.Add(1, 'one');

VlColl.Add(2, 'two');

VlColl.Add(3, 'three');

C1Chart1.ChartArea.AxisX.AnnoMethod := AnnotationMethodEnum.ValueLabels;

end;


ValueLabels Annotation1 - Visual Basic

Visual Basic

With C1Chart1.ChartArea.AxisX.ValueLabels

.Add(1, "one")

.Add(2, "two")

.Add(3, "three")

End With

C1Chart1.ChartArea.AxisX.AnnoMethod = AnnotationMethodEnum.ValueLabels


ValueLabelsAnnotation2 - C#

C#

C1Chart1.ChartArea.AxisX.ValueLabels[0].Text = "one";

C1Chart1.ChartArea.AxisX.ValueLabels[1.0].Text = "one";

C1Chart1.ChartArea.AxisX.ValueLabels["one"].Text = "one";


ValueLabelsAnnotation2 - Delphi

Delphi

begin

C1Chart1.ChartArea.AxisX.ValueLabels[0].Text = 'one';

C1Chart1.ChartArea.AxisX.ValueLabels[1.0].Text = 'one';

C1Chart1.ChartArea.AxisX.ValueLabels['one'].Text = 'one';

end;


ValueLabelsAnnotation2 - Visual Basic

Visual Basic

C1Chart1.ChartArea.AxisX.ValueLabels(0).Text = "one"

C1Chart1.ChartArea.AxisX.ValueLabels(1.0).Text = "one"

C1Chart1.ChartArea.AxisX.ValueLabels("one").Text = "one"


Visual Basic and C# Samples

Bar3D | Demonstrates the use of a 3D bar chart in the web environment. This sample uses a C1WebChart3D control.
BinaryRender | Demonstrates the use of the BinaryRender option of C1WebChart. This sample uses a C1WebChart control.
NorthWindCharts | Demonstrates the use of a database with a 2D chart in the Web environment. This sample uses a C1WebChart control.
Simple2D | Demonstrates the use of a 2D chart in the Web environment. This sample uses a C1WebChart control.
Simple3D | Demonstrates the use of a 3D chart in the web environment. This sample uses a C1WebChart3D control.


WebChart for .ASP.NET Setup Files

The installation program will create a directory called "ComponentOne Studio.NET" under "Program Files". This directory will contain the following subdirectories:

bin | Contains copies of all binaries (DLLs, EXEs) in the ComponentOne Visual Studio.NET package.
Common | Contains support and data files that are used by many of the demo programs.
Demos | Contains demo projects for all Studio components.
Help | Contains online documentation for all Studio components.
C1WebChart | Contains samples and tutorials for the C1WebChart component.


WebChart Namespaces1 - C#

C#

C1.Web.C1WebChart.C1WebChart webchart;


WebChart Namespaces1 - Delphi

Delphi

webchart: C1.Web.C1WebChart.C1WebChart;


WebChart Namespaces1 - Visual Basic

Visual Basic

Dim webchart As C1.Web.C1WebChart.C1WebChart


WebChart Namespaces2 - C#

C#

using C1.Web.C1WebChart = MyWebChart;

MyWebChart webchart;


WebChart Namespaces2 - Delphi

Delphi

uses MyWebChart := C1.Web.C1WebChart;

webchart: MyWebChart;


WebChart Namespaces2 - Visual Basic

Visual Basic

Imports MyWebChart = C1.Web.C1WebChart

Dim webchart As MyWebChart


WebChart Namespaces3 - C#

C#

using C1.Web.C1WebChart;

using C1.Win.C1Chart;


WebChart Namespaces3 - Delphi

Delphi

uses C1.Web.C1WebChart;

uses C1.Win.C1Chart;


WebChart Namespaces3 - Visual Basic

Visual Basic

Imports C1.Web.C1WebChart

Imports C1.Win.C1Chart


Welcome to ComponentOne WebChart for ASP.NET

ComponentOne WebChart for ASP.NET allows you to add charts to your ASP.NET web pages. C1WebChart for ASP.NET is powerful, versatile, and easy-to-use. You can drag charts onto your web pages, use the built-in Wizard to configure the chart type and appearance, and add user interaction features without writing any code.

C1WebChart creates charts on the server and handles the tasks of caching the chart data and delivering the charts to web clients.

C1WebChart leverages the power of the C1Chart control to create the charts. C1Chart is a popular and powerful WinForms control that allows you to create various types of charts to display complex data. If you already know how to use C1Chart, you will find C1WebChart extremely familiar. Conversely, once you learn C1WebChart, you will also be able to use C1Chart in your WinForms applications.

ComponentOne has a user-friendly distribution policy. We want every Visual Studio developer to get copies of our products and try them for as long as they want. Those who like the tools and find them useful can buy licenses at reasonable prices. The only restriction is that unlicensed copies of the software will display a ComponentOne banner when they are loaded, as a friendly reminder that we do expect people to pay for the software if they use it on a regular basis.

As the user of this product and documentation, you are our most important critic. We value your opinion and would like to know what we are doing right and where we can improve. If you have suggestions or ideas to improve our products and documentation, please call us or write.

If you like ComponentOne WebChart for ASP.NET, check out our other products by visiting the ComponentOne website.

If you have suggestions or ideas for new features or new tools, please call us or write.

Corporate Headquarters

ComponentOne LLC
201 South Highland Avenue
3rd Floor
Pittsburgh, PA 15206 • USA
412.681.4343
412.681.4384 (Fax)

http://www.componentone.com

Overview

What's New in ComponentOne WebChart for ASP.NET

Installing WebChart for ASP.NET

END-USER LICENSE AGREEMENT FOR COMPONENTONE SOFTWARE

Licensing FAQs

Technical Support

Redistributable Files

Namespaces

Creating an ASP.NET Project

Adding the C1WebChart Components to the Toolbox


What's New in ComponentOne WebChart for ASP.NET

This documentation was last revised on August 19, 2005. There are no new features for WebChart for ASP.NET at this time.


Working with Two URLs

To have a chart image appear in a client’s browser, C1WebChart (or the developer, if in Manual mode) will have to handle at least two URL’s. The page specified by the first URL (the main page) is where the <IMG> tag will be created, and it can be used to gather information via input controls, layout the resulting display of the chart image amid text, and include other controls.

A second URL will be necessary to retrieve the actual chart image (jpeg, png, gif) to be displayed as the source attribute of the original page <IMG> tag.

The .aspx page identified by the first URL will result in HTML that contains:

<img src='second-url' />

Except for the Manual render method, the second URL accesses the chart image data, so conceptually the <IMG> tag is really:

<img src='second URL handles a request for an image' />

This handle is either a path to an image file, an HTTPHandler, or a path to another .aspx page that will complete the stream. The ImageRenderMethod determines what form the <IMG> tag will take.

ImageRenderMethod Property

The ImageRenderMethod Property is the main property in C1WebChart which determines how the <IMG> tag and its arguments get created, as well as who renders or streams the chart image back to the client (source attribute of the <IMG> tag). The different render methods vary from the more automated methods (HTTPHandler, File) to the less automated (Manual).

In addition, for each of the render methods except Binary Write, the ImageUri property specifies a path necessary for correct image creation. Since this property has different functions for different methods, the details of render methods and the function of the ImageUri property for that method are listed below.

ImageRenderMethodEnum.File

This setting creates temporary image files on the server. It is recommended in situations where you expect a lot of requests for a relatively small number of charts, or in situations where charts are complex and expensive to generate and do not change often.

By default, C1WebChart creates image file names automatically, based on a hash code obtained from the chart data itself. If the specified file is found on the server, the chart doesn’t have to be re-created, which makes this mechanism efficient. However, if the chart data changes often, a large number of image files will be created on the server. Depending upon other property settings the may or may not delete these files automatically.

Because it relies on the file system, this method enables the implementation of security settings to control which usernames may render and view the chart.

The ImageUri property specifies the path and filename of the image file to be generated. If you leave ImageUri empty, these names are automatically manufactured by the C1WebChart control. For both C1WebChart and C1WebChart3D, the default temporary file directory is “C1WebChartTemp”.

The following example shows the type of <img> tag that this method creates:

<img id='c1wc' src='C1WebChartTemp/c1c_105….png' />

The ‘src’ attribute specifies the location of the temporary image file on the server, and the file name contains a hash code that is unique for the chart data. Since this method doesn’t require transferring image data, the ImageTransferMethod property is not relevant.

Note: This render method not only allows the use of file security, it also requires it. The directory where the image files are created must have write permission for all usernames running the application.

ImageRenderMethodEnum.HTTPHandler

This is the default setting. It provides a fast and efficient way to render the chart images. Instead of image files, C1WebChart uses its internal HttpHandler to resolve the image URL and stream the image data directly to the client.

This method requires that you to add an appropriate HttpHandler entry to the Web.Config file in the project. C1WebChart makes this process easy by providing an option in its context menu that copies the required entry to the clipboard. These are the steps required to add the HttpHandler entry to your Web.Config file:

· Right-click the C1WebChart control and select “HttpHandler string to clipboard (tagged)”

· In the Solution Explorer, double-click the “Web.Config” file

· Place the cursor below <system.web> and select “Paste”. The Web.Config file should look like this:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<system.web>

<httpHandlers>

<add verb="*" path="c1chartimage.aspx"

type="C1.Web.C1WebChart.ImageHttpHandler,C1.Web.C1WebChart"/>

</httpHandlers>

…

If your Web.Config file already contains other HttpHandlers, select the non-tagged option instead (“HttpHandler string to clipboard”) or edit the xml file directly. For example multiple HttpHandlers are used when you include both C1WebChart and C1WebChart3D in the same application.

Note that the xml entry contains a value that reflects the setting of the ImageUri property. If you change the value of that property and forget to update the Web.Config file, ASP.NET will at best, throw an exception, and at worst use the wrong HttpHandler. Fortunately, the error message points clearly to the HttpHandler. The easiest way to fix this problem is to repeat the steps above whenever you change the ImageUri property.

The ImageUri property allows you to specify a virtual directory and file name. The virtual directory is used to store chart data when the ImageTransferMethod is set to File. The file name identifies which HttpHandler to use and should match the corresponding entry in the Web.Config file. If you leave ImageUri empty, these names are automatically manufactured by the C1WebChart and C1WebChart3D controls and are c1webchartimage.aspx and c1webchart3dimage.asp, respectively.

The following example shows the type of <img> tag that this method creates:

<img id='c1wc' src='c1webchartimage.aspx?SessionID=87987…' />

The ‘src’ attribute specifies the filename associated with the HttpHandler and also a parameter that describes where the handler can find the data it needs in order to create the chart. In this case the parameter is a SessionID, but could also be a CacheID or temporary file, depending on the setting of the ImageTransferMethod property.

ImageRenderMethodEnum.ASPPage

This setting requires you to create a second ASP page that is responsible streaming the chart data back to the first page through a call to the Response.Write method.

This method is useful for gaining greater control of the binary response stream returning the chart image to the page. By authoring a separate ASP page for the response, it is possible to customize management of the response, including the client cache, server cache, and IIS logging. Other positive attributes are that the <img> tag is automatically generated and properly placed, image maps are available, and data transfer to the second ASP page is managed automatically.

The ImageUri property specifies the path to the second ASP page.

The following example shows the type of <img> tag that this method creates:

<img id='c1wc' src='mySecondPage.aspx?CacheID=87987…' />

The ‘src’ attribute specifies the location of the second ASP page and also a parameter that describes where the page can find the information required to create the chart. In this case the parameter is a CacheID, but could also be a SessionID entry or temporary file, depending on the setting of the ImageTransferMethod property.

ImageRenderMethodEnum.Manual

This setting requires you to render the image and send it to the page. Because you have to do most of the work yourself, you get the most flexibility.

C1WebChart still stores the image data in the Session, Cache, or temporary file, depending on the setting of the ImageTransferMethod property. This information can be used to create the chart image that will be returned to the client.

ImageRenderMethodEnum.BinaryWrite

This setting requires you to create a second ASP page that is responsible streaming the raw chart data (a byte array).

This method is useful when it is not necessary to include the chart in the context of an ASP page at design time, and sufficient information can be passed to the control to render the proper image through other means. For example, you may want to load the chart layout from a file and configure only a few display elements.

The main difference between this method and the others is that here the chart creation parameters are embedded in the <img> tag itself, rather than stored in the Session, Cache, or temporary files. This process is more streamlined than all others and reduces server resource requirements, since no data transfer from one page to another is required. One drawback is that image maps and the resulting end-user interaction are not available.

The following example shows the type of <img> tag that this method creates:

<img id='c1wc' src='renderSalesChart.aspx?Color=Red&Type=XYPlot' />

Notice that all the information required to create the chart is available in the ‘src’ attribute itself. No information is stored in the cache, session, or temporary files, so the ImageTransferMethod property is not relevant.


XYPlots - C#

C#

// get chart data

DataView data = _dataSet.Tables["Sales"].DefaultView;

data.Sort = "UnitPrice";

// configure chart

C1Chart1.Reset();

C1Chart1.ChartGroups[0].ChartType = Chart2DTypeEnum.XYPlot;

// create single series for product price vs sales

ChartDataSeriesCollection dscoll = C1Chart1.ChartGroups[0].ChartData.SeriesList;

dscoll.Clear();

ChartDataSeries series = dscoll.AddNewSeries();

// show symbols only (no lines)

series.SymbolStyle.Color = Color.Green;

series.SymbolStyle.OutlineColor = Color.Black;

series.LineStyle.Pattern = LinePatternEnum.None;

// populate the series

series.PointData.Length = data.Count;

for (int i = 0; i < data.Count; i++)

{

series.X[i] = data[i]["UnitPrice"];

series.Y[i] = data[i]["ProductSales"];

}

// attach product names to x-axis

Axis ax = C1Chart1.ChartArea.AxisX;

ax.Text = "Unit Price (US$)";

ax.AnnoFormat = FormatEnum.NumericCurrency;

ax.GridMajor.Visible = true;

// configure y-axis

Axis ay = C1Chart1.ChartArea.AxisY;

ay.Text = "Sales (thousand US$)";

ay.AnnoFormat = FormatEnum.NumericManual;

ay.AnnoFormatString = "$#,##0,";

ay.GridMajor.Visible = true;


XYPlots - Delphi

Delphi

var

data: DataView;

dscoll: ChartDataSeriesCollection;

series: ChartDataSeries;

i : Integer;

ax, ay: Axis;

begin

// get chart data

data := _dataSet.Tables['Sales'].DefaultView;

data.Sort := 'UnitPrice';

// configure chart

C1Chart1.Reset();

C1Chart1.ChartGroups[0].ChartType := Chart2DTypeEnum.XYPlot;

// create single series for product price vs sales

dscoll := C1Chart1.ChartGroups[0].ChartData.SeriesList;

dscoll.Clear();

series := dscoll.AddNewSeries();

// show symbols only (no lines)

series.SymbolStyle.Color := Color.Green;

series.SymbolStyle.OutlineColor := Color.Black;

series.LineStyle.Pattern := LinePatternEnum.None;

// populate the series

series.PointData.Length := data.Count;

for i := 0 to data.Count – 1 do

begin

series.X[i] := data[i]['UnitPrice'];

series.Y[i] := data[i]['ProductSales'];

end;

// attach product names to x-axis

ax := C1Chart1.ChartArea.AxisX;

ax.Text := 'Unit Price (US$)';

ax.AnnoFormat := FormatEnum.NumericCurrency;

ax.GridMajor.Visible := true;

// configure y-axis

ay := C1Chart1.ChartArea.AxisY;

ay.Text := 'Sales (thousand US$)';

ay.AnnoFormat := FormatEnum.NumericManual;

ay.AnnoFormatString := '$#,##0,';

ay.GridMajor.Visible := true;

end;


XYPlots - Visual Basic

Visual Basic

' get chart data

Dim data As DataView = _dataSet.Tables("Sales").DefaultView

data.Sort = "UnitPrice"

' configure chart

C1Chart1.Reset()

C1Chart1.ChartGroups(0).ChartType = Chart2DTypeEnum.XYPlot

' create single series for product price vs sales

Dim dscoll As ChartDataSeriesCollection = _
C1Chart1.ChartGroups(0).ChartData.SeriesList;

dscoll.Clear();

Dim series As ChartDataSeries = dscoll.AddNewSeries()

' show symbols only (no lines)

series.SymbolStyle.Color = Color.Green

series.SymbolStyle.OutlineColor = Color.Black

series.LineStyle.Pattern = LinePatternEnum.None

' populate the series

series.PointData.Length = data.Count

Dim i As Integer

For i = 0 To data.Count – 1

series.X(i) = data(i)("UnitPrice")

series.Y(i) = data(i)("ProductSales")

Next I

' attach product names to x-axis

Dim ax As Axis = C1Chart1.ChartArea.AxisX

ax.Text = "Unit Price (US$)"

ax.AnnoFormat = FormatEnum.NumericCurrency

ax.GridMajor.Visible = True

' configure y-axis

Dim ay As Axis = C1Chart1.ChartArea.AxisY

ay.Text = "Sales (thousand US$)"

ay.AnnoFormat = FormatEnum.NumericManual

ay.AnnoFormatString = "$#,##0,"

ay.GridMajor.Visible = True


Untitled Document

Send feedback to ComponentOne
Copyright © 1987-2005 ComponentOne LLC. All rights reserved.


Untitled Document

 E-mail sent to documentation@componentone.com is for documentation feedback only. We welcome any suggestions to help improve our documentation.