Hello all,
I'm currently working with Infragistics' UltraWinChart (v11.2) Composite Chart.
I'm plotting the following series on the chart, in order to create a "Burndown" chart to show progress on a project and its associated units of work:
X, X2, Y, Y2, Z, Z2
The chart renders fine inside of the application itself, but the user also has the option to generate a report that takes a snapshot of the Burndown chart and saves it into an RTF document. The code I'm currently using to do this is as follows:
Dim ms As New MemoryStreamtmpChart.SaveTo(ms, System.Drawing.Imaging.ImageFormat.Png)
This method works fine, however... Originally this process wasn't threaded and the chart took so long to render (up to 7 minutes running in Debug mode through Visual Studio), and would also lock up the UI for the application since it was executing on the main UI thread. Locking up the UI for that long is simply not an option. I threaded this operation, created the temporary chart to be rendered through code, and put it on a background thread. Somehow, it still slows the UI response time significantly, though I'm not sure how if it's not even associated with the main UI thread.
One reason I think that the chart is taking so long to render using the .SaveTo method is due to the number of axes, and the gridlines that are so closely packed together that they form almost a solid background of gray behind the charted data. I've tried turning off the MajorGridLines and MinorGridLines for all of the charted series but the background is still solid as if they're there.
I've also tried trimming the excess rendering fat on the chart that isn't image specific, including the suggested .Tooltips.Display = TooltipDisplay.Never listed in the v11.2 documentation, but the saving of the chart to an image is still very slow.
Can anyone offer advice on how to speed up the rendering of the control that I might be missing?
Georgi,
I removed the threading around this generation, and removed the temporary chart I was using to image, and started from scratch with the DrawToBitmap method, and it generated within a second almost every time, no matter how much data had been charted. I'm not sure what would have changed this behavior by removing the threading and the temporary chart, but it seems to be resolved now.
Thanks for the quick responses and follow-up assistance.
Melissa
Hello Medwards11,
Have you been able to resolve your issue ? If you still have any concerns or questions I will be glad to help. If you need any additional assistance don’t hesitate to ask.
Regards
Thanks for provided information, but this is the first time when I hear for such issue in our UltraChart. I made few test using a composite chart with same assemblies version 11.2 - latest available service release and everything works properly. I`m not sure how to reproduce your issue.
Could you please tell me, do you have any installed service release and which one. Are you able to send us small sample that reproduce this issue. I`ll be glad to research it for you.
Let me know if you have any questions.