Unwanted line on graph plot?
Ältere Kommentare anzeigen
Hello, I was trying to plot a simple code like this:
x=1:6;
y=zeros(6);
for i=1:6
y(i)=2^i;
end
figure(1)
hold on
xlabel('Number of Nodes')
ylabel('Maximum force(N)')
plot(x,y,'-o')
grid on
However, I get this unnecessary line plotted on the x-axis (all points on the x-axis with y coordinate zero) but x coordinates are same as that of the x-coordinates above. How can I remove this ?
Antworten (2)
Steven Lord
am 1 Sep. 2017
You don't want to start with y a 6-by-6 matrix with every element equal to 0. You want to start with a 6 element vector, like:
y = zeros(1, 6);
x=1:6;
y=zeros(1,6);
for i=1:6
y(i)=2^i;
end
figure(1)
hold on
xlabel('Number of Nodes')
ylabel('Maximum force(N)')
plot(x,y,'-o')
grid on
When you initialize y = zeros(6), it will be a matrix.....don't initialize it as a matrix...initialize it as a vector, y = zeros(1,6) .
You need not to use a loop.....
x=1:6;
i=1:6 ;
y=2.^i;
figure(1)
hold on
xlabel('Number of Nodes')
ylabel('Maximum force(N)')
plot(x,y,'-o')
grid on
Kategorien
Mehr zu Data Exploration finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!