Я хотел бы преобразовать 2 фрагмента кода Matlab в Python/Matplotlib.Matlab to Matplotlib
Это первый фрагмент.
Xs = 1.8;
fs = 10;
fi = pi/3;
t1 = -0.1;
t2 = 0.2;
t = [t1, t2];
x = inline('Xs * sin(2 * pi * fs * t + fi)','t','Xs','fs','fi');
fplot(x, t, 2e-3, 1,'-', Xs, fs, fi)
xlabel('t'); ylabel('x_s'); grid on
title('x_s(t) = X_s sin(2 \pi f_s t + \phi_s)')
Первые 6 SLOC, которые я могу преобразовать в python, потому что они являются основным назначением переменной. Однако для SLOC 7 я не знаю эквивалента функции Matlab inline() в Matplotlib, если предположить, что она есть. Я искал пространство имен Numpy и нет функции с именем «inline». Я также был встречен сообщением об ошибке, подтверждающим вышеуказанный оператор при запуске кода. Кроме того, на SLOC 8 функция fplot() и формат некоторых ее параметров я не могу найти эквивалент в Matplotlib. Функция fplot() также не входит в пространство имен Pylab.
Второй фрагмент кода не сильно отличается, чем первый, я отправлю его так же, как усиливающих выше:
x = inline('Xe*exp(b*t)','t','Xe','b');
Xe = 0.8;
b = -0.5;
t1 = 0;
t2 = 8;
t = [t1, t2];
fplot(x,t,2e-3,1,'-',Xe,b)
xlabel('t')
ylabel('x_e')
title('x_e(t) = X_e e^{b t}')
grid on
У меня очень мало опыта как Matlab и Python/Matplotlib, однако, у меня есть удалось преобразовать некоторые другие фрагменты кода Matlab в Matplotlib. Я работаю над портфолио для школы, который требует использования Matlab для построения графика. Однако Matlab не является бесплатным, поэтому я решил использовать Matplotlib.
Заранее благодарю за помощь.
Не могли бы вы дать мне дополнительную информацию, может быть, иллюстрация функции лямбда, выполняющей то, что делает один из приведенных выше встроенных фрагментов кода? –
@ rgb-one, например 'x = lambda t, Xe, b: Xe * exp (b * t)', ранее определенный 'из numpy import exp'. – cosmoscalibur