# MATLAB Plot points joining

5 views (last 30 days)
Waqas Syed on 17 Sep 2015
Commented: Star Strider on 18 Sep 2015
Hi,
When I run the following code:
A=tau_invp;
B=T_delayp;
C=K_olp;
figure
grid
hold on;
for n=1:length(zeta_dom_r)
if abs(zeta_dom_r(n)-0.000)>0.0001
A(n)=0;
B(n)=0;
C(n)=0;
end
end
D=A./B;
plot(C, D, '.')
xlabel('K_{ol}');
ylabel('\alpha \propto (\tau/T)');
xlim([0 3]);
ylim([0 2]);
I get the image with six dot points. But when I put '.-' instead of '.', nothing changes on the graph. I still see simple dots. What could be a possible reason for that? I want to see the dots connected.

Star Strider on 17 Sep 2015
What is the result if you do:
plot(C, D, '-r')
or simply:
plot(C, D)
Star Strider on 18 Sep 2015
I experimented with it, and when I minimally changed your code to move the plot to be after the loop instead of including the loop:
A=tau_invp;
B=T_delayp;
C=K_olp;
for n=1:length(zeta_dom)
if abs(zeta_dom(n)-0.000)>0.0001
A(n)=0;
B(n)=0;
C(n)=0;
end
end
D = A./B;
Dv = find(~isnan(D));
Dr = [min(Dv) max(Dv)];
figure(1)
plot(C(Dv), D(Dv), 'bp')
xlabel('K_{ol}');
ylabel('\alpha \propto (\tau/T)');
xlim([0 3]);
ylim([0 2]);
grid
I discovered (with ‘Dv’) that you have only one non-NaN point in D. (I plotted it as a star so I could see it. You mentioned that you got six plotted points, so we must not be using the same data.) If you have more than one valid data point, change the plot call to replace 'bp' with 'b.-' to connect them.
Note that NaN values don’t plot, and interrupt the connections between data that otherwise do plot, so it is necessary to eliminate the NaN values before plotting them (as I did here) in order to connect them.

Tim Jackman on 17 Sep 2015
Try manually setting the LineStyle property manually:
>> lHandle = get(gca,'Children')
>> set(lHandle,'LineStyle','-')
Waqas Syed on 17 Sep 2015
Added these two lines to my code. Figure is returned as empty.