Under review

Polar plot point interpolation

bsguedes 6 years ago updated 6 years ago 5

I'm trying to translate a XY chart into a polar plot. I have a collection of points in a given time that are represented on the XY chart (chart 1) with time on the X axis and the angle (in function of time) on the Y axis.

When I try to plot the equivalent polar chart, I expect to have the time on the radius and the angle on the angle axis. However, Oxyplot connects the points using a direct line between each two subsequent points, like the attachment image I've uploaded (on the 'wrong' label, chart 4). 

I would expect that this interpolation would create an arc between each pair of points (char 3): this way, we don't go 'back in time' (you can notice this behaviour on the orange section of one of those lines that I marked on the attachment image... the interpolation that oxyplot does implies that on a XY chart we would have something like the chart number 3... notice that we go backwards in that interpolation too).

Is there a way to consider this kind of interpolation on the polar chart (chart number 2)?

Under review
(added the image to your post)
Have you tried setting the "Smooth" property on the LineSeries to true?
Hi objo, thanks for the answer!

Unfortunately it does not return the expected chart. If I set Smooth to true, I have this:


As you can see, I still have the  "series going backwards" problem.
thanks for testing! Yes, smooth is interpolating the final transformed points and will not help here. In this case I think we need to interpolate before applying the polar axes transforms. I think there should be a similar problem for logarithmic axes. It could be handled by the LineSeries, but I think the problem is to find how many interpolated points are required... I think a workaround is to interpolate yourself before adding the points to the LineSeries. Add a ScatterSeries with the original points for the markers.
There is something interesting going on when I set Smooth to true. Even though the series is not respecting the time constraint, the tracker is not following the series! It is following the exactly path that I wanted in the first place. 


It may be difficult to view this as a static image, but when I advance the tracker I never go backwards, like I was trying to do (this will only happen with smooth = true). So this interpolation is being done already some place, it is just not plotted as a series.