Cut a graph ?

5 vues (au cours des 30 derniers jours)
dsq dq
dsq dq le 10 Sep 2021
Commenté : dsq dq le 10 Sep 2021
Hi everyone !
I hope my problem will be quite clear. I am trying to plot somethings like this (Photo linked to this topic) and I wrote this :
$figure(1)
p2 = plot(0,0,'red');
bolleen = 1;
for i = 1:10
switch bolleen
case 1
bolleen = 0;
B = 1;
case 0
bolleen = 2;
B = 2;
case 2
bolleen = 1;
B = 0;
end
if B ~= 0
p2.XData(i) = i;
p2.YData(i) = B;
hold on;
end
end
I thought that for the values of i when "bolleen" is equal to 0, it won't plot it, and I would have a "cut graphic". But it seems like it takes the value (0,0) and my graphic is a mess. Thanks for your help !
  2 commentaires
Mathieu NOE
Mathieu NOE le 10 Sep 2021
hello
why such a complicated code ?
if you need to plot two lines you can simply do this
plot([1 2],[1 2],'b',[4 5],[1 2],'r');
axis([0 6 0 3]);
dsq dq
dsq dq le 10 Sep 2021
Hello,
thanks for your answer. I forgot to precise that I don't know the lenght of my vectors, and I would like to plot, only one vectors !

Connectez-vous pour commenter.

Réponse acceptée

Steven Lord
Steven Lord le 10 Sep 2021
If the data to be plotted includes NaN, that point will not be plotted.
x = 1:5;
y = [1 2 NaN 1 2];
plot(x, y)
axis([0 6 0 3]) % Show some border around the plot
  1 commentaire
dsq dq
dsq dq le 10 Sep 2021
Oh ok I see. Thanks I did not tihk to that !

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by