Редактирование графиков - PullRequest
       11

Редактирование графиков

0 голосов
/ 27 февраля 2019

Я использую пакет likert R для составления графиков в соответствии с вопросником.Графики в основном представляют собой спектры предпочтений и очень похожи на эти репрезентации (исходные данные не раскрываются):

data("pisaitems")
title <- "How often do you read these materials because you want to?"
items29 <- pisaitems[,substr(names(pisaitems), 1,5) == 'ST25Q']
head(items29); ncol(items29)
names(items29) = c("Magazines", "Comic books", "Fiction", "Non-fiction books", "Newspapers")
l29 <- likert(items29)
str(l29)
l29s <- likert(summary = l29$results)
str(l29s)
scale_height = knitr::opts_chunk$get('fig.height')*0.5
scale_width = knitr::opts_chunk$get('fig.width')*1.25
knitr::opts_chunk$set(fig.height = scale_height, fig.width = scale_width)
theme_update(legend.text = element_text(size = rel(0.7)))
plot(l29s) + ggtitle(title)

Итак, вот мои проблемы:

  1. Яделать этот анализ для немецкой компании, и я не могу избавиться от метки «Процент» на графике?
  2. Как мне изменить отметки на оси с шагом 10%?
  3. Как мне выровнять названия элементов по левому краю и центрировать заголовок?Как выровнять легенду по левому нижнему углу?

Мне удалось настроить большинство параметров графика в соответствии с моими предпочтениями, но эти последние 3 меня не учитывают.

fyi:Пример был сгенерирован с этого сайта: https://rpubs.com/m_dev/likert_summary

1 Ответ

0 голосов
/ 27 февраля 2019

Функция plot из пакета likert возвращает объект ggplot.Вы можете обновить / переопределить аспекты этого объекта как обычно.(Вы уже сделали это один раз в своей последней строке с помощью + ggtitle().

. Обратите внимание, что график поворачивается так, что иногда вам нужно обратиться к оси Y, которая --- после вращения ---отображается как ось X.

Я решил ваши первые два вопроса и оставил третий в качестве упражнения для вас или для кого-то еще.

library(likert)
data(pisaitems)
title <- "How often do you read these materials because you want to?"
items29 <- pisaitems[, substr(names(pisaitems), 1,5) == 'ST25Q']
names(items29) <- c("Magazines", "Comic books", "Fiction", "Non-fiction books", "Newspapers")
l29 <- likert(items29)
l29s <- likert(summary = l29$results)

# Make axis tick labels left aligned with 'axis.text.y'
theme_update(legend.text = element_text(size = rel(0.7)),
             axis.text.y = element_text(hjust = 0))

# Override default label for axis with 'labs()'
# Override breaks of axis with 'continuous_scale()'
plot(l29s) + 
    labs(title = title, y = "Prozent") +
    scale_y_continuous(labels = likert:::abs_formatter, lim = c(-100, 100),
                       breaks = seq(-100, 100, 25))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...