对于这个问题,我指的是这个例子: https://matplotlib.org/examples/user_interfaces/embedding_in_qt5.html
我想用一个简单的矩形图而不用坐标系来替换正弦图。
确切地说,我想更改原始代码的这一部分:
class MyStaticMplCanvas(MyMplCanvas):
"""Simple canvas with a sine plot."""
def compute_initial_figure(self):
t = arange(0.0, 3.0, 0.01)
s = sin(2*pi*t)
self.axes.plot(t, s)
我在Matplotlib中找到了矩形类: https://matplotlib.org/devdocs/api/_as_gen/matplotlib.patches.Rectangle.html#examples-using-matplotlib-patches-rectangle
这应该是一项简单的任务。但是我在没有成功的情况下自己尝试了很多。我的许多尝试之一看起来像:(但它不起作用)
class MyStaticMplCanvas(MyMplCanvas):
"""Simple canvas with a rectangle plot."""
def compute_initial_figure(self):
x = 10
y = 20
width = 10
height = 20
fig,ax = plt.subplots(1)
rect = mpatches.Rectangle((x, y), width, height)
ax.add_patch(rect)
self.axes.plot(rect)
有人可以帮帮我吗?任何帮助将受到高度赞赏!
答案 0 :(得分:2)
您可以使用r
将Rectangle
添加到self.axes
。此方法不会自动更改轴的限制。考虑您尝试放置add_patch
补丁的位置。
Rectangle