Download TeeChart version 3.2.2831.26851

TeeChart for Microsoft Visual Studio .NET, Xamarin Studio (Android, iOS & Forms) & Monodevelop.
Post Reply
mgc
Newbie
Newbie
Posts: 8
Joined: Fri Nov 02, 2007 12:00 am

Download TeeChart version 3.2.2831.26851

Post by mgc » Mon Jun 29, 2009 12:28 pm

I need an older version of TeeChart.
The version I am searching is version 3.2.2831.26851, where can download it?

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: Download TeeChart version 3.2.2831.26851

Post by Yeray » Mon Jun 29, 2009 1:08 pm

Hi mgc,

I've sent the url to download it to your forums registered mail.
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

mgc
Newbie
Newbie
Posts: 8
Joined: Fri Nov 02, 2007 12:00 am

Re: Download TeeChart version 3.2.2831.26851

Post by mgc » Tue Jun 30, 2009 9:22 am

Thanks for the url.

I need this version because it performs better than the newer versions, when using realtime graphs.
What is the reason for this?

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: Download TeeChart version 3.2.2831.26851

Post by Yeray » Tue Jun 30, 2009 9:35 am

Hi mgc,

Several changes have been made since this version. Could you please give us more information on what kind of chart are you experiencing this?
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

mgc
Newbie
Newbie
Posts: 8
Joined: Fri Nov 02, 2007 12:00 am

Re: Download TeeChart version 3.2.2831.26851

Post by mgc » Tue Jun 30, 2009 9:52 am

I am using fastline series in a TChart object and the settings are identical on the different versions.
The target pc has limited resources which means that the application has been optimized to draw minimum amount of points.
The fastlines runs acceptable with this version but lacks when using a newer version.

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: Download TeeChart version 3.2.2831.26851

Post by Yeray » Wed Jul 01, 2009 2:24 pm

Hi mgc,

I've tested the following code with v3.2.2831.26851, with latest v3, and with latest v2009. I've compared the results and they look quite the same. Could you please try it with both the old and the latest version and see if there is a noticeable difference for you? If not, could you please modify the code or send us another simple example project we can run as-is here to reproduce the problem here?

Code: Select all

        public Form1()
        {
            InitializeComponent();
            InitializeChart();
        }

        int nrOfSamples = 10000;
        private Steema.TeeChart.Styles.FastLine fastline1;
        private Steema.TeeChart.Styles.FastLine fastline2;
        private System.Diagnostics.Stopwatch stopWatch;

        private void InitializeChart()
        {
            stopWatch = new System.Diagnostics.Stopwatch();

            tChart1.Aspect.View3D = false;
            tChart1.Aspect.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighSpeed;

            fastline1 = new Steema.TeeChart.Styles.FastLine(tChart1.Chart);
            fastline2 = new Steema.TeeChart.Styles.FastLine(tChart1.Chart);

            //pre-assign ChartPens
            Pen rPen = new Pen(Color.Red);
            Pen bPen = new Pen(Color.Blue);
            Steema.TeeChart.Drawing.ChartPen redPen = new Steema.TeeChart.Drawing.ChartPen(tChart1.Chart, rPen);
            Steema.TeeChart.Drawing.ChartPen bluePen = new Steema.TeeChart.Drawing.ChartPen(tChart1.Chart, bPen);
            fastline1.LinePen = redPen;
            fastline2.LinePen = bluePen;

            fastline1.FillSampleValues(nrOfSamples);
            fastline2.FillSampleValues(nrOfSamples / 2);

            //tChart1.Axes.Left.SetMinMax(-5.0, 5.0);

            tChart1.AfterDraw += new Steema.TeeChart.PaintChartEventHandler(tChart1_AfterDraw);
        }

        void tChart1_AfterDraw(object sender, Steema.TeeChart.Drawing.Graphics3D g)
        {
            //calculate elapsed time
            //stopWatch.Stop();
            TimeSpan elapsedTime = stopWatch.Elapsed;
            string total = elapsedTime.TotalSeconds.ToString();
            label1.Text = "Elapsed time: " + total + " s";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            button1.Enabled = false;

            stopWatch.Reset();
            stopWatch.Start();

            tChart1.AutoRepaint = false;

            double[] x1 = new double[nrOfSamples];
            for (int i = 0; i < x1.Length; i++)
            {
                x1[i] = i;
            }
            double[] x2 = new double[nrOfSamples / 2];
            for (int i = 0; i < x2.Length; i++)
            {
                x2[i] = i;
            }
            double[] random1 = new double[nrOfSamples];
            double[] random2 = new double[nrOfSamples / 2];

            for (int i = 0; i < 100; i++)
            {
                FillArray(random1);
                FillArray(random2);
                fastline1.Add(x1, random1);
                fastline2.Add(x2, random2);
                tChart1.AutoRepaint = true;
                //tChart1.Refresh();
                Application.DoEvents();
            }

            stopWatch.Stop();

            button1.Enabled = true;
        }

        private static void FillArray(double[] myArray)
        {
            Random y = new Random();
            for (int i = 0; i < myArray.Length; i++)
            {
                myArray[i] = y.Next();
            }
        }
My tests were made in an AMD Athlon 3500+ (2.2GB) with 2GB RAM and a GeForce 6600 (256MB) under Vista Ultimate x64. And I got 11 or 12 seconds with any of the three dlls tested.
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

mgc
Newbie
Newbie
Posts: 8
Joined: Fri Nov 02, 2007 12:00 am

Re: Download TeeChart version 3.2.2831.26851

Post by mgc » Thu Jul 02, 2009 11:07 am

I have run the code you sent me and attached a file with screen shots of the results:

Test 1:
The target machine has been reboot.
Version 3.2.2831.26851 test is run, result: 20,5266247 sec.
Version 3.2.3425.20245 test is run, result: 25,0913518 sec.

Test 2:
The target machine has been reboot.
Version 3.2.3425.20245 test is run, result: 24,4403109 sec.
Version 3.2.2831.26851 test is run, result: 20,3297078 sec.

Test 3:
Test 2 was run.
Version 3.2.3425.20245 test is run, result: 21,1579343 sec.
Version 3.2.2831.26851 test is run, result: 20,3728716 sec.

Test 4:
Test 3 was run.
Version 3.2.2831.26851 test is run, result: 20,2770673 sec.
Version 3.2.3425.20245 test is run, result: 20,8312805 sec.

Test 5:
Test 4 was run.
Version 3.2.3425.20245 test is run, result: 20,8768181 sec.
Version 3.2.2831.26851 test is run, result: 20,2376659 sec.

The applications are not closed between each test.
The target machine is an Intel Celeron M 1GHz, 480 MB ram.

Conclusion:
After a reboot the difference is significant higher than after several runs.
Still after several runs the difference is 600ms, which makes a difference on the system when it's loaded additional.
Attachments
Test results.jpg
Test results
Test results.jpg (482.06 KiB) Viewed 5828 times

mgc
Newbie
Newbie
Posts: 8
Joined: Fri Nov 02, 2007 12:00 am

Re: Download TeeChart version 3.2.2831.26851

Post by mgc » Mon Jul 06, 2009 7:34 am

Correction to my previous post.

The new version is of course 3.5.3425.20245 and not 3.2.3425.20245.

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: Download TeeChart version 3.2.2831.26851

Post by Yeray » Mon Jul 06, 2009 12:35 pm

Hi mgc,

Thanks for the correction. That's what I thought ;)
I'm doing some tests with all versions from 3.2.2831 to try to identify if there is a sudden response change and in which exact maintenance release. I'll be back to you here asap.
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: Download TeeChart version 3.2.2831.26851

Post by Yeray » Tue Jul 07, 2009 10:41 am

Hi mgc,

I've ran more or less the same code than before 10 times for each TeeChart dll and calculated the mean. See the attached image showing the results of the tests (Pentium 4 @1,7GB, 512MB RAM, GeForce2 GTS 32MB).

As you'll see, there are significative performance differences with v3.2.2945 and 3.2.2980. But the difference between the v3.2.2831 and the other versions is less than a 2%, and considering all the changes they suffer that implies a lot of bug fixing and other improvements, we think that this is an acceptable sacrifice.

Here is the code I've used for the tests (I've compiled it in release mode):

Code: Select all

public Form1()
        { 
            InitializeComponent();
            InitializeChart();
        }

        int nrOfSamples = 10000;
        private Steema.TeeChart.Styles.FastLine fastline1;
        private Steema.TeeChart.Styles.FastLine fastline2;
        private System.Diagnostics.Stopwatch stopWatch;

        double ElapsedSeconds;

        private void InitializeChart()
        {
            chartController1.Chart = tChart1;

            stopWatch = new System.Diagnostics.Stopwatch();

            tChart1.Aspect.View3D = false;
            tChart1.Aspect.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighSpeed;

            fastline1 = new Steema.TeeChart.Styles.FastLine(tChart1.Chart);
            fastline2 = new Steema.TeeChart.Styles.FastLine(tChart1.Chart);

            //pre-assign ChartPens
            Pen rPen = new Pen(Color.Red);
            Pen bPen = new Pen(Color.Blue);
            Steema.TeeChart.Drawing.ChartPen redPen = new Steema.TeeChart.Drawing.ChartPen(tChart1.Chart, rPen);
            Steema.TeeChart.Drawing.ChartPen bluePen = new Steema.TeeChart.Drawing.ChartPen(tChart1.Chart, bPen);
            fastline1.LinePen = redPen;
            fastline2.LinePen = bluePen;

            fastline1.FillSampleValues(nrOfSamples);
            fastline2.FillSampleValues(nrOfSamples / 2);

            System.Globalization.CultureInfo inf = (System.Globalization.CultureInfo)System.Windows.Forms.Application.CurrentCulture.Clone();
            inf.NumberFormat.NumberDecimalSeparator = ".";
            System.Windows.Forms.Application.CurrentCulture = inf; 

            tChart1.AfterDraw += new Steema.TeeChart.PaintChartEventHandler(tChart1_AfterDraw);
        }

        void tChart1_AfterDraw(object sender, Steema.TeeChart.Drawing.Graphics3D g)
        {
            //calculate elapsed time
            TimeSpan elapsedTime = stopWatch.Elapsed;
            string total = elapsedTime.TotalSeconds.ToString();
            ElapsedSeconds = elapsedTime.TotalSeconds;
            label1.Text = "Elapsed time: " + total + " s";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            button1.Enabled = false;
            ElapsedSeconds = 0;
            double totalSeconds = 0;
            int iterations = 10;

            for (int n = 0; n < iterations; n++)
            {
                stopWatch.Reset();
                stopWatch.Start();

                tChart1.AutoRepaint = false;

                double[] x1 = new double[nrOfSamples];
                for (int i = 0; i < x1.Length; i++)
                {
                    x1[i] = i;
                }
                double[] x2 = new double[nrOfSamples / 2];
                for (int i = 0; i < x2.Length; i++)
                {
                    x2[i] = i;
                }
                double[] random1 = new double[nrOfSamples];
                double[] random2 = new double[nrOfSamples / 2];

                for (int i = 0; i < 100; i++)
                {
                    FillArray(random1);
                    FillArray(random2);
                    fastline1.Add(x1, random1);
                    fastline2.Add(x2, random2);
                    tChart1.AutoRepaint = true;
                    //tChart1.Refresh();
                    Application.DoEvents();
                }

                stopWatch.Stop();

                totalSeconds = totalSeconds + ElapsedSeconds;
            }

            totalSeconds = totalSeconds / iterations;

            System.Reflection.Assembly tc = System.Reflection.Assembly.GetAssembly(tChart1.GetType());
            string name = tc.FullName;
            int pos = name.IndexOf("Version");
            name = name.Substring(pos, name.IndexOf(", Culture") - pos);
            pos = name.IndexOf("=");
            name = name.Substring(pos + 1, name.Length - pos - 1);
            tChart1.Header.Text = name;

            StreamWriter SW;
            SW = File.AppendText("..\\result.txt");
            SW.WriteLine(totalSeconds.ToString() + ", " + name + "\n");
            SW.Close();

            button1.Enabled = true;
        }

        private static void FillArray(double[] myArray)
        {
            Random y = new Random();
            for (int i = 0; i < myArray.Length; i++)
            {
                myArray[i] = y.Next();
            }
        }
Attachments
test.jpg
tests
test.jpg (69.96 KiB) Viewed 5758 times
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

Post Reply