Bagaimana cara mengubah jarak antar item legenda di ggplot2


Anda dapat menggunakan metode berikut untuk mengubah jarak antar elemen legenda di ggplot2:

Metode 1: Ubah Jarak Horizontal

 p+
  theme(legend. spacing . x = unit(1, ' cm '))

Metode 2: Ubah Jarak Vertikal

 p+
  theme(legend. spacing . y = unit(1, ' cm ')) +
  guides(fill = guide_legend(byrow = TRUE ))

Contoh berikut menunjukkan cara menggunakan setiap metode dalam praktik dengan kerangka data berikut:

 #create data frame
df <- data. frame (team=c('Mavs', 'Heat', 'Nets', 'Lakers', 'Suns', 'Cavs'),
                 points=c(24, 20, 34, 39, 28, 29),
                 assists=c(5, 7, 6, 9, 12, 13))

#view data frame
df

    team points assists
1 Mavs 24 5
2 Heat 20 7
3 Nets 34 6
4 Lakers 39 9
5 Suns 28 12
6 Cavs 29 13

Contoh 1: Mengubah jarak horizontal antar elemen legenda

Kode berikut menunjukkan cara membuat scatterplot di ggplot2 dengan legenda horizontal dengan spasi default:

 library (ggplot2)

#create scatterplot with default spacing in legend
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 ) +
  theme(legend. position = ' bottom ')

Untuk menambah jarak horizontal antar elemen legenda, kita dapat menggunakan argumen legenda.spacing.x :

 library (ggplot2)

#create scatterplot with increased horizontal spacing in legend
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 ) +
  theme(legend. position = ' bottom ',
        legend. spacing . x = unit(1, ' cm ')) 

ggplot2 meningkatkan jarak horizontal antar elemen legenda

Perhatikan bahwa jarak horizontal antar elemen legenda telah meningkat.

Semakin besar nilai yang Anda gunakan dalam fungsi unit() , semakin besar jarak antar elemen.

Contoh 2: Mengubah spasi vertikal antar elemen keterangan

Kode berikut menunjukkan cara membuat scatterplot di ggplot2 dengan legenda vertikal dengan spasi default:

 library (ggplot2)

#create scatterplot with default spacing in legend
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 )

Untuk menambah jarak vertikal antar elemen legenda, kita dapat menggunakan argumen legenda.spacing.y :

 library (ggplot2)

#create scatterplot with increased vertical spacing in legend
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 ) +
  theme(legend. spacing . y = unit(1, ' cm ')) +
  guides(fill = guide_legend(byrow = TRUE )) 

ggplot2 meningkatkan jarak vertikal antar elemen legenda

Perhatikan bahwa jarak vertikal antar elemen legenda telah meningkat.

Semakin besar nilai yang Anda gunakan dalam fungsi unit() , semakin besar jarak antar elemen.

Catatan : Anda harus menyertakan baris terakhir yang menggunakan argumen byrow = TRUE , jika tidak, elemen legenda tidak akan diberi spasi seperti yang diharapkan.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di ggplot2:

Bagaimana cara mengubah judul legenda di ggplot2
Cara mengubah ukuran legenda di ggplot2
Bagaimana cara mengubah posisi legenda di ggplot2

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *