Matplotlib: установка диапазона рисования с помощью текстового поля - PullRequest
0 голосов
/ 08 апреля 2019

Я работаю с matplotlib.pyplot в качестве домашней работы.Домашнее задание - создать программу на Python (с любой библиотекой), которая рисует (отображает) sin (x).И я хочу использовать текстовое поле для ввода длины рисунка (обведено красным на рисунке), но я понятия не имею, как заставить его работать правильно.

Мой код, ссылка на imgur, потому чтоЯ не могу публиковать изображения, но

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import TextBox
fig, ax = plt.subplots()
plt.subplots_adjust(bottom=0.2)
t = np.arange(0, 20, 0.00001)
s = np.sin(t)
initial_text = "20"
l, = plt.plot(t, s, lw=2)
plt.grid(True, which='both')
plt.axhline(y=1, color='k')
plt.axhline(y=-1, color='k')
plt.title('Sin(X), Rajzolasi suruseg: 0.00001')

def submit(text):
    textFloat = float(text)
    print(textFloat)
    out0 = np.array([textFloat])
    t = np.arange(0, out0, 0.00001)
    plt.plot(t, s, lw=2)
    plt.draw()

axbox = plt.axes([0.1, 0.05, 0.8, 0.075])
text_box = TextBox(axbox, 'Length', initial=initial_text)
text_box.on_submit(submit)

plt.show()

Я хотел бы установить длину / диапазон рисования для отрицательных и положительных значений поля ввода.Текущий код иногда делает ошибку, иногда просто печатает ввод.Пожалуйста, помогите, спасибо!

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