Best Text/number location on the plot
26 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
danel james
am 30 Jul. 2022
Beantwortet: Nikolas
am 5 Jun. 2024
Hello,
I want to generate the values of x on each subplot and i was wondering if there is a way to get the text or numbers placed in 'best' location than specifying (x,y) coordinates for the text location.
x(1) on plot 1
x(2) on plot 2 etc inside a forloop
thank you
dan
0 Kommentare
Akzeptierte Antwort
Star Strider
am 30 Jul. 2022
One approach is to use the legend position after using the 'Location','best' name-value pair, and then interpolating the relative values to the relevant ‘x’ and ‘y’ values (and adding a ‘fudge factor’ if necessary).
x = 1:10;
y = randn(2,size(x,2));
figure
plot(x, y)
Ax = gca;
hl = legend('Location','best');
pos = hl.Position;
txtx = interp1([0 1],xlim,pos(1)*1.1);
txty = interp1([0 1],ylim,pos(2)*1.1);
delete(hl)
text(txtx,txty,'Hi there!')
Experiment to get the desired results.
.
Weitere Antworten (1)
Nikolas
am 5 Jun. 2024
Another way that may be more intuituve is to find the max of the x any y values and multiply them by a percentage for the location. for example: text(max(xdata)*.10,max(ydata)*0.9,'Heat Exchanger effectiveness'); Which is the equivilant to northwest location
0 Kommentare
Siehe auch
Kategorien
Mehr zu Annotations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!