MakieOrg / Makie.jl

Interactive data visualizations and plotting in Julia
https://docs.makie.org/stable
MIT License
2.37k stars 302 forks source link

Tiling images #580

Open asinghvi17 opened 4 years ago

asinghvi17 commented 4 years ago

It seems like Cairo really struggles with rendering 30,000 by 30,000 or higher resolution images / heatmaps. This comes up in the context of large colormaps which need interpolation.

One option is to tile the heatmaps into quadrants, such that the texture's size is reduced.

jkrumbiegel commented 4 years ago

you are rendering gigapixel images??

asinghvi17 commented 2 years ago

This still seems to be a problem in CairoMakie, I've been sitting on a 30,000x30,000 heatmap to render for more than 5 minutes. I'm not sure what we can do to fix it, though...

The image is a distance matrix between two trajectories (basically euclidean.((-).(x, y'))). Theoretically, I could just downsample and render, but that might miss some dynamics or outlier points which I don't want to miss. I suppose the other possibility is image resizing through Gaussians, but that's a bit of a headache as an external solution.

GLMakie works pretty well, though, which is nice.

ffreyer commented 2 weeks ago

10k by 10k works fine for me, but 30k by 30k sucks up all my memory (~25GB available). I don't know if this is Cairos fault or ours...