hide a single XTickLabel entry

7 Ansichten (letzte 30 Tage)
Doug G
Doug G am 10 Aug. 2014
Kommentiert: Rohit Deshmukh am 28 Feb. 2020
Does anyone have a suggestion for hiding a single entry or creating a blank entry for a string used for XTickLabel?
Let's say I have 5 items plotted with random labels [labels = (2, 4, 5, 16, 29);] but I don't want to have the last item (5) plot on the edge of the plot space. I set the X axis to 0:6 to allow for some white space at both ends of the plot. Then using set(gca, 'XTickLabel',labels), I can label the items as listed. However, because the X axis is now 6 instead of 5, the number 2 shows up (it repeats the string) where there is no data. I tried adding a blank or a NaN to the end of [labels] but neither work as the blank shortens the vector back to 5 and NaN is interpreted as a label. Should I be converting labels to a string of characters and if so, can I add a blank one at the end?
Thanks.
snippet of code:
labels = [2, 4, 5, 16, 29];
y = [12 24 5 35 7];
plot(y)
axis([0 length(y)+1 0 40])
set(gca, 'XTick',1:1:length(y)+1,'XTickLabel',labels)

Akzeptierte Antwort

Star Strider
Star Strider am 10 Aug. 2014
Convert labels to a cell string, and put an empty value in the last space:
labels = {2, 4, 5, 16, 29, []};
When I ran your code with this labels array, the trailing ‘2’ didn’t plot, as I believe you want.
  4 Kommentare
Image Analyst
Image Analyst am 10 Aug. 2014
Sounds like Doug should officially "Accept" this answer to give Star credit.
Rohit Deshmukh
Rohit Deshmukh am 28 Feb. 2020
I have the same question just that the XLable entry to be hidden changes everytime.
How to make the element in matrix disappear?
If I try '[ ]' it deletes the row completely, i don't to delete it, i just want to replace it with blank element
Thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by