chart with two data series and two colors for each data series

B

bikash

Hi! I am using visual studio.net 2.0 and trying to use OWC11 to draw a chart
from the database. If its only one data series it is fine but i cant see the
second data series. all i was trying to do was display actual and budgeted
against year. below are the code for clarification



gvPortfolioHisex.DataSource = dtPropertyCapex

gvPortfolioHisex.DataBind()

'Now Build a graph from the dataset

Dim oChartSpace As New Owc11.ChartSpaceClass()

Dim objChart As Owc11.ChChart = oChartSpace.Charts.Add(0)

objChart.HasTitle = True

objChart.Title.Caption = "Historical Expenditure Graph"


Dim sw As New System.IO.StringWriter()

Dim xDoc As New XmlDocument()

dtPropertyCapex.WriteXml(sw)

' clean up

xDoc.LoadXml(sw.ToString())

sw.Close()

Dim nodes As System.Xml.XmlNodeList

nodes = xDoc.ChildNodes.Item(0).ChildNodes

Dim nCount As Integer = nodes.Count

Dim aActual As String() = New String(nCount - 1) {}

Dim aBudgeted As String() = New String(nCount - 1) {}

Dim aEOY As String() = New String(nCount - 1) {}

Dim Actual As String = [String].Empty

Dim Budgeted As String = [String].Empty

Dim EOY As String = [String].Empty

Dim i As Integer = 0

For i = 1 To nCount

aActual(i - 1) = nodes.Item(i - 1).ChildNodes.Item(0).InnerText

aBudgeted(i - 1) = nodes.Item(i - 1).ChildNodes.Item(1).InnerText

aEOY(i - 1) = nodes.Item(i - 1).ChildNodes.Item(2).InnerText

Next

Actual = [String].Join("" & Chr(9) & "", aActual)

Budgeted = [String].Join("" & Chr(9) & "", aBudgeted)

EOY = [String].Join("" & Chr(9) & "", aEOY)



objChart.SeriesCollection.Add()

objChart.SeriesCollection.Add(0).Caption = "Actual"

objChart.SeriesCollection(0).SetData(Owc11.ChartDimensionsEnum.chDimCategories, Convert.ToInt32(Owc11.ChartSpecialDataSourcesEnum.chDataLiteral), EOY)

objChart.SeriesCollection(0).SetData(Owc11.ChartDimensionsEnum.chDimValues,
Convert.ToInt32(Owc11.ChartSpecialDataSourcesEnum.chDataLiteral), Actual)



objChart.SeriesCollection.Add()

objChart.SeriesCollection(1).Caption = "Budgeted"

objChart.SeriesCollection(1).SetData(Owc11.ChartDimensionsEnum.chDimCategories, Convert.ToInt32(Owc11.ChartSpecialDataSourcesEnum.chDataLiteral), EOY)

objChart.SeriesCollection(1).SetData(Owc11.ChartDimensionsEnum.chDimValues,
Convert.ToInt32(Owc11.ChartSpecialDataSourcesEnum.chDataLiteral), Budgeted)



objChart.HasLegend = True

Dim strFullPathAndName As String =
Server.MapPath(System.DateTime.Now.Ticks.ToString() + ".gif")

oChartSpace.ExportPicture(strFullPathAndName, "gif", 600, 400)

imgHiSexGraph.ImageUrl =
Server.UrlEncode(Path.GetFileName(strFullPathAndName))

imgHiSexGraph.Visible = True

RemoveFiles(Server.MapPath("."))





also I am trying to add two colors. searched every where in net but couldn't
find a solution please help.

I found below codes but not sure how i could use it



'objChart.Type = Owc11.ChInterior
'Dim f As Owc11.ChInterior
'f.SetSolid("grainsboro")

'f.SetPatterned(Owc11.ChartPatternTypeEnum.chPattern80Percent, "black",
"gainsboro")

'f.SetTwoColorGradient(Owc11.ChartGradientStyleEnum.chGradientDiagonalUp,
Owc11.ChartGradientVariantEnum.chGradientVariantEdges, "gainsboro", "gray")
'objChart.Type.ch =
f.SetTwoColorGradient(Owc11.ChartGradientStyleEnum.chGradientDiagonalUp,
Owc11.ChartGradientVariantEnum.chGradientVariantEdges, "gainsboro", "gray")
''font = e.drawObject.Interior as owc11.ChInterior;
' font.SetSolid((object)"gainsboro");
'
font.SetPatterned(owc11.ChartPatternTypeEnum.chPattern80Percent,(object)"black","gainsboro");
'
font.SetTwoColorGradient(owc11.ChartGradientStyleEnum.chGradientDiagonalUp,
owc11.ChartGradientVariantEnum.chGradientVariantEdges,(object)"gainsboro",(object)"gray");




thanks in advance.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top