|
From: Humufr <hu...@ya...> - 2005-01-20 16:50:43
|
Hi,
so I found some answer to the second problem, to draw a rectangle at a
certain place you add to define the limit for gca instance, by default
the limit of the figure are not use:
from pylab import *
from matplotlib.patches import Rectangle
ax = gca()
set(gca(),'xlim',[0,10],'ylim',[0,10])
p = Rectangle((1,1),3,3,fill=False)
ax.add_patch(p)
or more pythonic:
from pylab import *
from matplotlib.patches import Rectangle
ax = gca()
ax.set_xlim([0,10])
ax.set_ylim([0,10])
p = Rectangle((1,1),3,3,fill=False)
ax.add_patch(p)
but if you use axis only without redefine gca limit that don't work:
from pylab import *
from matplotlib.patches import Rectangle
axis([0,10],[0,10])
ax = gca()
p = Rectangle((1,1),3,3,fill=False)
ax.add_patch(p)
I understand that gca return an instance but perhaps that will be a good
idea if by default that will use the axis of the courrant figure and not
[0,1,0,1].
Thanks,
Nicolas
Humufr wrote:
> Hi,
>
> I have a problem to draw a rectangle:
>
> The first is that I can't arrive to draw a rectangle with ipython
> -pylab, the script who work when it's launch independantly is not
> working interactively. The rectangle is not draw. Perhaps it's normal
> but I don't think.
>
> The second problem I have is to draw a rectangle at a certain position
> with certain height and width. It's seems (at least when I tried to
> use it) that the position must be done relatively at the window and
> not from the plot. It's not very convenient because if I have a plot
> draw between 1 and 100 in x and y, to draw the rectangle I add to use
> something between 0 and 1 so I had to rescale the rectangle.
>
> Thanks,
>
> Nicolas
|