我有一个向量
temp <- c("hyndman_ensemble","four_theta","tbats")
Run Code Online (Sandbox Code Playgroud)
当我打印温度时 four_theta 和 tbats 之间有未知空格(在 R 控制台中尝试此操作)
[1] "hyndman_ensemble" "four_theta" "tbats"
Run Code Online (Sandbox Code Playgroud)
我在图例中使用这个温度。由于图例有空格,如果列表中有 5 个项目,则数据会丢失。
图例_功能:
add_legend <- function(...) {
opar <- par(fig=c(0, 1, 0, 1), oma=c(0, 0, 0, 0),
mar=c(0, 0, 0, 0), new=TRUE)
on.exit(par(opar))
plot(0, 0, type='n', bty='n', xaxt='n', yaxt='n')
legend(...)
}
cl <- rainbow(3)
#Null plot just to display what is happening with the spaces in legend
plot(NULL, xlim=c(0,30), ylim=c(0,100000))
add_legend("topright", legend=c("test1",temp), lty=1,
col=c("orange", cl),
horiz=TRUE, bty='n', cex=0.8)
Run Code Online (Sandbox Code Playgroud)
即使我使用trimws(),我也会得到空格(见图)
谁能告诉我如何删除这些空格或任何可以在图外打印图例而没有任何空格的替代方法(图例不强制位于顶部)
您可以将该text.width
参数设置为“NA”,默认为 NULL:
plot(NULL, xlim=c(0,30), ylim=c(0,100000))
add_legend("topright", legend=temp, lty=1,
col=c("orange", cl),
horiz=TRUE, bty='n', cex=0.8, xjust= 0, text.width=NA)
Run Code Online (Sandbox Code Playgroud)
我的理解是,您只有一个值 text.width = NULL,该值对应于最长条目所需的宽度。这是“hyndman_ensemble”。如果将其设置为“NA”,则在本例中您将得到一个包含 4 个条目的向量。每个条目指定每个图例条目所需的长度。
来源在这里:https ://stat.ethz.ch/R-manual/R-devel/library/graphics/html/legend.html
归档时间: |
|
查看次数: |
228 次 |
最近记录: |