當使用統計工具箱中的boxplot
命令時,軸屬性以奇怪的方式變化。例如,一個得到如何更改箱形圖上的軸標籤
XTick = [] XTickLabel = XTickLabelMode = manual XTickMode = manual
發生了什麼事給軸和一個如何可以重命名標籤,和/或刪除一些蜱?
當使用統計工具箱中的boxplot
命令時,軸屬性以奇怪的方式變化。例如,一個得到如何更改箱形圖上的軸標籤
XTick = [] XTickLabel = XTickLabelMode = manual XTickMode = manual
發生了什麼事給軸和一個如何可以重命名標籤,和/或刪除一些蜱?
嘗試使用可選的labels
參數調用boxplot
。
編輯 - 什麼boxplot
實際上沒有進一步的信息。
boxplot
做一些複雜的東西 - 類型edit boxplot
來看看代碼,你會發現它是一個非常長和錯綜複雜的功能。基本上它會生成一個沒有軸標籤的空白軸,這就是爲什麼您會看到XTick
等空值。然後,它會使boxplot元素脫離個別行,並通過添加文本元素來模擬假軸標籤。你可以找到它們並直接修改它們,通過繪製一個數字f
,然後獲得Children
的f
,然後迭代獲得他們的Children
。最終你會找到帶有標籤名稱的文本元素。
謝謝,這照顧我的問題,即將標籤旋轉到垂直狀態(通過將'labelorientation'屬性設置爲'inline')。但是,它並沒有解釋'boxplot'對軸的作用。 – passerby51
'boxplot'做了一些複雜的事情 - 輸入'edit boxplot'來查看代碼,你會發現它是一個非常長而複雜的函數。基本上,它會生成一個沒有軸標籤的空白軸,這就是爲什麼您會看到「XTick」的空值等等。然後,它會使boxplot元素不在單獨的行中,並通過添加「text」元素來模擬假軸標籤。你可以直接找到它們並修改它們,通過繪製一個'f'圖,然後獲得'f'的'Children',然後迭代獲得他們的'Children'。最終你會找到帶有標籤名稱的'text'元素。 –
@SamRoberts真是個好評 - 這應該是你答案的一部分。 – paddy
試試這個:
xtix = {'A','B','C'}; % Your labels
xtixloc = [1 2 3]; % Your label locations
set(gca,'XTickMode','auto','XTickLabel',xtix,'XTick',xtixloc);
由於種種原因重置XTickMode自動似乎是關鍵。
謝謝!無論他們的動機是如何在boxplot中對標籤進行黑客攻擊,從我的角度來看,處理軸標籤的自然方式似乎更有意義。我很震驚地看到函數中有近4000行代碼。打破標籤(以及依賴於它的工作流程)顯然是其中一個後果。 – Tom
謝謝你,薩姆羅伯茨,這是有幫助的。
我寫了以下內容,根據此建議刪除組標籤。但是,它將刪除所有標籤,包括軸和數據提示。似乎沒有辦法去除軸上的標籤,但將其留在數據提示上。
m = get(get(get(figH,'Children'),'Children'),'Children');
for ii = 1:numel(m)
if(strcmp(get(m(ii),'Type'),'text'))
set(m(ii),'String', '');
end
end
變量figH是手柄,你的身材。如果boxplot是活動圖形手柄,也可以嘗試gcf。
如果它不能真正解決問題,並且你有自己的問題,那麼它應該作爲一個新問題發佈。 –
你調用'boxplot'的數據是? – paddy
描述數據很困難。假設它有很多組。無論數據是什麼,在調用boxplot後,軸行爲的變化似乎都會發生。 – passerby51