2016-08-24 3 views
0

私はggplot2でローズプロットを作成しようとしています。私は以前に次のコードで作成しましたが、別のデータを置き換えてしまいました。誰かが私が何かを見ますか?ここで おかげggplot2エラーのローズプロット:美学はデータの長さ1または同じでなければなりません

はデータです:

> d <- structure(list(Angle = c(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 
+ 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200, 210, 220, 
+ 230, 240, 250, 260, 270, 280, 290, 300, 310, 320, 330, 340, 350, 360 
+), Frequency = c(0.3, 1.5, 1.6, 1.9, 2.4, 3.1, 9.6, 5.6, 5.8, 5.6, 8.8, 4, 9, 7.5, 4.6, 2.5, 1.3, 3.3, 0.5, 0.5, 0.3, 2.2, 1.1, 0.5, 1.9, 2.2, 1.1, 0.3, 0, 1.7, 1.6, 2.8, 0.7, 0.7, 1.9, 0, 0)), .Names = c("Angle", "Frequency" 
+), row.names = c(NA, 36L), class = "data.frame") 
> str(d) 

そして、これは私が以前にバラのプロットを作成するために使用するコードです:

> library(ggplot2) 
> ggplot(d, aes(x = Angle, y = Frequency)) + 
+ coord_polar(theta = "x", start = -pi/36) + 
+ geom_bar(stat = "identity") + 
+ scale_x_continuous(breaks = seq(0, 360, 60)) 

私が受け取る正確なエラーがある:

Error: Aesthetics must be either length 1 or the same as the data (36): x, y

答えて

0

これは、データには37個のエントリがありますが、あなたのrow.names ar eを36に設定し、Rに推測させる。データ指定(row.namesの下)で36L37Lに変更すると、これは入力したとおりに機能します。

関連する問題