2016-10-12 52 views
2

私はggplot:stat_smoothを使って二次多項式回帰直線を持つ散布図を作成しようとしています。 はここにコードです:ggplot stat_smoothを使ったプロット多項式回帰直線

Error: Mapping must be created by `aes()` or `aes_()` 

どうもありがとう:

df.car_spec_data <- read.csv(url("http://www.sharpsightlabs.com/ 
wp- content/uploads/2015/01/auto-snout_car-specifications_COMBINED.txt")) 

df.car_spec_data$year <- as.character(df.car_spec_data$year) 

df.car_spec_data %>% group_by(year) %>% 
summarise(maxspeed=max(top_speed_mph, 
na.rm=T)) %>% ggplot(aes(x=year, y=maxspeed, 
group=1))+geom_point(color='red', alpha=0.3, 
size=3)+stat_smooth(method='lm', y~poly(x,2)) 

は、私は、次のエラーメッセージが表示されました。

+0

あなたは '式を使用して、ここにあなたの引数に名前を付ける必要がある= Y〜ポリ(X、2)'。今は 'stat_smooth'の最初の引数' mapping'の引数に式を渡そうとしていますので、エラーになります。 – aosmith

答えて

2

これは(mtcarsデータセットのために)動作します:

df.car_spec_data <- mtcars 
df.car_spec_data %>% group_by(cyl) %>% 
    summarise(maxmpg=max(mpg, na.rm=T)) %>% 
    ggplot(aes(x=cyl, y=maxmpg, group=1)) + 
    geom_point(color='red', alpha=0.3,size=3)+ 
    stat_smooth(method='lm', formula = y~poly(x,2)) 

enter image description here

+1

これはなぜ、上記の私のコメントと同じように、なぜ機能するのかの説明を追加しますか?キーは 'formula'引数名を具体的に追加することです。 – aosmith

+0

@aosmithが指摘しているように、パラメータ式の名前を追加する必要があります。 –

関連する問題