Почему мой код создает неверный график в MATLAB?

Кто-нибудь знает, почему мой код MATLAB дает неправильный график?

Я хочу построить f(x)=exp(-x)-2*x.

Коды следующие.

clear all;
clc;
h=0.01;
x=-1:h:1;
f=exp(-x)-2*x;
plot(f,x,'color','r');
grid on;
xlabel('x');
ylabel('y');

Этот код дает мне такую ​​цифру.

введите здесь описание изображения

Мы знаем, что f(0)=1. Но на графике f(0) не равно 1. Кто-нибудь знает, почему мой код выдает неправильный график?


person Ongky Denny Wijaya    schedule 20.02.2021    source источник


Ответы (1)


Ось на вашем графике перевернута. Строка, которая говорит

plot(f,x,'color','r');

должно быть:

plot(x,f,'color','r');

Функция построения графика ожидает сначала абсциссу (x), а затем ординату (f).

person nonDucor    schedule 20.02.2021