I’m trying to help a friend resolve a plotting issue.
He has 4 bits of data with values 0-100 which are plotted on a graph (to make it slightly harder he’s using 45,135,225 and 315 axis) the resultant is a 4 sided polygon, so far so good, but he wants the output to be shown on a circular plot.
Now if all 4 bits of data are 100 the resultant shape is a square where each point rests on the circumference of a circle radius 50. There are then areas in each quadrant which are not plotted despite a max score in the adjacent plots. So the straight line between 2 plots needs to be “stretched” into a curve.
As the maximum error occurs at 0,90,180,270 (remembering he’s plotting on the diagonals) then my idea would be to increase the values of each point along the line by a value which compensates for the circle. Something like x=cos(2.angle) where x is the addition to the y co-ordinate of the line. Does that make sense ? It’s at a maximum at 0 degrees (North) then is 0 at 45 where the square touches the circle.
But how do you calculate the values of each point on the line? It’s ok if it’s a square (where each score is 100%) but what if it’s a polygon with no right angles?
He has 4 bits of data with values 0-100 which are plotted on a graph (to make it slightly harder he’s using 45,135,225 and 315 axis) the resultant is a 4 sided polygon, so far so good, but he wants the output to be shown on a circular plot.
Now if all 4 bits of data are 100 the resultant shape is a square where each point rests on the circumference of a circle radius 50. There are then areas in each quadrant which are not plotted despite a max score in the adjacent plots. So the straight line between 2 plots needs to be “stretched” into a curve.
As the maximum error occurs at 0,90,180,270 (remembering he’s plotting on the diagonals) then my idea would be to increase the values of each point along the line by a value which compensates for the circle. Something like x=cos(2.angle) where x is the addition to the y co-ordinate of the line. Does that make sense ? It’s at a maximum at 0 degrees (North) then is 0 at 45 where the square touches the circle.
But how do you calculate the values of each point on the line? It’s ok if it’s a square (where each score is 100%) but what if it’s a polygon with no right angles?