Tuesday, June 17, 2008

How to create composition Chart with Infragistics

There are several steps required to set up the first chart layer in a composite chart. Since composite charts allow complete control over your chart, it is necessary to add all the individual elements, such as a chart area, axes, and a chart layer manually. This first section walks through these first steps in detail.
At the end of this section, you will have created a composite chart with two axes, a single chart layer, and a legend.
Change the ChartType property to "Composite".
A message will be displayed in red, briefly explaining what is required for a working composite chart.
This tutorial aims to guide you through these steps in detail. The collections referred to are all found under the CompositeChart property of the chart. You can observe this by expanding the CompositeChart property in the Visual Studio .NET properties grid.


http://help.infragistics.com/Help/NetAdvantage/NET/2007.2/CLR2.0/html/Chart_Creating_a_Composite_Chart_Using_the_Designer_Part_1_of_2.html



Dim dt As New DataTable()
dt.Columns.Add("col1", GetType(Integer))dt.Columns.Add("col2", GetType(Integer))
dt.Columns.Add("col3", GetType(Integer))dt.Columns.Add("col4", GetType(String))
dt.Rows.Add(New Object() {2, 14, 12, "H1"})dt.Rows.Add(New Object() {0, 11, 10, "H2"})
dt.Rows.Add(New Object() {1, 9, 11, "H3"})dt.Rows.Add(New Object() {0, 10, 11, "H4"})
dt.Rows.Add(New Object() {4, 12, 9, "H5"})dt.Rows.Add(New Object() {1, 11, 10, "H6"})
dt.Rows.Add(New Object() {1, 8, 7, "H7"})dt.Rows.Add(New Object() {2, 10, 10, "H8"})
Me.UltraChart1.ChartType = ChartType.CompositeDim area As New ChartArea()
Me.UltraChart1.CompositeChart.ChartAreas.Add(area)Dim xAxisColumn As New AxisItem(Me.UltraChart1, AxisNumber.X_Axis)
Dim xAxisLine As New AxisItem(Me.UltraChart1, AxisNumber.X_Axis)Dim yAxis As New AxisItem(Me.UltraChart1, AxisNumber.Y_Axis)
xAxisColumn.DataType = AxisDataType.String
xAxisColumn.SetLabelAxisType = SetLabelAxisType.GroupBySeries
xAxisColumn.Labels.ItemFormat = AxisItemLabelFormat.ItemLabel
xAxisLine.DataType = AxisDataType.String
xAxisLine.SetLabelAxisType = SetLabelAxisType.ContinuousData
yAxis.DataType = AxisDataType.Numeric
yAxis.Labels.ItemFormat = AxisItemLabelFormat.DataValue
area.Axes.Add(xAxisColumn)
area.Axes.Add(xAxisLine)
area.Axes.Add(yAxis)Dim seriesColumn As New NumericSeries()
seriesColumn.Data.DataSource = dt
seriesColumn.Data.LabelColumn = "col4"
seriesColumn.Data.ValueColumn = "col2"Dim seriesColumn2 As New NumericSeries()
seriesColumn.Data.DataSource = dt
seriesColumn.Data.LabelColumn = "col4"
seriesColumn.Data.ValueColumn = "col3"Dim seriesLine As New NumericSeries()
seriesLine.Data.DataSource = dt
seriesLine.Data.LabelColumn = "col4"
seriesLine.Data.ValueColumn = "col1"Me.UltraChart1.Series.AddRange(New Infragistics.UltraChart.Data.Series.ISeries() {seriesLine, seriesColumn, seriesColumn2})Dim ColumnLayer As New ChartLayerAppearance()
ColumnLayer.AxisX = xAxisColumn
ColumnLayer.AxisY = yAxis
ColumnLayer.ChartArea = area
ColumnLayer.ChartType = ChartType.ColumnChart
'columnlayer.Series.
ColumnLayer.Series.Add(seriesColumn)
ColumnLayer.Series.Add(seriesColumn2)Dim LineLayer As New ChartLayerAppearance()
LineLayer.AxisX = xAxisLine
LineLayer.AxisY = yAxis
LineLayer.ChartArea = area
LineLayer.ChartType = ChartType.LineChart
LineLayer.Series.Add(seriesLine)Me.UltraChart1.CompositeChart.ChartLayers.Add(ColumnLayer)
Me.UltraChart1.CompositeChart.ChartLayers.Add(LineLayer)
Me.UltraChart1.ColumnChart.SeriesSpacing = 1

http://news.infragistics.com/forums/p/5782/32153.aspx

0 comments: