[英]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.