Is it possible to create x tick labels with a fixed width
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Is it possible to create xticklabels that wraps the text when it gets to long to a new line. I have a program that creates a bar graphs based on existing data. The number of bars on the graph changes anywhere from 1 to 10. On the xticklabels I want to have a description of each bar that goes to a new line as to not interfere with any other text. I am aware of https://www.mathworks.com/matlabcentral/answers/218675-is-it-possible-to-create-textbox-with-fixed-width-on-a-plot this method, but that just creates an annotation not an xticklabel. Is it possible to use 'FitBoxToText' when using xtixklabels. an example set of data I would have would be a 4x3 matrix that contains the quantity, a part number and a description.
An example of the data 2ould look like
Then the output graph would look like
0 commentaires
Réponses (1)
dpb
le 15 Jan 2020
Modifié(e) : dpb
le 15 Jan 2020
AFAIK, no, that's an amenity TMW hasn't yet provided with the ticklabel property. It's a very simple text string with formatting limited to what can do w/ TeX subset and fonts, etc. It's not a text box control or anything even approaching such.
It undoubtedly can be made to work but you'll have to do the line breaks yourself.
I think using the annotation "trick" with positions centered on the tick values will be your simplest route by far.
You could check File Exchange and see if somebody has already done the heavy lifting for you; if not your function would be a useful submittal.
4 commentaires
Walter Roberson
le 16 Jan 2020
Figure resizefcn callback to catch cases where the graph is moving. See also https://www.mathworks.com/matlabcentral/answers/102850-is-it-possible-to-access-figure-callbacks-for-pan-zoom-events
Voir également
Catégories
En savoir plus sur Labels and Annotations 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!