Using matplotlib/basemap interactively

Hi all,

I'd like to be able to create an GUI application based around a map
created using the basemap library. In the GUI I'd like to be able to
add and remove layers of information to the map interactively, based
upon button presses. I have successfully interacted with basemap
using IPython, meaning that I can add information to the map
interactively using script. However I don't know how to:

1) Remove stuff from the map in script.
2) Embed the map in a GUI and add/remove data in response to user interaction.

Essentially I'm looking to create a simple custom GIS system. I
wasn't able to find anything in the docs on this, but apologies if I
have missed something. Can anyone help?

Thanks in advance,
Jon

···

--
Dr Jon Blower
Technical Director, Reading e-Science Centre
Environmental Systems Science Centre
University of Reading
Harry Pitt Building, 3 Earley Gate
Reading RG6 6AL. UK
Tel: +44 (0)118 378 5213
Fax: +44 (0)118 378 6413
j.d.blower@...2446...
http://www.nerc-essc.ac.uk/People/Staff/Blower_J.htm

OK, Mauro Cavalcanti has just solved my problems by posting about the
release of his Croizat application! Looking through his source, I can
answer both of my own questions (please correct me if I'm wrong):

1) Remove stuff from the map in script.

I need to call remove() on the items on the map themselves, rather
than looking for a removeItem() method on the map. E.g.:

parallels = map.drawparallels()
for line in parallels.keys():
    parallels[line][0][0].remove()

2) Embed the map in a GUI and add/remove data in response to user interaction

See Mauro's code, also an earlier post, which I missed first time:
http://www.nabble.com/Embedding-Basemap-in-a-wx-app-td20588673.html.

Sorry for the noise, and thanks to Mauro for posting his app!

Jon

2009/1/14 Jon Blower <j.d.blower@...2446...>:

···

Hi all,

I'd like to be able to create an GUI application based around a map
created using the basemap library. In the GUI I'd like to be able to
add and remove layers of information to the map interactively, based
upon button presses. I have successfully interacted with basemap
using IPython, meaning that I can add information to the map
interactively using script. However I don't know how to:

1) Remove stuff from the map in script.
2) Embed the map in a GUI and add/remove data in response to user interaction.

Essentially I'm looking to create a simple custom GIS system. I
wasn't able to find anything in the docs on this, but apologies if I
have missed something. Can anyone help?

Thanks in advance,
Jon

--
Dr Jon Blower
Technical Director, Reading e-Science Centre
Environmental Systems Science Centre
University of Reading
Harry Pitt Building, 3 Earley Gate
Reading RG6 6AL. UK
Tel: +44 (0)118 378 5213
Fax: +44 (0)118 378 6413
j.d.blower@...2446...
http://www.nerc-essc.ac.uk/People/Staff/Blower_J.htm

--
Dr Jon Blower
Technical Director, Reading e-Science Centre
Environmental Systems Science Centre
University of Reading
Harry Pitt Building, 3 Earley Gate
Reading RG6 6AL. UK
Tel: +44 (0)118 378 5213
Fax: +44 (0)118 378 6413
j.d.blower@...2446...
http://www.nerc-essc.ac.uk/People/Staff/Blower_J.htm

Dear Jon,

This is exactly what my just released MPL/Basemap/wxPython application
for drawing biogeographic maps does!

Get it (with source code under GNU GPL) form http://panbiog.infobio.net/croizat

Hope it helps!

Best regards,

2009/1/14 Jon Blower <j.d.blower@...2446...>:

···

Hi all,

I'd like to be able to create an GUI application based around a map
created using the basemap library. In the GUI I'd like to be able to
add and remove layers of information to the map interactively, based
upon button presses. I have successfully interacted with basemap
using IPython, meaning that I can add information to the map
interactively using script. However I don't know how to:

1) Remove stuff from the map in script.
2) Embed the map in a GUI and add/remove data in response to user interaction.

Essentially I'm looking to create a simple custom GIS system. I
wasn't able to find anything in the docs on this, but apologies if I
have missed something. Can anyone help?

Thanks in advance,
Jon

--
Dr Jon Blower
Technical Director, Reading e-Science Centre
Environmental Systems Science Centre
University of Reading
Harry Pitt Building, 3 Earley Gate
Reading RG6 6AL. UK
Tel: +44 (0)118 378 5213
Fax: +44 (0)118 378 6413
j.d.blower@...2446...
http://www.nerc-essc.ac.uk/People/Staff/Blower_J.htm

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

--
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."