For efficency reasons, daVinci will never draw a graph visualization directly on the canvas of a window. Instead, the canvas is partitioned into a grid of squares. For each element of the grid, there is a separate pixmap which is only drawn by need if the particualar grid element becomes visible, e.g. after using scrolling. This way, daVinci is even able to handle very large graphs which would usually require a hugh canvas. Already drawn pixmaps are kept in a cache to avoid another redrawing if they will become visible again after they have been invisible before.
You can observe this feature in daVinci: The first time you scroll into a new area of the graph, you will notice a delay which is needed to draw the portion of the graph on the pixmap of the corresponding grid element. Afterwards, the pixmap will be copied to the window canvas. The next time you scroll into this area, you will not notice any delay. The pixmap was cached and only need to be copied into the canvas without any redrawing.
Unfortunately, pixmap caching requires a lot of memory, especially for large
graphs. This may crash daVinci with a message
X Error: BadAlloc on systems with a small amount of RAM
as soon as no more memory is available. You can try to work without the cache
in these situations. The disadvantage of turning off caching is a reduced
scrolling performance. This setting operation can also be done by the user
with menu
Options/General Settings....
set(rules_first(boolean))
Controls the attribute evaluation order for the use of visualization definitions as described in the
concepts document. This
attribute can be set only with this API command. Set this to false to achieve
the default behaviour.