R ggplot2箱线图

R ggplot2箱线图,r,ggplot2,boxplot,R,Ggplot2,Boxplot,我正在尝试使用ggplot2绘制箱线图。示例数据如下所示 >sampe count genotype 71 mt 50 mt 71 mt 95 wt 60 mt 63 mt 75 mt 82 wt 93 wt 87 wt 61 mt 102 wt 60 mt 78 wt 78 wt 87 wt 84

我正在尝试使用ggplot2绘制箱线图。示例数据如下所示

>sampe

count genotype
71       mt
50       mt
71       mt
95       wt
60       mt
63       mt
75       mt
82       wt
93       wt
87       wt
61       mt
102       wt
60       mt
78       wt
78       wt
87       wt
84       wt
104       wt
81       wt
85       mt


> qplot(factor(genotype),count,data=sampe,geom="boxplot")
上面的命令生成如下图:

这里怎么了??为什么会这样策划??即使下面的代码也会产生相同的输出

ggplot(sampe,aes(x=factor(genotype),y=count))+geom_boxplot()

好的。。我会回答我自己的问题。根据建议,计数值存储为因子。把它们转换成数字就行了

qplot(factor(genotype),as.numeric(count),data=sampe,geom="boxplot")

谢谢大家的建议。

好的。。我会回答我自己的问题。根据建议,计数值存储为因子。把它们转换成数字就行了

qplot(factor(genotype),as.numeric(count),data=sampe,geom="boxplot")

谢谢大家的建议。

我想你的问题是你的Y轴不是真正的计数,R把计数理解为一个变量。 实际上,您只需要按基因型对数据进行分组,而不需要按ggplot2进行分组

df %>% group_by(genotype)
ggplot(df) +
  geom_boxplot(mapping = aes(x=genotype, y = count))

我认为你的问题是你的Y轴不是真正的计数,R把计数理解为一个变量。 实际上,您只需要按基因型对数据进行分组,而不需要按ggplot2进行分组

df %>% group_by(genotype)
ggplot(df) +
  geom_boxplot(mapping = aes(x=genotype, y = count))

你的代码对我有用。您使用的
是什么版本:packageDescription(“ggplot2”)$version
-最新版本是0.9.3.1,在这里运行良好。什么给了类(sampe$count)?我猜这是一个
因子
?似乎您的计数值是作为因子存储在数据中的,这是我复制您的绘图的唯一方法。@ToxinAlien您可以回答并接受自己的答案。@ToxinAlien,当数值存储为因子时,您不应直接转换为数字。您应该执行:as.numeric(as.character(count))。请注意这个!你的代码对我有用。您使用的
是什么版本:packageDescription(“ggplot2”)$version
-最新版本是0.9.3.1,在这里运行良好。什么给了类(sampe$count)?我猜这是一个
因子
?似乎您的计数值是作为因子存储在数据中的,这是我复制您的绘图的唯一方法。@ToxinAlien您可以回答并接受自己的答案。@ToxinAlien,当数值存储为因子时,您不应直接转换为数字。您应该执行:as.numeric(as.character(count))。请注意这个!