Page 1 of 1
Sending data to polar plots
Posted: Thu May 27, 2004 3:24 am
by 8123616
Hello,
I cannot seem to get data displayed correctly to a polar plot. Could you please provide an example of how this is accomplished, please do not use the "this.polar1.FillSampleValues(100)" command.
Thank you.
Posted: Thu May 27, 2004 6:47 am
by Marjan
Hi, John.
FillSampleValues(100)
How about this:
Code: Select all
polar1.Clear();
polar1.Add(10,200); // angle = 10deg, radius = 200
polar1.Add(45,110); // angle = 45deg, radius = 110
polar1.Add(210,250); // angle = 210deg, radius = 250
polar1.Add(340,220); // angle = 340deg, radius = 220
First parameter in Add is associated with angle, second with radius. Hope this helps.
Posted: Thu May 27, 2004 1:29 pm
by 8123616
Thank you very much. I was trying to put arrays into the polar plot via the add using the following commands:
this.polar1.Add(angValues, magValues);
where magValues and angValues are arrays that have been give their respective data points. Is there a method to put complete arrays in?
Thanks again for your quick response.
Posted: Thu May 27, 2004 5:42 pm
by Pep
Hi John,
points. Is there a method to put complete arrays in?
Yes, just as you did :
this.polar1.Add(angValues, magValues);
Posted: Fri May 28, 2004 1:44 am
by 8123616
Hello,
This is what I understood for adding complete magnitude and angle arrays to the polar plot (this.polar1.Add(angValues, magValues);), but the polar plot does not seem to display the values. Is there some additional commands to make the polar plot display properly?
The following is a larger segment of my code:
this.polar1.Pen.Color = System.Drawing.Color.Cyan;
this.polar1.CirclePen.Visible =false;
this.polar1.ClockWiseLabels = false;
this.polar1.AngleIncrement = 10;
this.polar1.Chart.Axes.Visible = true;
this.polar1.Chart.Axes.Left.AxisPen.Visible = true;
this.polar1.Chart.Axes.Right.AxisPen.Visible = true;
this.polar1.Chart.Axes.Top.AxisPen.Visible = true;
this.polar1.Chart.Axes.Bottom.AxisPen.Visible = true;
this.polar1.Chart.Axes.Left.AxisPen.Width = 2;
this.polar1.Chart.Axes.Right.AxisPen.Width = 2;
this.polar1.Chart.Axes.Top.AxisPen.Width = 2;
this.polar1.Chart.Axes.Bottom.AxisPen.Width = 2;
this.polar1.Chart.Axes.Left.Labels.Visible = false;
this.polar1.Chart.Axes.Right.Labels.Visible = false;
this.polar1.Chart.Axes.Top.Labels.Visible = false;
this.polar1.Chart.Axes.Bottom.Labels.Visible = false;
double[] magValues = new double[10];
double[] angValues = new double[10];
magValues[0] = 150;
magValues[1] = 150;
magValues[2] = 150;
magValues[3] = 150;
magValues[4] = 150;
magValues[5] = 150;
magValues[6] = 150;
magValues[7] = 150;
magValues[8] = 150;
magValues[9] = 150;
angValues[0] = 45;
angValues[1] = 135;
angValues[2] = 225;
angValues[3] = 315;
angValues[4] = 135;
angValues[5] = 45;
angValues[6] = 225;
angValues[7] = 45;
angValues[8] = 315;
angValues[9] = 135;
this.polar1.Add(angValues, magValues);
this.polar1.RefreshSeries();
I have used tChart for the past ~2 years, but this is the first time that I have worked with the polar chart.
Thanks again for your help.
Posted: Fri May 28, 2004 9:24 am
by Pep
Hi John,
the problem is in the following line, sorry to not see this before (in your last post) :
this.polar1.Add(angValues, magValues);
that should be :
this.polar1.Add(magValues,angValues);
Thanks!
Posted: Fri May 28, 2004 1:36 pm
by 8123616
Hello,
Thanks you for the help, this worked. I also discovered that to scale a polar chart was not obvious, it took the following commands:
this.tChart1.Axes.Left.Maximum = maxValue;
this.tChart1.Axes.Left.Minimum = minValue;
The confusing part for me was that the Axes.Left perfoms the radius scaling, while the Axes.Bottom performs the angular scaling.
Thanks again for your quick response; have a great weekend!