Hey there! I tried plotting a simple function using two ways:
  1. By creating an anonymous function and using fplot() to produce the plot
  2. By simply creating a normal function and using plot() to produce the plot
Here's the code for the first:
clear all
close all
clc
M = 100;
p_b = 2;
Q = @(p_a) M./(p_a + p_b);
figure(1)
fplot(Q, [0 35])
ylim([0 30])
xlim([0 25])
Here's the code for the second:
clear all
close all
clc
M = 100;
p_b = 2;
p_a = [0:0.1:35];
Q = M./(p_a+p_b);
figure(2)
plot(Q,p_a)
ylim([0 30])
xlim([0 25])
The curves look identical but they're actually different if you use the data tips on the figures and compare them (see photo below)
Anyone know why this is? I'm a bit lost :(

 Akzeptierte Antwort

Torsten
Torsten am 5 Apr. 2023

0 Stimmen

plot(p_a,Q)
instead of
plot(Q,p_a):
M = 100;
p_b = 2;
Q = @(p_a) M./(p_a + p_b);
hold on
fplot(Q, [0 35])
ylim([0 30])
xlim([0 25])
p_a = [0:0.1:35];
Q = M./(p_a+p_b);
plot(p_a,Q)
hold off
grid on

2 Kommentare

PCR_7
PCR_7 am 6 Apr. 2023
My god, 'twas such a simple fix... Thank you so much! So plot and fplot just have x & y the opposite way?
Torsten
Torsten am 6 Apr. 2023
Bearbeitet: Torsten am 6 Apr. 2023
plot(x-values,y-values)
fplot(function handle or symbolic function of x,[minimum x-value maximum x-value])

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Line Plots finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2020b

Gefragt:

am 5 Apr. 2023

Bearbeitet:

am 6 Apr. 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by