Ah Skorulis, I have just realised I misread your first post. You say that the plot area renders to its final animation size, becomes blurry as it is stretched and then animates to the correct frame size, whereby the graph looks correct.
I misunderstood what you were saying, as in older versions of the charting library, the plot area wouldn’t animate at all & would jump instantly - this is what I thought you were describing.
Unfortunately there isn’t a way around this. To get the plot area (the glView) to animate without blurring first, you would need to set the frame of the chart and animate it yourself manually. As you say, the animation in this case won’t be smooth on some devices as you are asking your chart to do quite a lot of work.
Here are a few ideas for workarounds / compramises that might be of interest to you.
- You could hide the chart series with some type of animation by setting an entry/exit animation on the series & hiding them.
- Once then are hidden, you could then animate your entire chart using UIView animation.
- Then display your series again after the animation completes.
Using an image
- You could capture an image contents of the plot area’s view.
- Place this image over your plot area.
- Animate your chart using UIView animation as well as animating the image that is placed over the chart.
- Remove the image.
- Enable the charts activity indicator before resizing the chart.
- Remove it after resizing the chart.
I hope the above helps you find a suitable solution. Let me know how you get on.