Plotting arrays as x and y axis.
Show older comments
I am having two arrays containing about 1000 datas. I have entered the datas using for loop. Now i need to plot the graph with one array as x axis and one array as y axis . How to do it
Answers (1)
Mischa Kim
on 12 Jan 2014
Edited: Mischa Kim
on 12 Jan 2014
Are they both 1000x1 (or 1x1000) arrays? If yes, you can simply use
plot(x,y)
where x and y are the two arrays. If no, I need more info on the size of the arrays and on what exactly you would like to plot.
9 Comments
ABHISEKH MUKHERJEE
on 12 Jan 2014
Mischa Kim
on 12 Jan 2014
Edited: Mischa Kim
on 12 Jan 2014
Could you please post or attach some of the relevant code? You can try
size(x)
to check if x is really an array (matrix) and not just a scalar. Also, don't call the plot-function in the for -loop but after the loop is completed. Something like, for example:
for ii = 1:1000
x(ii) = ii;
y(ii) = sin(0.1*ii);
end
plot(x,y)
ABHISEKH MUKHERJEE
on 12 Jan 2014
ABHISEKH MUKHERJEE
on 12 Jan 2014
Edited: Image Analyst
on 12 Jan 2014
Mischa Kim
on 12 Jan 2014
Edited: Mischa Kim
on 12 Jan 2014
OK, that's the problem. You are not generating an array but overwrite the same scalars. Assuming that p1 and p2 are arrays and defined, try:
for i = 1:1000
y(i) = p1(i);
x(i) = p2(i);
end
plot(x,y)
But then you can simply use plot(p2,p1) since they are equal to x and y.
Image Analyst
on 12 Jan 2014
ABHISEKH, this is something you could have found out very easily by looking at the values of x and y right before you called plot. So this tells me you are not familiar with debugging and you should look at Doug's great video tutorial link: http://blogs.mathworks.com/videos/2012/07/03/debugging-in-matlab/ It will help you a lot and make it so much faster for you to solve issues like this.
Sophia Christel
on 18 Apr 2017
I have a similar problem. I have two arrays x and y (both in the 1x991 Double format) which I would like to plot against each other, but simply calling plot(x,y) doesn't do anything. I have:
x=0.1:0.01:10;
n=length(x);
y=zeros(1,n);
for k=1:n;
y(k)=func(x(k),2,4);
end
plot(x,y)
I have checked both arrays and I don't see anything wrong with them.
Dhrumil
on 21 Nov 2022
Graph an array of size 10x1 with random values plot the line of the array change the 3 element of the array with 10 and line color changed array with line doing red and the same plot
Dhrumil
on 21 Nov 2022
Graph an array of size 10x1 with random values plot the line of the array change the 3 element of the array with 10 and line color changed array with line doing red and the same plot
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!