在R中使用ggplot2绘制箱线图遇到问题求助
解决ggplot绘制单个箱线图的问题
因为ggplot的语法要求必须明确映射x、y轴,不像base R的boxplot()可以直接传向量生成单个箱线图。你可以给x轴设置一个虚拟分类变量(比如空字符串或自定义标签),就能画出想要的图了,具体步骤如下:
先把数据整理成数据框格式(如果你的
data1是向量的话):library(ggplot2) # 向量转数据框 df <- data.frame(数值 = data1)绘制箱线图,x轴用虚拟变量,y轴映射你的数值列:
ggplot(df, aes(x = "", y = 数值)) + geom_boxplot() + # 自定义轴标签,x轴留空更简洁 labs(x = "", y = "你的数值名称") + # 去掉x轴的刻度和文字,让图更干净 theme(axis.text.x = element_blank(), axis.ticks.x = element_blank())
如果你的data1本身就是单列数据框,直接用列名映射y轴就行:
ggplot(data1, aes(x = "", y = 你的列名)) + geom_boxplot() + labs(x = "", y = "你的数值名称") + theme(axis.text.x = element_blank(), axis.ticks.x = element_blank())
这样就能得到和base R boxplot(data1)一样的单个箱线图了。
内容的提问来源于stack exchange,提问作者Arial
相关产品推荐
相关产品推荐

