R ggplot barplot: интервал между уклоненными столбиками не соответствует - PullRequest
0 голосов
/ 26 октября 2019

Вот некоторые данные:

df <- structure(list(condition = c("injected", "uninjected", "injected", 
                             "uninjected"), variable = c("var1", "var1", "var2", "var2"), 
               value = c(90, 0, 0, 0)), row.names = c(2L, 4L, 6L, 8L), class = "data.frame")

Мой код ggplot выглядит так:

ploteg <- ggplot (data = df, aes (x = condition, y = value, fill = variable, colour = variable)) +
  geom_bar (stat = 'identity', width=0.6, position=position_dodge(width=0.7), size=1.1)

Моя команда экспорта:

ggsave('test.eps', plot=ploteg, width=65, height=90, unit='mm', bg='transparent')

или

ggsave('test.png', plot=ploteg, width=65, height=90, unit='mm', bg='transparent')

Я добавил png ниже. Теперь сравните расстояние между столбцами в не введено против введено . Я хочу, чтобы интервал был последовательным. Я не думаю, что это должно измениться, если значение равно 0 (поэтому нет заливки / только контур) или что-то отличное от 0 (заливка + контур)Эта проблема, по-видимому, не возникает в R (я позволю вам попробовать с данными выше), только после того, как график будет экспортирован, поэтому я считаю, что это может быть реальный сбой экспорта.

И дляконтекст, я добавляю контур к моим барам (с colour= и size=), чтобы мы могли видеть «плоский» бар, когда значение равно 0.

Редактировать: У меня есть (вид)решил мою проблему, заменив 0 значений очень низким значением (например, 0,3), и удалил любой контур. Это дает аналогичный эффект «плоской» панели, без проблем с шириной. Хотя далеко не элегантно. Я что-то упустил?

enter image description here

...