Обрезка меток с помощью canvas в полярной координате ggplot2 - PullRequest
0 голосов
/ 10 июля 2019

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

Большая часть того, что я пробовал, была вggsave() оператор, настройка параметров высоты, ширины и масштаба

Создание данных для графика:

testData <- data.frame(Biome = c(rep('Rainforest', 3), rep('Temperate Forest', 1), rep('Desert', 2), rep('Grassland', 1), rep('Estuary', 3)),
                       Threat = c(3, 2, 1, 3, 3, 2, 3, 3, 2, 1))

Создание графика:

test_plot <- ggplot(testData, aes(x = Biome, y = as.character(Threat), group = Threat, fill = as.character(Threat))) +
  geom_bar(stat = 'identity', width = 0.95, colour = 'black', size = 2) +
  coord_polar() +
  scale_fill_manual(values = c('1' = 'red', '2' = 'darkorange', '3' = 'darkgreen'), labels = c('High', 'Medium', 'Low')) +
  labs(fill = 'Ecosystem Threat') +
  theme_minimal() +
  theme(axis.text.y = element_blank(),
        axis.text.x = element_text(colour = 'white', face = 'bold'),
        axis.title = element_blank(),
        axis.ticks = element_blank(),
        panel.grid = element_blank(),
        legend.text = element_text(colour = 'white', face = 'bold'),
        legend.title = element_text(colour = 'white', face = 'bold'),
        panel.background = element_rect(fill = 'black', colour = NA),
        plot.background = element_rect(fill = 'black', colour = NA))

Сохранениеplot:

ggsave('~Path~To~Plot',  test_plot , dpi = 1200, bg = 'transparent', height = 3, width = 7, units = 'in')

В настоящее время график выглядит хорошо в средстве просмотра графиков RStudio, но при сохранении часть текста на метках (которые на самом деле являются осевым текстом) обрезаются границами холста («Тропический лес» слева, «Лиман» справа):

Plot

...