NA 未显示在使用 qplot 的 ggplot2 散点图中
NA not showing in ggplot2 scatterplot using qplot
我正在使用 ggplot2
中的 qplot
来制作散点图。我无法在 x 轴上看到所有值。此外,它正在从 x 轴上删除 NA
。如何保留 NA
并控制 x 轴显示的特征数量?
rate_plot = qplot(Result$temp, Result$CR, main="Rate", xlab=feature, ylab="Rate", size=I(3))+
scale_x_discrete(drop=FALSE)
数据:
Google Docs link
Result <- read.table(text = " temp NCH type CH i.type CR
1 NA 1878464 nochurn 549371 churn 0.226280204
2 1.87 2236 nochurn 4713 churn 0.678227083
3 2.14 4945 nochurn 8530 churn 0.633024119
4 2.25 423 nochurn 972 churn 0.696774194
5 2.79 3238 nochurn 7692 churn 0.703751144
6 3.25 266817 nochurn 12678 churn 0.045360382
7 3.33 2132 nochurn 4295 churn 0.668274467
8 5.1 6683 nochurn 7743 churn 0.536739221
9 6 342554 nochurn 21648 churn 0.059439542
10 6.51 1785 nochurn 4764 churn 0.727439304
11 8 13668 nochurn 22751 churn 0.624701392
12 9.85 6005 nochurn 14687 churn 0.709791224
13 11.99 378 nochurn 850 churn 0.69218241", header = TRUE)
对于自定义刻度和标签,我们可以使用 scale_x_continuous。
低于警告意味着从绘图数据中删除具有 NA 值的行:
Removed 1 rows containing missing values (geom_point)
使 NA 显示在 x 轴上的解决方法,我们需要为 NA 值分配一些值,这里我在图的右端绘制 NA 值。获取 x 轴的最大值(temp
变量)然后使用自定义 x 轴标签。
library(ggplot2)
# set NA to max value + 1
plotDat <- Result
plotDat[ is.na(plotDat$temp), "temp"] <- max(ceiling(plotDat$temp), na.rm = TRUE) + 1
#plot with custom breaks and labels
ggplot(plotDat, aes(x = temp, y = CR)) +
geom_point() +
scale_x_continuous(breaks = 1:max(ceiling(plotDat$temp)),
labels = c(1:(max(ceiling(plotDat$temp)) - 1), "NA"))
我正在使用 ggplot2
中的 qplot
来制作散点图。我无法在 x 轴上看到所有值。此外,它正在从 x 轴上删除 NA
。如何保留 NA
并控制 x 轴显示的特征数量?
rate_plot = qplot(Result$temp, Result$CR, main="Rate", xlab=feature, ylab="Rate", size=I(3))+
scale_x_discrete(drop=FALSE)
数据: Google Docs link
Result <- read.table(text = " temp NCH type CH i.type CR
1 NA 1878464 nochurn 549371 churn 0.226280204
2 1.87 2236 nochurn 4713 churn 0.678227083
3 2.14 4945 nochurn 8530 churn 0.633024119
4 2.25 423 nochurn 972 churn 0.696774194
5 2.79 3238 nochurn 7692 churn 0.703751144
6 3.25 266817 nochurn 12678 churn 0.045360382
7 3.33 2132 nochurn 4295 churn 0.668274467
8 5.1 6683 nochurn 7743 churn 0.536739221
9 6 342554 nochurn 21648 churn 0.059439542
10 6.51 1785 nochurn 4764 churn 0.727439304
11 8 13668 nochurn 22751 churn 0.624701392
12 9.85 6005 nochurn 14687 churn 0.709791224
13 11.99 378 nochurn 850 churn 0.69218241", header = TRUE)
对于自定义刻度和标签,我们可以使用 scale_x_continuous。
低于警告意味着从绘图数据中删除具有 NA 值的行:
Removed 1 rows containing missing values (geom_point)
使 NA 显示在 x 轴上的解决方法,我们需要为 NA 值分配一些值,这里我在图的右端绘制 NA 值。获取 x 轴的最大值(temp
变量)然后使用自定义 x 轴标签。
library(ggplot2)
# set NA to max value + 1
plotDat <- Result
plotDat[ is.na(plotDat$temp), "temp"] <- max(ceiling(plotDat$temp), na.rm = TRUE) + 1
#plot with custom breaks and labels
ggplot(plotDat, aes(x = temp, y = CR)) +
geom_point() +
scale_x_continuous(breaks = 1:max(ceiling(plotDat$temp)),
labels = c(1:(max(ceiling(plotDat$temp)) - 1), "NA"))