How to prevent the connecting of dots between two data points when the middle points are missing in plot
36 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Masoud Arash
am 6 Mai 2024
Kommentiert: Masoud Arash
am 6 Mai 2024
Hello Everyone.
I have a question regarding using plot in Matlab. Consider that I have the following arrays and their corresponding plots:
x1=1:10;
y1=sin(x1*2*pi/18);
x2=x1;
x2(5:6)=[];
y2=sin(x2*1.8*pi/18);
figure(1)
plot(x1,y1,'-bx',x2,y2,'-ro')
As you can see, in the red plot, the data for x=5 and x=6 are missing. What I need, is to plot these two curves in a way, that if we do not have data in a point, the line becomes separated, i.e. I do not want the Matlab to connect the data points between x=4 and x=7 in the above exmple. I have data with different density in various points that are required to be plotted at a same figure.
Now I know that there is a scatter plot, but I need to you plot command. Also, my real data is much more complicated and I cannot separate each curve to separate curves and plot them, as I need them to be one curve when I select them after plotting. In other words it is not possible for me to do the following:
figure(2)
plot(x1,y1,'-bx',x2(1:4),y2(1:4),'-ro',x2(5:end),y2(5:end),'-ro')
The figure(2) shows what I want visually. The problem is that when you select the curves in figure(2), there are three curves and, the curve for x2(1:4) is different from the curve for x2(5:end). I need them to remain as one curve when selected.
Do you know a way to solve this problem?
0 Kommentare
Akzeptierte Antwort
Kevin Holly
am 6 Mai 2024
x1=1:10;
y1=sin(x1*2*pi/18);
x2=x1;
x2(5:6)=NaN;%Change this to NaN
y2=sin(x2*1.8*pi/18);
figure(1)
plot(x1,y1,'-bx',x2,y2,'-ro')
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Scatter Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!