General questions about Basemap

Dear ALL,

I am using Basemap version 0.90 with MPL version 0.98.3 under Linux
Ubuntu, both installed from Andrew Straw repository (I just prefer to
install from repositories via apt than directly from the sources,
although in this case I do not have always the latest versions).

I stumbled upon a few issues that I could not solve by looking at the
available documentation. They are not really critical for me, but I
would be interested in finding some more about them anyway.

Here they are:

i) When trying some of the projections listed in the Basemap
documentation, I got a message saying that this or that projection is
not available, what leads me to think that these projections have only
been included in later versions of Basemap. However, I could not find
this in the documentation. This is not critical for my current
project, as I have no need to offer so many projections, but I would
like to know.

ii) The plotting of rivers using the drawrivers() method is painfully
slow, even with resolution set to "crude". The FAQ provided with the
Basemap source package offers an interesting suggestion for
potentially solving this, but an exemple would be in order (the FAQ
mentions an "ireland.py" example which I have however not found in the
examples directory).

iii) In the same context as the above, I would be interested in
knowing if there is some way to speed up the plotting of a map with
the Blue Marble image superimposed on it.

In general, I would like to suggest that the Basemap FAQ could be
expanded and made available in the website, along with, perhaps, some
the examples provided in the Basemap distribution package (in the same
way the examples are provided in the MPL page).

Well, hope this helps!

Have a nice weekend.

With best regards,

···

--
Dr. Mauro J. Cavalcanti
Ecoinformatics Studio
P.O. Box 46521, CEP 20551-970
Rio de Janeiro, RJ, BRASIL
E-mail: maurobio@...287...
Web: http://studio.infobio.net
Linux Registered User #473524 * Ubuntu User #22717
"Life is complex. It consists of real and imaginary parts."

Mauro Cavalcanti wrote:

Dear ALL,

I am using Basemap version 0.90 with MPL version 0.98.3 under Linux
Ubuntu, both installed from Andrew Straw repository (I just prefer to
install from repositories via apt than directly from the sources,
although in this case I do not have always the latest versions).

I stumbled upon a few issues that I could not solve by looking at the
available documentation. They are not really critical for me, but I
would be interested in finding some more about them anyway.

Here they are:

i) When trying some of the projections listed in the Basemap
documentation, I got a message saying that this or that projection is
not available, what leads me to think that these projections have only
been included in later versions of Basemap. However, I could not find
this in the documentation. This is not critical for my current
project, as I have no need to offer so many projections, but I would
like to know.
  
Mauro: Yes, the documentation applies to the current SVN version. Version 0.90 is rather old now.

ii) The plotting of rivers using the drawrivers() method is painfully
slow, even with resolution set to "crude". The FAQ provided with the
Basemap source package offers an interesting suggestion for
potentially solving this, but an exemple would be in order (the FAQ
mentions an "ireland.py" example which I have however not found in the
examples directory).
  

I haven't noticed the rivers being slow, but I'll look into it.

iii) In the same context as the above, I would be interested in
knowing if there is some way to speed up the plotting of a map with
the Blue Marble image superimposed on it.
  

Plotting the blue marble image involves interpolating a very large array from lat/lon coordinates to projection coordinates. So, no - there is no easy way to speed it up. If you're only using a few different map projections and regions, you could pickle those basemap instances and re-use them, thereby saving the interpolation cost. Using the "cyl" projection is reasonably fast, since there is no interpolation.

In general, I would like to suggest that the Basemap FAQ could be
expanded and made available in the website, along with, perhaps, some
the examples provided in the Basemap distribution package (in the same
way the examples are provided in the MPL page).
  
I try to expand the docs in my spare time, which I haven't had much of lately. Volunteers are welcome!

-Jeff

···

Well, hope this helps!

Have a nice weekend.

With best regards,

--
Jeffrey S. Whitaker Phone : (303)497-6313
NOAA/OAR/CDC R/PSD1 FAX : (303)497-6449
325 Broadway Boulder, CO, USA 80305-3328

Mauro Cavalcanti wrote:

Dear ALL,

I am using Basemap version 0.90 with MPL version 0.98.3 under Linux
Ubuntu, both installed from Andrew Straw repository (I just prefer to
install from repositories via apt than directly from the sources,
although in this case I do not have always the latest versions).
  
Mauro: There never actually was a Basemap 0.90 - could you check that version number again with

>>> from mpl_toolkits.basemap import __version__
>>> print __version__
0.99.2

See below for my comment on the speed of drawing rivers ..

I stumbled upon a few issues that I could not solve by looking at the
available documentation. They are not really critical for me, but I
would be interested in finding some more about them anyway.

Here they are:

i) When trying some of the projections listed in the Basemap
documentation, I got a message saying that this or that projection is
not available, what leads me to think that these projections have only
been included in later versions of Basemap. However, I could not find
this in the documentation. This is not critical for my current
project, as I have no need to offer so many projections, but I would
like to know.

ii) The plotting of rivers using the drawrivers() method is painfully
slow, even with resolution set to "crude". The FAQ provided with the
Basemap source package offers an interesting suggestion for
potentially solving this, but an exemple would be in order (the FAQ
mentions an "ireland.py" example which I have however not found in the
examples directory).
  
Looked into this a bit and found that drawing rivers the first time is slow, since the reading and processing of the river data is deferred until the drawrivers method is called. In contrast, the coastlines are read and processed on instance creation. I did this because most people don't use the river data, and I didn't want to impose that penalty on them on instance creation.

Subsequent calls to drawrivers (with the same Basemap instance) are very fast.

-Jeff

···

iii) In the same context as the above, I would be interested in
knowing if there is some way to speed up the plotting of a map with
the Blue Marble image superimposed on it.

In general, I would like to suggest that the Basemap FAQ could be
expanded and made available in the website, along with, perhaps, some
the examples provided in the Basemap distribution package (in the same
way the examples are provided in the MPL page).

Well, hope this helps!

Have a nice weekend.

With best regards,

--
Jeffrey S. Whitaker Phone : (303)497-6313
NOAA/OAR/CDC R/PSD1 FAX : (303)497-6449
325 Broadway Boulder, CO, USA 80305-3328

Dear Jeffrey,

2008/12/6 Jeff Whitaker <jswhit@...146...>:

Mauro: There never actually was a Basemap 0.90 - could you check that
version number again with

Sorry, my reference to a "0.90" version was a typo! Indeed, I have version 0.99

Thanks for the information on the drawing of rivers; I will see how I
can provide this feature to users, warning them that the first plot
may take some time to complete.

BTW, even if there are reasons for the slowness of river plotting and
Blue Marble superimposition, have you any information on the most
appropriate hardware requirements for getting the fastest plots in
these cases?

As of volunteers for helping with the Basemap documentation, count me
in, just after I have my current project finished (hopefully by the
next month). One idea I have is creating a "Basemap Cookbook" website,
essentially presenting all the examples included in the current
distribution, plus a few others (as the additional example for
plotting shapefiles that you posted on the list a few days ago).

With warmest regards,

···

--
Dr. Mauro J. Cavalcanti
Ecoinformatics Studio
P.O. Box 46521, CEP 20551-970
Rio de Janeiro, RJ, BRASIL
E-mail: maurobio@...287...
Web: http://studio.infobio.net
Linux Registered User #473524 * Ubuntu User #22717
"Life is complex. It consists of real and imaginary parts."

Mauro Cavalcanti wrote:

Dear Jeffrey,

2008/12/6 Jeff Whitaker <jswhit@...146...>:

Mauro: There never actually was a Basemap 0.90 - could you check that
version number again with
    
Sorry, my reference to a "0.90" version was a typo! Indeed, I have version 0.99

Thanks for the information on the drawing of rivers; I will see how I
can provide this feature to users, warning them that the first plot
may take some time to complete.

BTW, even if there are reasons for the slowness of river plotting and
Blue Marble superimposition, have you any information on the most
appropriate hardware requirements for getting the fastest plots in
these cases?
  
Mauro: All I can say is, the faster the better.
As of volunteers for helping with the Basemap documentation, count me
in, just after I have my current project finished (hopefully by the
next month). One idea I have is creating a "Basemap Cookbook" website,
essentially presenting all the examples included in the current
distribution, plus a few others (as the additional example for
plotting shapefiles that you posted on the list a few days ago).
  
Great.

-Jeff

···

With warmest regards,

--
Jeffrey S. Whitaker Phone : (303)497-6313
NOAA/OAR/CDC R/PSD1 FAX : (303)497-6449
325 Broadway Boulder, CO, USA 80305-3328

Mauro Cavalcanti wrote:

Dear ALL,

I am using Basemap version 0.90 with MPL version 0.98.3 under Linux
Ubuntu, both installed from Andrew Straw repository (I just prefer to
install from repositories via apt than directly from the sources,
although in this case I do not have always the latest versions).

I stumbled upon a few issues that I could not solve by looking at the
available documentation. They are not really critical for me, but I
would be interested in finding some more about them anyway.

Here they are:

i) When trying some of the projections listed in the Basemap
documentation, I got a message saying that this or that projection is
not available, what leads me to think that these projections have only
been included in later versions of Basemap. However, I could not find
this in the documentation. This is not critical for my current
project, as I have no need to offer so many projections, but I would
like to know.

ii) The plotting of rivers using the drawrivers() method is painfully
slow, even with resolution set to "crude". The FAQ provided with the
Basemap source package offers an interesting suggestion for
potentially solving this, but an exemple would be in order (the FAQ
mentions an "ireland.py" example which I have however not found in the
examples directory).

iii) In the same context as the above, I would be interested in
knowing if there is some way to speed up the plotting of a map with
the Blue Marble image superimposed on it.\
  
Mauro: I just added a 'scale' keyword to bluemarble that downsamples the image to speed things up. scale=1.0 (the default) gives the same answer as before (the full resolution image). scale=0.5 downsamples the image to half the original size, speeding things up considerably (and using a lot less memory, which I think is the real problem).

-Jeff

···

In general, I would like to suggest that the Basemap FAQ could be
expanded and made available in the website, along with, perhaps, some
the examples provided in the Basemap distribution package (in the same
way the examples are provided in the MPL page).

Well, hope this helps!

Have a nice weekend.

With best regards,

--
Jeffrey S. Whitaker Phone : (303)497-6313
Meteorologist FAX : (303)497-6449
NOAA/OAR/PSD R/PSD1 Email : Jeffrey.S.Whitaker@...259...
325 Broadway Office : Skaggs Research Cntr 1D-113
Boulder, CO, USA 80303-3328 Web : http://tinyurl.com/5telg

Dear Jeff,

2008/12/8 Jeff Whitaker <jswhit@...146...>:

Mauro: I just added a 'scale' keyword to bluemarble that downsamples the
image to speed things up. scale=1.0 (the default) gives the same answer as
before (the full resolution image). scale=0.5 downsamples the image to half
the original size, speeding things up considerably (and using a lot less
memory, which I think is the real problem).

Thank you very much for that! Yes, the real problem with the slow
plotting of Blue Marble very probably concerns the amount of available
memory and not the processor speed. I will try it ASAP. I suppose this
modification is also available only via SVN? Is there a time schedule
for releasing a new distribution version incorporating this recent
changes? I need a setup package that can be downloaded and installed
by computer-unsophisticated Windows users :frowning:

More soon...

With best wishes,

···

--
Dr. Mauro J. Cavalcanti
Ecoinformatics Studio
P.O. Box 46521, CEP 20551-970
Rio de Janeiro, RJ, BRASIL
E-mail: maurobio@...287...
Web: http://studio.infobio.net
Linux Registered User #473524 * Ubuntu User #22717
"Life is complex. It consists of real and imaginary parts."

Mauro Cavalcanti wrote:

Dear Jeff,

2008/12/8 Jeff Whitaker <jswhit@...146...>:
  

Mauro: I just added a 'scale' keyword to bluemarble that downsamples the
image to speed things up. scale=1.0 (the default) gives the same answer as
before (the full resolution image). scale=0.5 downsamples the image to half
the original size, speeding things up considerably (and using a lot less
memory, which I think is the real problem).
    
Thank you very much for that! Yes, the real problem with the slow
plotting of Blue Marble very probably concerns the amount of available
memory and not the processor speed. I will try it ASAP. I suppose this
modification is also available only via SVN? Is there a time schedule
for releasing a new distribution version incorporating this recent
changes? I need a setup package that can be downloaded and installed
by computer-unsophisticated Windows users :frowning:

More soon...

With best wishes,

Mauro:

I can make a new release shortly, after the new changes have been tested a bit.

-Jeff

···

--
Jeffrey S. Whitaker Phone : (303)497-6313
Meteorologist FAX : (303)497-6449
NOAA/OAR/PSD R/PSD1 Email : Jeffrey.S.Whitaker@...259...
325 Broadway Office : Skaggs Research Cntr 1D-113
Boulder, CO, USA 80303-3328 Web : http://tinyurl.com/5telg