How do I plot all values in my IF loop?
Afficher commentaires plus anciens
I am writing a function, which cannot use the findpeaks or islocalmax, to plot all the maximum values on a graph. However with my if loop it plots each maximum value on a different figure
How do I display them all on one figure? Help very much appreciated.
Here is my function:
function [k] = Peak(X,Y)
for k = 2:length(Y)-1
if (Y(k) > Y(k-1) & Y(k) > Y(k+1) & Y(k) >100)
figure
plot(X,Y,X(k),Y(k),'r*')
end
end
end
2 commentaires
Monica Mahesh
le 13 Juin 2022
Modifié(e) : Monica Mahesh
le 13 Juin 2022
I see blank plot sheet after running this.Can you please help me to get the plot in this program
for k=0:M:M*N;
x=k+y;
m=2;
plot(x,m,'k')
hold on;
end
for k=2:M:M*N;
x=k+y;
m=0;
plot(x,m,'k')
hold on;
end
hold off;
axis([0 12 -0.5 2.5])
@Monica Mahesh: You are plotting one point at a time, in which case you'll need a data marker to see the points:
y = 1; % I make up some values here
M = 2;
N = 5;
for k=0:M:M*N;
x=k+y;
m=2;
plot(x,m,'*k'); % use marker '*' for instance
hold on;
end
axis([0 12 -0.5 2.5])
Or, if you want to plot a line to connect those points, you can plot them all at once:
figure();
x = (0:M:M*N)+y;
m = 2*ones(1,numel(x));
plot(x,m,'k')
axis([0 12 -0.5 2.5])
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Descriptive Statistics dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

