Как настроить пространство между столбцами в ggplot2 (с примерами)


Вы можете использовать следующие методы для настройки пространства между столбцами на гистограммах ggplot2:

Способ 1. Отрегулируйте расстояние между столбцами на гистограмме.

 ggplot(df, aes(x=x_variable)) +
  geom_bar(width= .4 )

Ширина по умолчанию между столбцами равна 0,9 .

Чем ближе ширина к 1 , тем ближе будут полосы. Чем ближе ширина к 0 , тем больше будут разбросаны столбцы.

Способ 2. Отрегулируйте расстояние между столбцами на сгруппированной гистограмме.

 ggplot(df, aes(x=x_variable, y=y_variable, fill=fill_variable)) +
  geom_bar(width= .5 , stat=' identity ', position=position_dodge( .7 ))

Значение ширины управляет расстоянием между кластерами, а значение Position_dodge() управляет расстоянием между столбцами внутри одного кластера.

В следующих примерах показано, как использовать каждый метод на практике со следующим фреймом данных в R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C'),
                 position=c('G', 'G', 'F', 'G', 'F', 'F', 'F', 'G'),
                 points=c(12, 22, 24, 23, 20, 15, 11, 30))

#view data frame
df

  team position points
1 AG 12
2 AG 22
3 AF 24
4 BG 23
5 BF 20
6 BF 15
7 CF 11
8 CG 30

Пример 1. Отрегулируйте расстояние между столбцами на гистограмме.

Следующий код показывает, как создать гистограмму для визуализации появления каждой команды, используя интервал ширины по умолчанию, равный 0,9 :

 library (ggplot2)

#create bar plot with default spacing
ggplot(df, aes(x=team)) +
  geom_bar()

Следующий код показывает, как увеличить расстояние между столбцами, уменьшив значение аргумента ширины до 0,4 :

 library (ggplot2)

#create bar plot with increased spacing
ggplot(df, aes(x=team)) +
  geom_bar(width= .4 ) 

настроить расстояние между столбцами в ggplot2

Уменьшив значение аргумента ширины , мы увеличили расстояние между полосами.

Пример 2. Настройка интервала между столбцами на сгруппированной гистограмме.

Следующий код показывает, как создать сгруппированную гистограмму для визуализации общего количества очков, набранных командой и позицией:

 library (ggplot2)

#create clustered bar plot with default spacing
ggplot(df, aes(x=team, y=points, fill=position)) +
  geom_bar(stat=' identity ', position=' dodge ')

А следующий код показывает, как увеличить пространство между кластеризованными столбцами и пространство между столбцами внутри одного кластера:

 library (ggplot2)

#create clustered bar plot with increased spacing
ggplot(df, aes(x=team, y=points, fill=position)) +
  geom_bar(width= .5 , stat=' identity ', position=position_dodge( .7 )) 

Уменьшив значение ширины , мы увеличили расстояние между кластерами.

А, уменьшив значение Position_dodge() , мы увеличили расстояние между барами внутри одних и тех же кластеров.

Не стесняйтесь экспериментировать со значениями этих двух аргументов, чтобы гистограмма выглядела именно так, как вы хотите.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в ggplot2:

Как сортировать столбцы на гистограмме ggplot2
Как изменить порядок столбцов в составной гистограмме в ggplot2
Как изменить цвета столбцов в столбчатой диаграмме с накоплением в ggplot2

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *