Label a plot as contour function does

11 visualizzazioni (ultimi 30 giorni)
Filippo Manoli
Filippo Manoli il 11 Nov 2022
Commentato: Voss il 11 Nov 2022
I want to label a plot using a label located on the drawed line, just as the countour function does.
I found that I can transform my function plot to a matrix (source) that I can give as input to the contour function
cols = 1:500 ;
rows = 150 + 100*sin(cols/100) ;
M = zeros(300,500) ;
idx = sub2ind(size(M), floor(rows), cols) ;
M(idx) = 1 ;
contour(M,'LevelList',1,'ShowText','on') ;
This produce the following figure
But this plot is not visible in all the domain, has two labels (I would like just one) and the label has not a white background (the number 1 intersect the line). How can I obtain a label like the following?

Risposta accettata

Voss
Voss il 11 Nov 2022
Sounds like you want to use text:
x = 1:500 ;
y = 150 + 100*sin(x/100) ;
plot(x,y)
text(50*pi,250,'1', ...
'BackgroundColor','w', ...
'HorizontalAlignment','center')
ylim([0 300])
  2 Commenti
Filippo Manoli
Filippo Manoli il 11 Nov 2022
Thank you, that's exactly what I needed! :)
Voss
Voss il 11 Nov 2022
You're welcome!

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by