Adding vertical line to graph at certain height

34 次查看(过去 30 天)
Hi everyone,
I attached a picture of what I want to achieve - I'm using a script with a loop that creates a plot for each participant in a study and would like to add a vertical line at 4.5 seconds. I did manage to add a vertical line using
x=[4.5,4.5];
y=[-10,0];
plot(x,y)
However the problem is that I need to specify y-values. This is a problem because the y scale can differ vastly between participants (for some it will be 600 - 700, for some 0 - 10). Is there a universal way to add a line that simply starts at the bottom (at the x-axis) and goes up to a certain y-value? Thank you in advance!

采纳的回答

Steven Lord
Steven Lord 2019-8-26
I'd use the stem function. First, generate some sample data and plot it. Turn hold on so we can add the stem plot later.
x = 1:10;
y = x.^2;
plot(x, y, '-');
hold on
For the selected stem locations, determine the corresponding y values.
xx = 2:1.75:9;
yy = interp1(x, y, xx);
Plot the stems.
s = stem(xx, yy);
You can adjust various properties of the stems using s. For instance, to make the markers larger magenta squares:
s.Marker = 's';
s.MarkerSize = 12;
s.MarkerFaceColor = 'm';
  3 个评论

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Line Plots 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by