Marking a specific point on a graph
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to mark a point on my graph which is 63% from the starting point, but I also want the value of the point to appear on the graph as well, not just a marker.
Is there any way of doing this without manually working out what the value on X and Y should be and then manually entering them in?
2 commentaires
Jan
le 3 Nov 2016
What is "my graph", what is "the startpoint" and how do you determine "63% from the startpoint". What have you tried so far and what exatcly is your question? Do you have the wanted coordinates already and are looking for the text() command to insert a label?
Réponses (2)
KSSV
le 3 Nov 2016
x = rand(5,1) ;
y = rand(5,1) ;
plot(x,y,'.r')
strx = num2str(x) ;
stry = num2str(y) ;
str = [strx,'',stry] ;
text(x,y,str) ;
doc text
1 commentaire
Star Strider
le 3 Nov 2016
Try this:
t1 = linspace(0, 120, 13);
v = [0 3.12 5.11 6.30 7.19 7.77 8.16 8.42 8.59 8.70 8.79 8.84 8.88];
v63 = 0.63*[max(v)-min(v)]+min(v); % 63% Value
t63 = interp1(v, t1, v63); % Time (‘Time Constant’)
figure(1)
plot(t1,v)
hold on
plot(xlim, v63*[1 1], '-r')
hold off
legend('Data', '63%', 'Location','E')
text(t63, v63, sprintf('v = %6.2f\nt1 = %6.2f',v63, t63), 'VerticalAlignment','top')
1 commentaire
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!