Line plotting
    4 views (last 30 days)
  
       Show older comments
    
for yy = 1:length(overlap_peaks2)
    x=overlap_peaks2(yy);
    y=1:200000:1000000;
    hold on;
      plot(overlap_peaks2(yy),y, '-r')
  end
length(overlap_peaks2) is just equal to 1
my question is why is it when i plot it, it shows up as seperate dots, how do i make it connect into a line? i am just tryign to plot x=589
0 Comments
Accepted Answer
  Walter Roberson
      
      
 on 3 Nov 2011
        for yy = 1:length(overlap_peaks2)
  x=overlap_peaks2(yy);
  y=1:200000:1000000;
  hold on;
  plot(repmat(x,1,length(y)),y, '-r')
end
By the way, you should also consider
for yy = 1:length(overlap_peaks2)
  x=overlap_peaks2(yy);
  hold on;
  plot([x x],[1 1000000], '-r')
end
0 Comments
More Answers (1)
  Fangjun Jiang
      
      
 on 3 Nov 2011
        If "length(overlap_peaks2) is just equal to 1", then in your code, yy will be 1 and the loop runs once. What is the length of overlap_peaks2(yy)? If it's a scalar, you are just going to get 5 dots.
Check your code again.
2 Comments
  Fangjun Jiang
      
      
 on 3 Nov 2011
				Usually x and y are two vectors with the same size in plot(x,y), such as plot(1:10,sin(1:10)). plot(1,1:10,'-r') or plot(1:10,1,'-r') still generates a plot but only shows 10 points. Even if you can use plot(repmat(1,1,10),1:10,'-r') to make it draw the line, I am not sure what the line means to you. 
See Also
Categories
				Find more on Annotations 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!

