Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Share your agentic AI experience, learn from others, and earn a new badge: Put Agentic AI to Work
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Charts Redrawing on Load

Hello,

When I open a dashboard, it seems that all of my charts are forced to redraw. There is a little green progress bar and an X (which I assume would cancel the load).

On one sheet, I have 5 charts and upon opening it this morning, I had to wait over a minute for these charts to reload. Also, during this loading period, some of my other UI elements are not drawn, the Current Selections box seems to be especially guilty of this.

Is there some setting or something I am missing that will prevent a chart from reloading when opening a new document?

This will even happen on occasion when moving from sheet to sheet, but it does not take as long. I noticed it began happening after adding set analysis to a chart. Is this a side affect of set analysis or is it just coincidence?

I tried to search around, but could not find a way to phrase what was happening. What is it called when a chart is redrawing itself.

Thank you.

Labels (1)
10 Replies
disqr_rm
Partner - Specialist III
Partner - Specialist III

Usually this happens when you have performance problems with your charts or tables. Do you have some conditional expressions in your charts, like if(something = ...., ...,...)? What you may want to try is build lots of flags in your data tables when loading data and use those flags in the charts, instead of putting conditions in the charts itself. There is a WiKi on flagging concept as well, I think. Have a look.

But if this is not the case, then it would be great if you provide a smaller sample and let experts here provide comments on how to optimize the performance on your document.

Not applicable
Author

Thanks for the reply. None of my charts contain any conditional expressions. There are a couple of flags in the data, which are used with set analysis in the expressions. Other than the set analysis, the expressions are sums of decimal fields. I'll take a look at the Wiki to see if there is anything in there that may help.

I'm going to put together some sample data that is similar in structure to what we use and try to duplicate the problem on something I can share.

Thanks!

Not applicable
Author

The term is just "calculating". Does your app have millions of rows? Perhaps looking at Memory Statistics data will help, but it's not always accurate.

Not applicable
Author

Yes, my application has over 3 million records. This is actually a limited set of the data; over the next year, I would expect that to get near and probably exceed 5 million.

I took a look at the Memory Statistics for my app, but I'm not sure what to make of it. My file is pretty large about 111 MB. The Bytes column adds up to about 209 million. My system only has 1 GB of RAM, but it doesn't seem like I'd be hitting the limit with a 100 MB file.

Thank you!

Not applicable
Author

Well, it might be a memory paging issue that's slowing you down, but if you ever ran out of memory QikView gives a clear error message. If this is a limited set of data then it's more likely to be a complex chart calculation. Look into data scrambling so you can upload an example for us.

Not applicable
Author

I'm sorry, I meant limited as in, it's only getting bigger. The data I am using has over three million records. The chart expressions are pretty simple. Most of them look something like:

Sum( {Data_CY = {1}>} Revenue)

I tried creating a small subset of similar data and that exhibits no calculation delay whatsoever. I also tried removing all of the set analysis from the charts and I had similar calculation delays. It seems like the delay is really bad when first opening QlikView. I was working on various files and there seemed to be less of a delay. Thinking I may have found something, I closed QlikView and upon reopening, I had the same extended delay.

I'll look at scrambing and see if it is possible to create an example with as many records as I am using.

Thank you!

rwunderlich
MVP
MVP

Are you opening this document locally or on the Server (QVS)?

QV will take advantage of a multiple processors to calculate the various sheet objects. If you are opening it on a machine with only one or two processors, you may be seeing the blocking effect of one or two dificult charts.

In a locally opened copy of the app, use Settings, Sheet Properties, Objects. Look at the "calc time" column to identify which charts take the longest to calc. This may help you focus your tuning efforts.

Even with tuning, sometimes with many rows it can take a while to draw the charts on opening. Here's some suggestions for mitigating the problem.
- On a Server, use the preloading function. I believe this will precalc the first set of charts as well.
- If you generally don't want to calculate on a full set of data, use calculation conditions to suppress calculation until selections are made.
- Pre aggregate (roll up) some of the big data.

Looking forward to your example. I don't think you need to provide many records for us to take a look at it.

-Rob

Not applicable
Author

Okay, I've attached a small example of what seems to be the culprit. On my dashboard, I have five rows of what you see there. The small bar charts on the left are significantly higher in calc times than anything else in the document. I've reloaded the document a couple of times and the calc times differ each time. It seems that 2 of them are around 20,000, then one around 30,000 and the last two nearing 50,000. I have various other charts and tables in the app and nothing else gets over 5,000.

I realize that it's difficult to determine based on the limited sample, but why are these charts so slow to load? Is there something in that bar chart that is causing these calc times to get so high? Since I am really only looking at the past ten weeks or so of the current year, is there anything I can do to speed it up? At this point, reducing my dataset is not an option, because everyone thinks they will need to deep drill into the data.

Also, I'm still a little confused on how objects are drawn to the screen. In my dashboard, the charts calculate before other objects are drawn. The Current Selections box seems to wait until everything is calculated before drawing. Is it possible to force these items to draw first? As it stands now, the user sees only pieces of the UI while the charts are calculating.

Thank you!

Not applicable
Author

I'm not seeing anything unusual in this limited sample. What I'd like is the actual front-end. QlikView calculates objects in the order they were created (if I recall correctly). So these objects may just be waiting for the others to calc. But your formulas aren't unusual.

It may come down to data size, data model and server speed. A single processor machine + an expression that references three or more tables + millions of rows can take a long time.

Try your app on a multi-core machine with several gigabytes of memory. A 1GB machine running Windows, email, Qlikview, browser, anti-virus, and all that is probably paging memory and that will seriosuly impact performance.