R 如何随机选择一条带有gghighlight的线并将其高亮显示?

R 如何随机选择一条带有gghighlight的线并将其高亮显示?,r,ggplot2,data.table,R,Ggplot2,Data.table,使用中的示例,如果我有一束线,如果数据点相互连接,根据数据表中的列(例如ID)形成一条线,我如何随机选择其中一条线?您可以使用sample()函数随机获取一个值。如果您的数据帧被称为df,我会为您的gghighlight()行考虑如下内容: # your plot code = p p + gghighlight(ID == sample(unique(df$ID),1)) 这将随机突出显示df$ID中唯一值向量中的一个值。重要的是要注意,如果您希望它始终是随机的,并且您在脚本的其他地方预先设

使用中的示例,如果我有一束线,如果数据点相互连接,根据数据表中的列(例如
ID
)形成一条线,我如何随机选择其中一条线?

您可以使用
sample()
函数随机获取一个值。如果您的数据帧被称为
df
,我会为您的
gghighlight()
行考虑如下内容:

# your plot code = p
p + gghighlight(ID == sample(unique(df$ID),1))
这将随机突出显示
df$ID
中唯一值向量中的一个值。重要的是要注意,如果您希望它始终是随机的,并且您在脚本的其他地方预先设置了任何随机种子,则需要重置随机种子。这两个选项中的任何一个都是实现这一目标的好方法:

set.seed(NULL)
set.seed(Sys.time())
在链接的
gghighlight
中的示例中,这是如何添加到该脚本以确保随机拾取一行(因为数据是由代码开头的
set.seed(2)
一致生成的):


谢谢你的回答。如果你有这个问题的答案,我也会很感激
set.seed(NULL)

ggplot(d) +
  geom_line(aes(idx, value, colour = type)) +
  gghighlight(sample(type==unique(d$type),1))