Ошибка matplotlib: x и y должны иметь одинаковое первое измерение и лямбда-функцию - PullRequest
0 голосов
/ 09 мая 2018

Я новичок в python и особенно новичок в лямбда-функциях. Я попытался построить функцию, которую я определяю ниже, но я получаю

ValueError: x и y должны иметь одинаковое первое измерение, но иметь формы (100,) и (1,)

Из того, что я видел при построении функций, я думаю, что ошибка в определении моих функций, т. Е. W плохо определено. Вот код:

import numpy as np
import matplotlib.pyplot as plt

def W(t):
    s=lambda t: t
    for k in range(5):
        s=lambda t, y=s: y(t)+k
    return s
t=np.linspace(0,1,100)
plt.plot(t,W(t))

1 Ответ

0 голосов
/ 09 мая 2018

Если я изменю свой код на это, он будет работать:

import numpy as np
import matplotlib.pyplot as plt

def W(t):
    s=lambda x: x
    for k in range(5):
        s=lambda x, y=s: y(x)+k
    return s(t)
t=np.linspace(0,1,100)
plt.plot(t,W(t))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...