SourceForge logo
SourceForge logo
Menu

matplotlib-users — Discussion related to using matplotlib

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
(3)
Jun
Jul
Aug
(12)
Sep
(12)
Oct
(56)
Nov
(65)
Dec
(37)
2004 Jan
(59)
Feb
(78)
Mar
(153)
Apr
(205)
May
(184)
Jun
(123)
Jul
(171)
Aug
(156)
Sep
(190)
Oct
(120)
Nov
(154)
Dec
(223)
2005 Jan
(184)
Feb
(267)
Mar
(214)
Apr
(286)
May
(320)
Jun
(299)
Jul
(348)
Aug
(283)
Sep
(355)
Oct
(293)
Nov
(232)
Dec
(203)
2006 Jan
(352)
Feb
(358)
Mar
(403)
Apr
(313)
May
(165)
Jun
(281)
Jul
(316)
Aug
(228)
Sep
(279)
Oct
(243)
Nov
(315)
Dec
(345)
2007 Jan
(260)
Feb
(323)
Mar
(340)
Apr
(319)
May
(290)
Jun
(296)
Jul
(221)
Aug
(292)
Sep
(242)
Oct
(248)
Nov
(242)
Dec
(332)
2008 Jan
(312)
Feb
(359)
Mar
(454)
Apr
(287)
May
(340)
Jun
(450)
Jul
(403)
Aug
(324)
Sep
(349)
Oct
(385)
Nov
(363)
Dec
(437)
2009 Jan
(500)
Feb
(301)
Mar
(409)
Apr
(486)
May
(545)
Jun
(391)
Jul
(518)
Aug
(497)
Sep
(492)
Oct
(429)
Nov
(357)
Dec
(310)
2010 Jan
(371)
Feb
(657)
Mar
(519)
Apr
(432)
May
(312)
Jun
(416)
Jul
(477)
Aug
(386)
Sep
(419)
Oct
(435)
Nov
(320)
Dec
(202)
2011 Jan
(321)
Feb
(413)
Mar
(299)
Apr
(215)
May
(284)
Jun
(203)
Jul
(207)
Aug
(314)
Sep
(321)
Oct
(259)
Nov
(347)
Dec
(209)
2012 Jan
(322)
Feb
(414)
Mar
(377)
Apr
(179)
May
(173)
Jun
(234)
Jul
(295)
Aug
(239)
Sep
(276)
Oct
(355)
Nov
(144)
Dec
(108)
2013 Jan
(170)
Feb
(89)
Mar
(204)
Apr
(133)
May
(142)
Jun
(89)
Jul
(160)
Aug
(180)
Sep
(69)
Oct
(136)
Nov
(83)
Dec
(32)
2014 Jan
(71)
Feb
(90)
Mar
(161)
Apr
(117)
May
(78)
Jun
(94)
Jul
(60)
Aug
(83)
Sep
(102)
Oct
(132)
Nov
(154)
Dec
(96)
2015 Jan
(45)
Feb
(138)
Mar
(176)
Apr
(132)
May
(119)
Jun
(124)
Jul
(77)
Aug
(31)
Sep
(34)
Oct
(22)
Nov
(23)
Dec
(9)
2016 Jan
(26)
Feb
(17)
Mar
(10)
Apr
(8)
May
(4)
Jun
(8)
Jul
(6)
Aug
(5)
Sep
(9)
Oct
(4)
Nov
Dec
2017 Jan
(5)
Feb
(7)
Mar
(1)
Apr
(5)
May
Jun
(3)
Jul
(6)
Aug
(1)
Sep
Oct
(2)
Nov
(1)
Dec
2018 Jan
Feb
Mar
Apr
(1)
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2020 Jan
Feb
Mar
Apr
May
(1)
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2025 Jan
(1)
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
S M T W T F S





1
(10)
2
(3)
3
(5)
4
(7)
5
(18)
6
(4)
7
(15)
8
(7)
9
(10)
10
(4)
11
(18)
12
(15)
13
(11)
14
(11)
15
(4)
16
(28)
17
(17)
18
(22)
19
(12)
20
(19)
21
(17)
22
(14)
23
(4)
24
(3)
25
(6)
26
(8)
27
(13)
28
(11)
29
(21)
30
(3)
31
(5)






Showing 5 results of 5

From: Eric F. <ef...@ha...> - 2006年12月31日 20:53:18
Jeff Whitaker wrote:
> # reverse sign of data, so contours won't be dashed.
> cs = m.contour(x, y, -topoin, [1000, 2000], colors='r')
You can also use
rcParams['contour.negative_linestyle'] = 'solid'
to tell contour not to make monochrome negative contours dashed.
Eric
From: Jeff W. <js...@fa...> - 2006年12月31日 20:41:36
Evan Mason wrote:
> In the mpl basemap 'test.py' script, I want to add some contours to 
> the mercator projection map (test #3). Just below line 83 (ie, below 
> the 'im = imshow..' command I added the line:
>
> m.contour(topodat,[-1000, -2000])
>
> This returns:
>
> /home/evan/downloads/basemap-0.9.4/examples/test.py
> 82 # plot image over map.
> 83 im = m.imshow(topodat,cm.jet)
> ---> 84 m.contour(topodat,[-1000, -2000])
> 85 m.drawcoastlines ()
> 86 m.drawcountries()
>
> TypeError: contour() takes at least 4 arguments (3 given)
> WARNING: Failure executing file: <test.py>
>
> I understand the error to mean that I haven't supplied x and y values; 
> however at this point, if I close all the open figures and enter the 
> line 'contour(topodat,[-1000, -2000])' at the ipython command, it 
> gives me the plot I want.
>
> I've then tried to use meshgrid to make x and y values (see code 
> below); this is error free but the contours don't appear. Again, 
> using contour in the command line I get the plot I want. Is it not 
> possible to plot on top of imshow?
>
> Any help appreciated.
>
>
> Thanks, Evan
>
>
>
>
> from matplotlib.toolkits.basemap import Basemap, shiftgrid
> from scipy import interpolate as Pinterp
> from pylab import *
> import matplotlib.colors as colors
>
> def doSpline(yVec, newLatRange):
> latRange = range(len(yVec))
> newLatRange = linspace(latRange[0], latRange[-1], newLatRange)
> tck = Pinterp.splrep(latRange, yVec)
> yVec = Pinterp.splev(newLatRange, tck)
> return yVec
>
> topodatin = load('etopo20data.gz')
> lonsin = load('etopo20lons.gz')
> latsin = load('etopo20lats.gz')
> # shift data so lons go from -180 to 180 instead of 20 to 380.
> topoin,lons = shiftgrid(180.,topodatin,lonsin,start=False)
> lats = latsin
> # transform to nx x ny regularly spaced native projection grid
> nx = len(lons)
> ny = int(80.*len(lats)/90.)
> lats_ny = doSpline(lats, ny)
>
> lons_mesh, lats_mesh = meshgrid(lons, lats_ny)
>
> # setup mercator map projection (-80 to +80).
> m = Basemap(llcrnrlon=-180.,llcrnrlat=-80,urcrnrlon=180.,urcrnrlat=80.,\
> resolution='c',area_thresh=10000.,projection='merc',\
> lon_0=0.5*(lons[0]+lons[-1]),lat_ts=20.)
>
> topodat = m.transform_scalar(topoin,lons,lats,nx,ny)
>
> # setup figure with same aspect ratio as map.
> fig=figure()
> fig.add_axes([0.1,0.1,0.75,0.75])
> # plot image over map.
> im = m.imshow(topodat,cm.jet)
> # PLOT CONTOURS
> m.contour(lons_mesh, lats_mesh, topodat,[-1000, -2000, -3000])
> show()
>
Evan: This works for me:
from matplotlib.toolkits.basemap import Basemap, shiftgrid
from pylab import *
topodatin = load('etopo20data.gz')
lonsin = load('etopo20lons.gz')
latsin = load('etopo20lats.gz')
# shift data so lons go from -180 to 180 instead of 20 to 380.
topoin,lons = shiftgrid(180.,topodatin,lonsin,start=False)
lats = latsin
# setup mercator map projection (-80 to +80).
m = Basemap(llcrnrlon=-180.,llcrnrlat=-80,urcrnrlon=180.,urcrnrlat=80.,\
 resolution='c',area_thresh=10000.,projection='merc',\
 lon_0=0.5*(lons[0]+lons[-1]),lat_ts=20.)
# transform to nx x ny regularly spaced native projection grid
nx = len(lons); ny = len(lats)
topodat = m.transform_scalar(topoin,lons,lats,nx,ny)
# setup figure with same aspect ratio as map.
# plot image over map.
im = m.imshow(topodat,cm.jet)
# PLOT CONTOURS
longrid,latgrid = meshgrid(lons,lats)
x, y = m(longrid,latgrid)
# reverse sign of data, so contours won't be dashed.
cs = m.contour(x, y, -topoin, [1000, 2000], colors='r')
m.drawcoastlines()
show()
Unlike the pylab contour command, the basemap contour method requires 
you to supply the X and Y values.
-Jeff
-- 
Jeffrey S. Whitaker Phone : (303)497-6313
NOAA/OAR/CDC R/PSD1 FAX : (303)497-6449
325 Broadway Boulder, CO, USA 80305-3328
From: Evan M. <eva...@gm...> - 2006年12月31日 20:09:29
In the mpl basemap 'test.py' script, I want to add some contours to the
mercator projection map (test #3). Just below line 83 (ie, below the 'im =
imshow..' command I added the line:
m.contour(topodat,[-1000, -2000])
This returns:
/home/evan/downloads/basemap-0.9.4/examples/test.py
 82 # plot image over map.
 83 im = m.imshow(topodat,cm.jet)
---> 84 m.contour(topodat,[-1000, -2000])
 85 m.drawcoastlines()
 86 m.drawcountries()
TypeError: contour() takes at least 4 arguments (3 given)
WARNING: Failure executing file: <test.py>
I understand the error to mean that I haven't supplied x and y values;
however at this point, if I close all the open figures and enter the line
'contour(topodat,[-1000, -2000])' at the ipython command, it gives me the
plot I want.
I've then tried to use meshgrid to make x and y values (see code below);
this is error free but the contours don't appear. Again, using contour in
the command line I get the plot I want. Is it not possible to plot on top
of imshow?
Any help appreciated.
Thanks, Evan
from matplotlib.toolkits.basemap import Basemap, shiftgrid
from scipy import interpolate as Pinterp
from pylab import *
import matplotlib.colors as colors
def doSpline(yVec, newLatRange):
 latRange = range(len(yVec))
 newLatRange = linspace(latRange[0], latRange[-1], newLatRange)
 tck = Pinterp.splrep(latRange, yVec)
 yVec = Pinterp.splev(newLatRange, tck)
 return yVec
topodatin = load('etopo20data.gz')
lonsin = load('etopo20lons.gz')
latsin = load('etopo20lats.gz')
# shift data so lons go from -180 to 180 instead of 20 to 380.
topoin,lons = shiftgrid(180.,topodatin,lonsin,start=False)
lats = latsin
# transform to nx x ny regularly spaced native projection grid
nx = len(lons)
ny = int(80.*len(lats)/90.)
lats_ny = doSpline(lats, ny)
lons_mesh, lats_mesh = meshgrid(lons, lats_ny)
# setup mercator map projection (-80 to +80).
m = Basemap(llcrnrlon=-180.,llcrnrlat=-80,urcrnrlon=180.,urcrnrlat=80.,\
 resolution='c',area_thresh=10000.,projection='merc',\
 lon_0=0.5*(lons[0]+lons[-1]),lat_ts=20.)
topodat = m.transform_scalar(topoin,lons,lats,nx,ny)
# setup figure with same aspect ratio as map.
fig=figure()
fig.add_axes([0.1,0.1,0.75,0.75])
# plot image over map.
im = m.imshow(topodat,cm.jet)
# PLOT CONTOURS
m.contour(lons_mesh, lats_mesh, topodat,[-1000, -2000, -3000])
show()
From: Fernando P. <fpe...@gm...> - 2006年12月31日 19:38:47
Hi Belinda,
On 12/29/06, belinda thom <bt...@cs...> wrote:
> Hi,
>
> I'm using matplotlib w/numerix set to numpy (as described in my prior
> post).
>
> What I am wondering is in what situations one would want to:
>
> import pylab
> import numpy
>
> together, because there is matlab-style stuff (e.g. matrices, arrays,
> cumprod, fft, arange etc.) by importing the pylab package alone.
To add to Eric's detailed reply, keep in mind that much of this
duplication is a historical accident. John Hunter developed mpl (and
hence pylab) back in the Dark Days of the Split (aka, when we lived
with Numeric and Numarray, both lacking critical functionality). At
that time he needed various pieces of numerical functionality for his
own work, so the most logical thing to do was to put it in the package
he had control over: matplotlib. In fact, the same thing happened in
three places: if you look at the python landscape for these tools
around 2003/4, you'll find that ipython, scipy and matplotlib ALL had
tools for: interactive work, plotting and numerics. Over time, as
each package has matured, we've all tried to move away from this, so
that hopefully the responsibilities will be:
- ipython -> interactive work
- numpy/scipy -> numerics
- matploblib -> plotting
While little code has been removed yet (to avoid breaking
compatibility for existing users), at least most of what mattered has
been moved to where it makes sense: numpy inherited utilities from
ipython and pylab, ipython has absorbed the interactive support for
matplotlib and I don't develop its plotting tools anymore (they were
for gnuplot), etc.
Following these ideas, in my personal use I normally do:
import numpy as N
import scipy as S
import pylab as P
and I try to use P.plottingStuff(), N.arrayStuff() and
S.scipyOnlyThings(). I think this is an approach that better matches
the real intent of these tools for the long term.
I hope this is useful.
best,
f
From: Allan N. E. <all...@gm...> - 2006年12月31日 06:01:13
when running the embedding_in_wx4.py available in the examples.zip i always
get an error dialog that a wxmsw26uh_vc.dll is missing. Pressing ok button
of the error dialog makes the program run as usual. When I modified the code
and added the line "from pylab import *" the program does not give the
nagging error dialog. Adding that line is a fix but I want to find out why
the program needs this dll and how can I alter the code so that I will not
use the "from pylab import *".I use wxPython 2.7, Python 2.5 and Matplotlib
0.87.7

Showing 5 results of 5

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /