Saya merencanakan variabel kategori dan bukannya menunjukkan jumlah untuk setiap nilai kategori.
Saya mencari cara ggplot
untuk menampilkan persentase nilai dalam kategori itu. Tentu saja, dimungkinkan untuk membuat variabel lain dengan persentase yang dihitung dan plot yang satu, tetapi saya harus melakukannya beberapa kali dan saya berharap untuk mencapai itu dalam satu perintah.
Saya sedang bereksperimen dengan sesuatu seperti
qplot(mydataf) +
stat_bin(aes(n = nrow(mydataf), y = ..count../n)) +
scale_y_continuous(formatter = "percent")
tapi saya harus salah menggunakannya, karena saya mendapat kesalahan.
Untuk mereproduksi pengaturan dengan mudah, berikut ini contoh sederhana:
mydata <- c ("aa", "bb", NULL, "bb", "cc", "aa", "aa", "aa", "ee", NULL, "cc");
mydataf <- factor(mydata);
qplot (mydataf); #this shows the count, I'm looking to see % displayed.
Dalam kasus yang sebenarnya, saya mungkin akan menggunakan ggplot
alih-alih qplot
, tetapi cara yang tepat untuk menggunakan stat_bin masih menghindari saya.
Saya juga sudah mencoba empat pendekatan ini:
ggplot(mydataf, aes(y = (..count..)/sum(..count..))) +
scale_y_continuous(formatter = 'percent');
ggplot(mydataf, aes(y = (..count..)/sum(..count..))) +
scale_y_continuous(formatter = 'percent') + geom_bar();
ggplot(mydataf, aes(x = levels(mydataf), y = (..count..)/sum(..count..))) +
scale_y_continuous(formatter = 'percent');
ggplot(mydataf, aes(x = levels(mydataf), y = (..count..)/sum(..count..))) +
scale_y_continuous(formatter = 'percent') + geom_bar();
tapi semua 4 memberi:
Error: ggplot2 doesn't know how to deal with data of class factor
Kesalahan yang sama muncul untuk kasus sederhana
ggplot (data=mydataf, aes(levels(mydataf))) +
geom_bar()
jadi jelas sesuatu tentang bagaimana ggplot
berinteraksi dengan satu vektor. Aku menggaruk-garuk kepalaku, mencari kesalahan di Google hanya memberikan satu hasil .