问题描述
我过滤了一个简单的数据场后出现了这个错误,从 12 个 obs 到 9 个,都有 2 个变量......
tmp_Type <- c("A","B","C","D","E","F","G","H","I","J","K","L")
tmp_Sum <- c(380000.2,1500,4532,2,34567,29344,545,838.5,1000,0)
tmp_Sum <- round(tmp_Sum)
sum(tmp_Sum,na.rm=T)
tmp_Summary <- data.frame(tmp_Type,tmp_Sum) # create df
summary(tmp_Summary)
ggplot(data=tmp_Summary,aes(x=tmp_Type,y=tmp_Sum)) +
geom_histogram (stat = "identity",aes(fill= tmp_Type)) +
geom_text (label = (tmp_Sum),vjust=-1,hjust=0.5)
tmp_Summary <- tmp_Summary %>% filter(tmp_Sum > 0)
summary(tmp_Summary)
ggplot(data=tmp_Summary,hjust=0.5)
解决方法
第一个图之所以起作用,是因为您在全局环境中有 tmp_Sum
向量。如果您在创建数据框后删除它们,第一个图也会给您错误。
tmp_Type <- c("A","B","C","D","E","F","G","H","I","J","K","L")
tmp_Sum <- c(380000.2,1500,4532,2,34567,29344,545,838.5,1000,0)
tmp_Sum <- round(tmp_Sum)
tmp_Summary <- data.frame(tmp_Type,tmp_Sum)
rm(tmp_Type,tmp_Sum) #removing variables
现在开始绘制。
library(ggplot2)
ggplot(data=tmp_Summary,aes(x=tmp_Type,y=tmp_Sum)) +
geom_histogram (stat = "identity",aes(fill= tmp_Type)) +
geom_text (label = (tmp_Sum),vjust=-1,hjust=0.5)
层错误(数据=数据,映射=映射,统计=统计,geom=GeomText,: 未找到对象“tmp_Sum”
始终在 label
中包含 aes
。
library(ggplot2)
ggplot(data=tmp_Summary,aes(fill= tmp_Type)) +
geom_text (aes(label = tmp_Sum),hjust=0.5)