r - 在 ggplot2 中删除类别并添加数据点
问题描述
我正在尝试使用以下示例代码开发箱线图:
a <- ggplot(na.omit(dataframe), aes(x=Type, y=X_cells, fill=as.factor(response))) +
geom_boxplot()
a + ggtitle("Sampletext") +
ylab("X cells") + scale_fill_discrete(name = "Response", labels = c("Negative", "Positive")) +
theme(plot.title = element_text(face = "bold", hjust=0.5))
但是,这会导致在 x 轴上总共有 6 个类别的图,其中每个类别有 2 个框(一个表示正数,一个表示负数),总共产生 12 个箱线图。第 6 个类别在我要删除的轴中额外显示为“0”。这可能吗?
另外,有没有办法在箱线图中显示正箱和负箱的数据点?
谢谢!
解决方案
Type
您可能想检查您的变量有多少级别,str(dataframe$Type)
并检查第 6 个类别是否基于您的数据设置中的某些问题,或者只是将其排除在例如
library(dplyr)
dataframe_new <- filter(dataframe, Type != "0")
你也可以filter(dataframe, Type != "0")
在你的 ggplot 函数中使用不创建一个新的数据框然后尝试重新绘制它(但是如果没有看到实际的数据集就很难说确切的代码是否有效;所以你可能不得不调整这个""
术语)。
为了可视化数据点,您可以添加术语+ geom_point(position = position_jitterdodge()
,然后将其调整为您的偏好。
推荐阅读
- postgresql - 哪些索引会提高此查询的速度?
- javascript - 为什么当我单击确定时,if 语句中的警报没有关闭?
- javascript - 从数组中只获取一个索引
- identityserver4 - IdentityServer4 IDX20108 根据 HTTPS 方案无效
- python - python2 - 从文件中读取字节作为有符号字符
- amazon-web-services - 我可以仅使用分区键查询 DynamoDBMapper 吗?
- assembly - MARS (MIPS) 错误 - 不是有效的数据段地址
- firebase - 使 firebase 用户信息只能由用户和管理员查看
- javascript - “未捕获的 SyntaxError:JSON.parse 处的 JSON 输入意外结束”,即使解析的 json 文件相同
- scala - Scala函数:可变参数问题