Saya mencoba untuk menghapus judul legenda di ggplot2
:
df <- data.frame(
g = rep(letters[1:2], 5),
x = rnorm(10),
y = rnorm(10)
)
library(ggplot2)
ggplot(df, aes(x, y, colour=g)) +
geom_line(stat="identity") +
theme(legend.position="bottom")
Saya telah melihat pertanyaan ini dan tidak ada solusi di sana yang tampaknya berhasil untuk saya. Sebagian besar memberikan kesalahan tentang bagaimana opts
ditinggalkan dan digunakan theme
sebagai gantinya. Saya juga sudah mencoba berbagai versi theme(legend.title=NULL)
, theme(legend.title="")
, theme(legend.title=element_blank)
, pesan dll Khas kesalahan adalah:
'opts' is deprecated. Use 'theme' instead. (Deprecated; last used in version 0.9.1)
'theme_blank' is deprecated. Use 'element_blank' instead. (Deprecated; last used in version 0.9.1)
Saya menggunakan ggplot2
untuk pertama kalinya sejak versi 0.9.3 dirilis dan saya merasa sulit untuk menavigasi beberapa perubahan ...
labs()
untuk ini: Tambahkan barislabs(colour = "")
ke kode Anda yang menghasilkan grafik di atas.Jawaban:
Anda hampir sampai: tambahkan saja
theme(legend.title=element_blank())
Halaman di Cookbook untuk R ini memberikan banyak detail tentang cara menyesuaikan legenda.
sumber
guide = guide_legend()
perintah berfungsi. Untuk menghapus judul legenda isi, tetapi untuk mempertahankan judul legenda warna, misalnyascale_fill_brewer(palette = "Dark2", guide = guide_legend(title = NULL)) + scale_color_manual(values = c("blue", "white", "red"))
Ini juga berfungsi dan juga menunjukkan cara mengubah judul legenda:
sumber
theme_bw()
tetapi bukan yang terbaik dalam kasus di mana legenda memiliki kotak di sekitarnya dan diposisikan di suatu tempat di area plot (pendekatan saya yang biasa).scale_color_manual(name=element_blank())+
untuk legenda yang lebih rendah menyelesaikannya untuk sayaelement_blank()
tampaknya menjadi pendekatan yang direkomendasikan. Settingname = NULL
adalah cara lain.Pilihan lain menggunakan
labs
dan mengatur warna keNULL
.sumber
Untuk
Error: 'opts' is deprecated
. Gunakantheme()
sebagai gantinya. (Tidak berfungsi; terakhir digunakan dalam versi 0.9.1) 'Saya digantiopts(title = "Boxplot - Candidate's Tweet Scores")
denganlabs(title = "Boxplot - Candidate's Tweet Scores")
. Berhasil!sumber
Karena Anda mungkin memiliki lebih dari satu legenda dalam satu plot, cara untuk secara selektif menghapus hanya satu judul tanpa meninggalkan ruang kosong adalah dengan mengatur
name
argumenscale_
fungsinyaNULL
, yaituscale_fill_discrete(name = NULL)
(pujian untuk @pascal untuk komentar di utas lain )
sumber