/**/

我有一个航向和

temp <- c("hyndman_ensemble","four_theta","tbats")

当我打印Temp时.在Four_theta和tbats之间有未知的空格(在R控制台中try 此操作)

[1] "hyndman_ensemble" "four_theta"       "tbats" 

我正在用这个临时工来演绎一个传奇.由于图例有空格,如果列表中有5个项目,则数据将丢失.

图例函数(_F):

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)

This is how the plot is looking. plot result

即使我使用trimws(),也会得到空格(见下图)

谁能告诉我如何删除那些空格或任何替代方案,我可以在没有任何空格的情况下在绘图外打印图例(图例不一定要在顶部)

using 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)

enter image description here

根据我的理解,您只有一个带有ext.width=NULL的值,该值对应于您的最长条目所需的宽度.这是《Hyndman_ensemble》.如果您将其设置为"NA",那么在本例中您将得到一个包含4个条目的向量.每个条目指定每个图例条目所需的长度.

enter image description here The source is here: https://stat.ethz.ch/R-manual/R-devel/library/graphics/html/legend.html

R相关问答推荐

完成序列列名称并填写 R

堆叠栅格并计算每个像素的最大值,然后为 R 中的其余图层保留该值

乘以每个后续的第二列

如何从现有的两列创建一个新列但在 R 中省略 NAs 行

使用 df1 中多列的值来判断 df2 中的值

等效模型的不同 R 平方

Select 行以在 R 中手动平均到另一行的信息

用列索引替换非 NA 值的最简单方法

将长格式数据框转换为单行宽格式数据框

R错误:输入错误[i,]:维数不正确

将 RStudio Cloud 连接到 GitHub

为什么 left_join 产生 NA 值

如何在 tibble 的每一行和数据框的嵌套列表上应用一个函数

基于更大相等条件的不精确连接数据

如何在 R 中总结数据框列中字符串首次出现的次数?

从 r 中的向量中删除包含两个或更多大写字母的字符串

格式化表以具有均值(sd)而不是单独的列 R

网格刻度位置的确切轴值是多少?

我的 R 函数返回的向量大于预期

R在不匹配的日期列中将日期转换为y-m-d