R 如何在ggplot2中使用正确间隔的连续x轴值绘制箱线图

R 如何在ggplot2中使用正确间隔的连续x轴值绘制箱线图,r,ggplot2,R,Ggplot2,我正试图绘制一个箱线图,其中x轴是一个连续的时间尺度,它是以天为单位递增的度数,即0到2500。我想得到一个x轴值在连续时间尺度上正确间隔的箱线图,而不是离散时间尺度。通常情况下,如果是常规时间/日期,我可以使用R中带有ggplot2的“scale_x_date”。但是,由于数字超出了日期/时间比例,我不确定如何正确隔开x轴值。以下是虚拟示例: library(ggplot2) set.seed(1234) #get data df <- data.frame(y=abs(rnor

我正试图绘制一个箱线图,其中x轴是一个连续的时间尺度,它是以天为单位递增的度数,即0到2500。我想得到一个x轴值在连续时间尺度上正确间隔的箱线图,而不是离散时间尺度。通常情况下,如果是常规时间/日期,我可以使用R中带有ggplot2的“scale_x_date”。但是,由于数字超出了日期/时间比例,我不确定如何正确隔开x轴值。以下是虚拟示例:

library(ggplot2)
set.seed(1234)
#get data    
df <- data.frame(y=abs(rnorm(8)),
             x=as.factor(rep(c(0,100,200,500),times=2))) 
ggplot(aes(y=y,x=x), data=df) + 
       geom_boxplot()
库(ggplot2)
种子集(1234)
#获取数据

df
df这很有效。另一方面,我的实际数据有一个较长的时间刻度(0到2500),在整个图上,它将轴拉伸到一定程度,使箱线图看起来几乎像细线。我曾尝试将轴除以100,将轴缩放到100个单位。但它将x轴上较近的点合并为一个点。您对解决此问题有什么建议吗?您可以将
width=
参数用于geom_箱线图。以x单位设置宽度我认为值得指出的是,这里的重要步骤是将样本数据中的x变量从分类改为连续。@Tjebotj-谢谢,我在答案中添加了这些信息。此外,它还需要一个额外的步骤。抱歉,重新打开一个旧的链。我正试图获得与这个问题类似的结果。我尝试使用
width=
参数。然而,这仍然导致一些箱线图比其他更接近的箱线图更宽。您知道如何强制箱线图的宽度在整个图中保持一致吗?谢谢
df <- data.frame(y=abs(rnorm(8)),
                 x=rep(c(0,100,200,500),times=2)) 

ggplot(df, aes(x, y, group=x)) + 
  geom_boxplot()