R geom_smooth不会为我的数据帧绘制线条

R geom_smooth不会为我的数据帧绘制线条,r,ggplot2,R,Ggplot2,我有一个包含以下数据的数据框 my2016.regression.dataframe <- structure(list(Economy_Directorate = structure(c(9L, 1L, 18L, 11L, 5L, 7L), .Label = c("20128895", "25392278", "26802176", "33214069", "34194316", "34863777", "34867843", "36497785", "37280694", "37

我有一个包含以下数据的数据框

my2016.regression.dataframe <- structure(list(Economy_Directorate = structure(c(9L, 1L, 18L, 
11L, 5L, 7L), .Label = c("20128895", "25392278", "26802176", 
"33214069", "34194316", "34863777", "34867843", "36497785", "37280694", 
"37411816", "44460126", "45484123", "47463441", "48354697", "57954259", 
"60187650", "65135916", "67317188"), class = "factor"), People_Directorate = structure(c(12L, 
14L, 17L, 16L, 13L, 15L), .Label = c("20128895", "25392278", 
"26802176", "33214069", "34194316", "34863777", "34867843", "36497785", 
"37280694", "37411816", "44460126", "45484123", "47463441", "48354697", 
"57954259", "60187650", "65135916", "67317188"), class = "factor")), .Names = c("Economy_Directorate", 
"People_Directorate"), row.names = c(NA, -6L), class = "data.frame")

关于,

您需要将列转换为数字类型。这些因素目前包括:

my2016.regression.dataframe$Economy_Directorate = as.numeric(as.character(my2016.regression.dataframe$Economy_Directorate))
my2016.regression.dataframe$People_Directorate = as.numeric(as.character(my2016.regression.dataframe$People_Directorate))

ggplot(data = my2016.regression.dataframe) +
  geom_point(aes(y=Economy_Directorate,x=People_Directorate))+
  geom_smooth(method = "lm",aes(y=Economy_Directorate,x=People_Directorate),
              fill="orange",colour="red")

适用于我,您使用的是
ggplot2
R
的哪些版本?RStdio版本1.1.383 ggplot2版本2.2.1只需一句小小的备注:您可以在主
ggplot
调用中设置
aes()
。您不需要在
geom_point
geom_smooth
中设置两次。请不要将数据作为简单文本添加。使用
dput(my2016.regression.dataframe)
然后将输出粘贴到问题中。否则,我们无法诊断由数据格式引起的任何问题。此外,这使我们可以更轻松地导入您的数据,如果您请求帮助,只需让人们通过剪切粘贴一些完整的代码(包括
library
calls)就可以复制您的问题,从而尽可能方便地为您提供帮助,这才是礼貌之举。正如我所怀疑的,您的数字列是影响因素。转换成数字,一切正常
my2016.regression.dataframe$Economy_Directorate = as.numeric(as.character(my2016.regression.dataframe$Economy_Directorate))
my2016.regression.dataframe$People_Directorate = as.numeric(as.character(my2016.regression.dataframe$People_Directorate))

ggplot(data = my2016.regression.dataframe) +
  geom_point(aes(y=Economy_Directorate,x=People_Directorate))+
  geom_smooth(method = "lm",aes(y=Economy_Directorate,x=People_Directorate),
              fill="orange",colour="red")