R plot:图例背景大小
R plot: Legend background size
我正在使用 R 绘制绘图(特别是散点图),并注意到图例的背景大小不必要地大(如下所示):
有什么办法可以缩小面积吗?
我尝试更改cex
,但它不仅减小了面积,而且还减小了字体大小。我想保持字体大小,但减少图例区域。
为了以防万一,附上我用过的图例的代码:
legend(x="bottomleft", legend = c("Survived (0)", "Died (1)"),
col=c(1:length(levels(Noadr.for.plot2$Death))), pch = c(19, 17),
y.intersp = 0.4,
bg = "gray")
[更新]
在这里,修改后的情节。我能够修改文本宽度,但不能修改高度(如下所示):
您可以执行以下操作:
attach(mtcars)
plot(wt, mpg, main="Scatterplot Example",
xlab="Car Weight ", ylab="Miles Per Gallon ", pch=19)
# op <- par(cex = 1)
text = c("Survived (0)", "Died (1)")
cex_val = 1
legend(x="bottomleft", legend = text,
pch = c(19, 17), cex=cex_val,
y.intersp = 1,
bg = "gray",
text.width = strwidth(text)[1]*cex_val)
部分图例宽度由您使用的标签的最长宽度决定,这是通过 strwidth
计算得出的,因此通过将其设置为文本宽度,您可以在保持字体大小的同时缩小方框。
我正在使用 R 绘制绘图(特别是散点图),并注意到图例的背景大小不必要地大(如下所示):
有什么办法可以缩小面积吗?
我尝试更改cex
,但它不仅减小了面积,而且还减小了字体大小。我想保持字体大小,但减少图例区域。
为了以防万一,附上我用过的图例的代码:
legend(x="bottomleft", legend = c("Survived (0)", "Died (1)"),
col=c(1:length(levels(Noadr.for.plot2$Death))), pch = c(19, 17),
y.intersp = 0.4,
bg = "gray")
[更新]
在这里,修改后的情节。我能够修改文本宽度,但不能修改高度(如下所示):
您可以执行以下操作:
attach(mtcars)
plot(wt, mpg, main="Scatterplot Example",
xlab="Car Weight ", ylab="Miles Per Gallon ", pch=19)
# op <- par(cex = 1)
text = c("Survived (0)", "Died (1)")
cex_val = 1
legend(x="bottomleft", legend = text,
pch = c(19, 17), cex=cex_val,
y.intersp = 1,
bg = "gray",
text.width = strwidth(text)[1]*cex_val)
部分图例宽度由您使用的标签的最长宽度决定,这是通过 strwidth
计算得出的,因此通过将其设置为文本宽度,您可以在保持字体大小的同时缩小方框。