簡體   English   中英

R圖中的圖例重疊

[英]Overlapping legend in r plot

我嘗試使用此代碼,但圖例與情節重疊。 我想將圖例放在圖片的底部(在繪圖下方居中),並且我也想調整圖例中示例行的大小,因為它們也會重疊文本。

plot(Portfolio.z, plot.type ="single", main ="Portfolio",
          col =c("red", "blue", "green", "black", "yellow", "purple"),
          lty =c("solid", "solid", "solid", "solid", "solid", "solid"),
          lwd =2, ylab = "Price")
par(xpd=TRUE)
legend("bottom",legend = c("JP Morgan", "Goldman Sachs",
          "BP", "ExxonMobil", "Lockheed Martin", "Boeing"),
          text.width = min(sapply(c("JP Morgan", "Goldman Sachs",
          "BP", "ExxonMobil", "Lockheed Martin", "Boeing"), strwidth)),
          col=c("red", "blue", "black", "green", "purple",
          "yellow"), lwd=5, horiz = TRUE)

在此處輸入圖片說明

您應該閱讀圖例的手冊頁- ?legend :您可以完全控制位置和字體大小的各個方面。 首先,除非您刪除了x軸標簽或增加了底部的邊距( ?par ,參數mar= ),否則您沒有在x軸下方放置圖例的空間。 圖例中的inset=參數將調整位置,以便像inset=c(0, -.15)這樣將其放置在軸下方,但是您可能需要向上或向下調整-.15。 您還需要包括xpd=TRUE以便R知道可以將圖例放在繪圖下方的空白處。 最后, cex=控制文本的擴展,默認為1:

plot(NA, xlim=c(0, 1), ylim=c(0, 1), xlab="")
legend("bottom", "A very long legend under the plot",
    xpd=TRUE, inset=c(0, -.15), cex=.8)

在此處輸入圖片說明

暫無
暫無

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

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