How to plot vertical lines for each data point?
46 views (last 30 days)
Show older comments
Victoria Wilson
on 11 Mar 2020
Edited: Victoria Wilson
on 11 Mar 2020
I have a line graph plot which is giving me a correct figure looking like the following:

However, my task is to recreate a zonation simulating the following figure:

I therefore need to add vertical lines to the plot at each data point along the x axis.
Any help would be greatly appreciated.
0 Comments
Accepted Answer
Steven Lord
on 11 Mar 2020
Combine a plot plot (or a line plot) and a stem plot.
x = 0:10;
y = x.^2;
plot(x, y);
hold on;
stem(x, y, 'Marker', 'none');
More Answers (1)
Ameer Hamza
on 11 Mar 2020
Edited: Ameer Hamza
on 11 Mar 2020
Check this example
% Example data
x = logspace(0,1,30);
y = log(x);
% plot original line
plot(x,y);
hold on;
% plot vertical lines
line_coordinates = [x' x' zeros(size(x')) y'];
line_coordinates = mat2cell(line_coordinates, ones(numel(x),1), [2 2])';
line_coordinates(3,:) = {'k'};
plot(line_coordinates{:})

3 Comments
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!