X и y должны иметь одинаковое первое измерение, но иметь формы (3000,) и (1,)
У меня есть код для построения графиков функций с помощью django
и при вводе функции с клавиатуры я получаю ошибку, указанную выше. Код должен работать так: когда пользователь вводит математическую функцию с клавиатуры, он строит график для меня.
Функция
import numpy as np
import matplotlib.pyplot as plt, mpld3
def Graficador(request):
x = symbols('x')
t = np.arange(-10.0, 20.0, 0.010)
s = (request.POST['funcion'])
s = parse_expr(s)
fig, ax = plt.subplots()
ax.plot(t, s)
ax.set(xlabel='tiempo (s)', ylabel='voltaje (mV)')
ax.grid()
g = mpld3.fig_to_html(fig)
fig.savefig("test.png")
context = {'g': g}
return render(request, 'Graficar.html', context)
Ошибка появляется, когда я заворачиваю ее в график, т.е. в строке ax.plot(t,s)
появляется ошибка x и y.
HTML
<div class="news_posts">
<center>
<form class="form" action="/GraficarSolucion/" method="POST">
{% csrf_token %}
<div class="camposLogin">
<input type="text" placeholder= "Ingrese una función" id="id_username" class="form-control" name="funcion" required>
</div>
<input class="btn" type="submit" value="Calcular">
</form>
{% autoescape off %}
<div>{{ g }}</div>
{% endautoescape %}
</center>
</div>
</div>
УРЛЫ
path('graficas/', views.vistaGraficador, name='graficas'),
path('GraficarSolucion/',views.Graficador, name='GraficarSolucion'),