dotNetCharting - how to calculate percentage on data from 2 different series

I have a chart with 2 series added to it. The first series is for total orders. The second series is the count of orders that are from repeat customers. I would like to add a 3rd series that is the calculated percentage. Basically just dividing the second series by the first one. I can't seem to figure out the syntax to make that work.

I am using the latest release from dotnetcharting.com
Dim sc As New SeriesCollection()
 
        RepeatCustomers.Debug = True
        RepeatCustomers.Title = "Repeat Customers"
        RepeatCustomers.XAxis.FormatString = "MMMyy"
        RepeatCustomers.LegendBox.Orientation = dotnetCHARTING.Orientation.Bottom
        RepeatCustomers.DateGrouping = TimeInterval.Months
 
        Dim sd As DateTime = New System.DateTime(2007, 5, 1, 0, 0, 0) '5/1/2007
        Dim ed As DateTime = New System.DateTime(Year(Now), Month(Now), Day(Now), 23, 59, 59)
 
        'Add a series
        Dim sql As String = "SELECT OrderDate,1 AS q FROM Orders WHERE OrderDate >= '" & sd.ToString & "' AND OrderDate <= '" & ed.ToString & "' ORDER BY OrderDate"
        Dim df As New Series()
        df.ConnectionString = ConfigurationManager.AppSettings("DNCConnectionString").ToString
        df.StartDate = sd
        df.EndDate = ed
        df.Type = SeriesType.Cylinder
        df.DefaultElement.ShowValue = True
        df.Name = "Total Orders"
        df.SqlStatement = sql
        df.DefaultElement.Transparency = 50
 
        sc.Add(df)
 
        'repeat customer orders
        Dim sql2 As String = "query selects quantity of orders from repeat customers)"
        Dim rs As New Series()
        rs.Name = "Repeats"
        rs.SqlStatement = sql2
        rs.DefaultElement.Transparency = 50
        rs.Type = SeriesType.Cylinder
        rs.DefaultElement.ShowValue = True
        rs.ConnectionString = df.ConnectionString
 
        sc.Add(rs)
 
        RepeatCustomers.SeriesCollection.Add(sc)

Open in new window

aaronwkAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
aaronwkConnect With a Mentor Author Commented:
Their support gave me the solution. It's an issue only relating to data coming from a database. This support article solves it:
http://dotnetcharting.com/kb/article.aspx?id=10392
0
 
Dustin HopkinsSenior Web DeveloperCommented:
You could just divide the series

Series s3 = s1 / s2;

You may also want to take a look at the data tutorial
http://www.dotnetcharting.com/documentation/v5_2/Data%20Manipulation.html

Hope this helps,
Dustin
0
 
aaronwkAuthor Commented:
Yea, i've tried just about everything including that. I've been through all the help files to no avail. I found what i thought would work which is Series.Divide but no dice. What's so strange is that if i manually create a series with elements these techniques work great. As soon as my series is attached to sql server for data it does not work. I'm pretty sure it's a bug in their component. When i do series.elements.count of a series filled from the sql server connection the count is 0 yet it displays fine on the chart.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.