Adding vertical line to graph at certain height
19 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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!
Réponse acceptée
Steven Lord
le 26 Août 2019
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 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Line Plots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!