Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在一组点上绘制矩形?_Python_Matplotlib - Fatal编程技术网

Python 如何在一组点上绘制矩形?

Python 如何在一组点上绘制矩形?,python,matplotlib,Python,Matplotlib,我所有的尝试都失败了。我试图用pyplot在一组点上绘制矩形,但我不断地得到不同的错误。有人能帮忙吗?我需要添加宽度为4,高度为2sqrt3的矩形 import matplotlib.pyplot as plt import matplotlib.patches as patches def main(): print("hello") if __name__ == "__main__": x = [] y = [] for k in range(30):

我所有的尝试都失败了。我试图用pyplot在一组点上绘制矩形,但我不断地得到不同的错误。有人能帮忙吗?我需要添加宽度为4,高度为2sqrt3的矩形

import matplotlib.pyplot as plt
import matplotlib.patches as patches

def main():
    print("hello")

if __name__ == "__main__":
    x = []
    y = []

    for k in range(30):
      for l in range(30):
        x.append(4*k + 2*(l % 2))
        y.append(2*l*3**(1/2))

    rect = patches.Rectangle((0,0),4,2*3**(1/2),linewidth=1,edgecolor='b',facecolor='none') 
    plt.plot(x, y, 'ro')
    plt.axis([0, 10, 0, 10])


    #plt.add_patch(rect)

    plt.show()
add_patch是一种轴方法,而不是pyplot下的直接方法。只需将注释行更改为:

plt.gca().add_patch(rect)

gca在pyplot中获取当前活动轴。

不要说我一直在获取不同的错误,编辑您的问题,将实际错误与粘贴的代码一起回溯。那里通常有重要的信息,即使你不知道这意味着什么,其中一个帮助你的人也可能知道。这是创建应用程序的一部分。其他部分都做得很好,这是一个很好的最小代码示例,但可能仍然值得阅读帮助页面indented@abarnert我尝试了很多东西。我应该把所有的都寄出去吗?我不熟悉matplotlib。。。所以我搞砸了很多事情。我把plt.add\u patchrect注释掉了。但是我尝试了很多其他的东西。添加子批次。。等等,你看过这个吗?试着从这些例子开始,根据你的需要修改它们。你不需要发布所有东西。只需发布一个示例,以及您所遇到的错误,如果不明显,请说明您希望该示例如何工作。有一个很好的机会,我们可以告诉你如何修复这个确切的例子,做你想做的事情,或者至少让你在你想做的方向。如果没有,我们可以问以下问题。谢谢!真的很有帮助