簡體   English   中英

如何將x軸標簽從字符更改為其他字符?

[英]How to change the x-axis labels from a character to a different one?

我對xaxis標簽有疑問。 與此處討論的內容相反:

如何指定實際的x軸值以繪制為R中的x軸刻度

我繪制了一個包含10列的數據框。 每個方框都用一個箱形圖表示。 對於x軸,我的標簽是Pipe1到Pipe10。現在我想將這些標簽更改為特定的ID(例如)

windows()
par(mfrow= c(2,1),las=3)
boxplot(output.valid.fast,outline=F, xlab ="Pipes",ylab="RMSE(-)")
axis(1,at=c("Pipe1","Pipe2","Pipe3","Pipe4","Pipe5","Pipe6","Pipe7","Pipe8","Pipe9","Pipe10"),labels=c("1234","2345","3456","4567","5678","6789","78910","891011","9101112","10111213"))

每次這樣做,我都會收到一條錯誤消息,提示以下內容:

In axis(1, at = c("Pipe1", "Pipe2", "Pipe3", "Pipe4", "Pipe5", "Pipe6",  :
  NAs introduced by coercion

我在這里做錯了什么? 我非常感謝提示或建議。 干杯,奧利

at = c("Pipe1", ... , "Pipe10")替換at = c("Pipe1", ... , "Pipe10") at = 1:10

2列示例

boxplot(data.frame(Pipe1 = 1:10, Pipe2 = 2:11), xaxt = "n")
axis(1, at = 1:2, labels = c("1234","2345"))

在此處輸入圖片說明

只是為了以Djacks的答案為基礎來解釋發生了什么,R在數字刻度上繪制了一個軸,然后默認將標簽管道1等應用於那些。 您需要首先在xaxt = "n"函數中使用xaxt = "n"取消顯示默認文本標簽(此時注意,它仍在使用未標記的x軸生成圖),然后告訴它在選定的位置應用您選擇的標簽在axis函數at分別使用labelsat位置, at = 1:10

為了進一步說明這一點,即軸正在使用數字坐標系,您可以使用text("abc", x = 3, y = 0)在與第三個框一致的繪圖上繪制文本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM