Marking a specific point on a graph

5 visualizzazioni (ultimi 30 giorni)
The Master of Matlab
The Master of Matlab il 3 Nov 2016
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 Commenti
Jan
Jan il 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?
The Master of Matlab
The Master of Matlab il 3 Nov 2016
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];
plot(t1,v)
I would like to plot 63% from the start point which is 0 and I want this to appear on the graph not just a marker.

Accedi per commentare.

Risposte (2)

KSSV
KSSV il 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

Star Strider
Star Strider il 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')

Categorie

Scopri di più su Line Plots in Help Center e File Exchange

Tag

Non è stata ancora inserito alcun tag.

Community Treasure Hunt

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

Start Hunting!

Translated by