☰Read-only archive⌕
Looking for help with Bokeh?

This is a read-only archive. Ask questions and join the conversation on GitHub.

Visit Community Support on GitHub →
Archived discussions · Captured October 28, 2026

Plotting large rasters on map

Community Support
George_Azzari
George_Azzari

Hello everybody,

I am new to the group and to Bokeh, so I apologize in advance for the newbie question. I’ve been using Matplotlib basemap to plot rasters (e.g. temperature data) over vector maps for a while. However, I am hitting some memory issues now that I am handling very large and more detailed rasters. Does Bokeh have a similar functionality? If so, would it handle very large rasters better than basemap? A code snippet would be greatly appreciated!

Thanks,

George

⌁   Link to post
Bryan
Bryan

Hi George,

Can you be more specific about data sizes, etc, as well as what you have tried? There are various different possibilities, from using your own tile source with bokeh's tile renderers, to a Bokeh app that does downsampling based on the current viewable range, to a standalone plot with an AjazDataSource if the data happens to be available via some REST API, to the separate bokeh/datashader project if you have, e.g. billions of points to visualize.

Bryan

···

On Feb 20, 2016, at 3:24 PM, George Azzari <george.azzari@gmail.com> wrote:

Hello everybody,

I am new to the group and to Bokeh, so I apologize in advance for the newbie question. I've been using Matplotlib basemap to plot rasters (e.g. temperature data) over vector maps for a while. However, I am hitting some memory issues now that I am handling very large and more detailed rasters. Does Bokeh have a similar functionality? If so, would it handle very large rasters better than basemap? A code snippet would be greatly appreciated!

Thanks,
George

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.
To post to this group, send email to bokeh@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/21a75768-d99d-47f4-b41e-6175669baae8%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

⌁   Link to post
George_Azzari
George_Azzari

Hi Bryan,

Apologies for my delayed reply, and many thanks for your response. My final goal is to visualize on a map a bunch of geotiffs that extent over the entire US corn belt. Such rasters are generated by state, and their size varies on a yearly basis; for example, Illinois has an average of 342 million points @ 30m resolution for one year (~ 140 MB). It is very likely that the overall number of points will come very close to a billion in some years. I am interested in both dynamic visualizations for our lab website (perhaps the downsampling app or the bokeh/datashader project you mentioned?), and static plots for journal publications.

So far I only had to deal with smaller datasets, so I’ve been using Matplotlib’s basemap for a while. Unfortunately basemap does not seem to deal well with so much data, and that’s what brought me here. I have not tried anything on Bokeh yet, I was first curious to know if Bokeh deals well with large datasets. The options you laid out seem all very interesting; if you could point me to some docs and/or code examples I’d be very grateful :slight_smile:

Cheers,

George

···

On Thu, Mar 3, 2016 at 5:50 PM, Bryan Van de Ven bryan@bokeh.org wrote:

Hi George,

Can you be more specific about data sizes, etc, as well as what you have tried? There are various different possibilities, from using your own tile source with bokeh’s tile renderers, to a Bokeh app that does downsampling based on the current viewable range, to a standalone plot with an AjazDataSource if the data happens to be available via some REST API, to the separate bokeh/datashader project if you have, e.g. billions of points to visualize.

Bryan

On Feb 20, 2016, at 3:24 PM, George Azzari george.azzari@gmail.com wrote:

Hello everybody,

I am new to the group and to Bokeh, so I apologize in advance for the newbie question. I’ve been using Matplotlib basemap to plot rasters (e.g. temperature data) over vector maps for a while. However, I am hitting some memory issues now that I am handling very large and more detailed rasters. Does Bokeh have a similar functionality? If so, would it handle very large rasters better than basemap? A code snippet would be greatly appreciated!

Thanks,

George

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/21a75768-d99d-47f4-b41e-6175669baae8%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/4952DA5D-73CC-428C-88A7-DAD2B5A9CFF0%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

George

⌁   Link to post
birdsarah_continuum
birdsarah_continuum

Hi George,

It sounds like a fascinating project and, at first glance one that datashader would be ripe for.

Check out the docs which have links to an intro video and examples on the home page: http://datashader.readthedocs.org/en/latest/

Datashader currently only works with points and lines but i’m guessing u could transform geotiff data in pointwise data.

Sarah Bird
sbird@continuum.io

···

On Thu, Mar 3, 2016 at 5:50 PM, Bryan Van de Ven bryan@bokeh.org wrote:

Hi George,

Can you be more specific about data sizes, etc, as well as what you have tried? There are various different possibilities, from using your own tile source with bokeh’s tile renderers, to a Bokeh app that does downsampling based on the current viewable range, to a standalone plot with an AjazDataSource if the data happens to be available via some REST API, to the separate bokeh/datashader project if you have, e.g. billions of points to visualize.

Bryan

On Feb 20, 2016, at 3:24 PM, George Azzari george.azzari@gmail.com wrote:

Hello everybody,

I am new to the group and to Bokeh, so I apologize in advance for the newbie question. I’ve been using Matplotlib basemap to plot rasters (e.g. temperature data) over vector maps for a while. However, I am hitting some memory issues now that I am handling very large and more detailed rasters. Does Bokeh have a similar functionality? If so, would it handle very large rasters better than basemap? A code snippet would be greatly appreciated!

Thanks,

George

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/21a75768-d99d-47f4-b41e-6175669baae8%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/4952DA5D-73CC-428C-88A7-DAD2B5A9CFF0%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

George

⌁   Link to post
Sam1
Sam1

HI George,
As Sarah mentioned datashader would be perfect for you . I have also been using it to plot points which were not possible using matplotlib.

Since you mentioned temp data you probably can reduce the resolution of your data to a Km from 30m and reduce data size by 1000x.

This operation should be very easy using pandas/dask.

Sameer

···
⌁   Link to post
George_Azzari
George_Azzari

Hi Sarah,

Thanks for the pointers; I just watched the video you shared, and I am looking forward to test out datashader for this project. I’ll keep you guys posted on how it goes.

Cheers,

George

···

On Wed, Mar 16, 2016 at 11:18 AM, Sam sameerlalwani@gmail.com wrote:

HI George,
As Sarah mentioned datashader would be perfect for you . I have also been using it to plot points which were not possible using matplotlib.

Since you mentioned temp data you probably can reduce the resolution of your data to a Km from 30m and reduce data size by 1000x.

This operation should be very easy using pandas/dask.

Sameer

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/abe96ebc-7a15-476b-9f04-24333f26d6c0%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

⌁   Link to post
George_Azzari
George_Azzari

Hi Sameer,

Thanks for your suggestion; I agree with you, for certain variables (such as temperature) downscaling raster data is probably the best visualization option. I think though that in my specific case datashader could be a better option, as we are also testing ways to expose large scale crop yield maps with some very interesting fine-scale variability.

Cheers,

George

···

On Wed, Mar 16, 2016 at 11:18 AM, Sam sameerlalwani@gmail.com wrote:

HI George,
As Sarah mentioned datashader would be perfect for you . I have also been using it to plot points which were not possible using matplotlib.

Since you mentioned temp data you probably can reduce the resolution of your data to a Km from 30m and reduce data size by 1000x.

This operation should be very easy using pandas/dask.

Sameer

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/abe96ebc-7a15-476b-9f04-24333f26d6c0%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

George

⌁   Link to post

End of archived discussion · Replies are disabled