2
我想爲我的特定目的編寫一個繪圖函數,並將y標籤放在左邊距上。然而,這些標籤的長度可能會有很大的不同,並取決於用戶提出的模型術語。爲此,我想測量最長標籤的寬度並相應地設置左邊距寬度。我發現strwidth
函數,但我不明白如何將其輸出單位轉換爲mar
參數的單位。舉個例子:在R圖中找到左邊距的最佳寬度
label <- paste(letters, collapse = " ") # create a long label
par(mar = c(5, 17, 4, 2) + 0.1) # 17 is the left margin width
plot(1:2, axes = FALSE, type = "n") # stupid plot example
# if we now draw the axis label, 17 seems to be a good value:
axis(side = 2, at = 1, labels = label, las = 2, tck = 0, lty = 0)
# however, strwidth returns 0.59, which is much less...
lab.width <- strwidth(label) # so how can I convert the units?
很酷,謝謝你的回答。 'mai'的默認值是多少? 'par'的幫助頁面提供了'mar'的默認值,但是我找不到'mai'。 –
'mai'和'mar'包含相同的信息,但以不同的單位。 'mar'的默認值總是相同的,但'mai'的相應值可能取決於設備,字體等。 –