Как нарисовать прямоугольник над множеством точек? - PullRequest
0 голосов
/ 27 апреля 2018

Все мои попытки провалились. Я пытался нарисовать прямоугольник над множеством точек с помощью Pyplot, но я продолжаю получать разные ошибки. Может кто-нибудь помочь? Мне нужно добавить прямоугольник с шириной = 4 и высотой = 2sqrt (3)

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()

1 Ответ

0 голосов
/ 27 апреля 2018

add_patch - это метод axes, а не что-то прямо под pyplot. Просто измените закомментированную строку на:

plt.gca().add_patch(rect)

gca() возвращает текущие активные оси в pyplot.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...