Построение гистограмм / кластерных столбчатых диаграмм в R из файла csv с использованием ggplo2 - PullRequest
0 голосов
/ 05 мая 2020
• 1000 Начиная с 1981 по 1988 год.

Я использовал этот код для чтения csv: read.csv(file_location/Revenue.csv",header = T, sep=",", dec = ".")

для построения: pl <- ggplot(data,aes(x=ï..Year))

, а затем: pl + geom_bar(color='red',fill='blue').

К сожалению, я получаю что-то вроде этого . Принимая во внимание, что я бы предпочел что-то вроде этого . В этом случае я использовал только библиотеку ggplot2 , следует ли мне дополнительно использовать tidyr, diplyr ? Я ошибаюсь между непрерывными и дискретными переменными. Любые советы относительно модификации aestheti c, чтобы украсить его, или решения по этому поводу были бы очень признательны, поскольку я все еще нахожусь в основах ggplot и визуализации данных.

Я добавил штраф на случай, если вы хотите его проверить: Revenue.csv

1 Ответ

1 голос
/ 05 мая 2020

Проверьте документацию здесь формирует некоторую информацию, но большое изменение, которое вы должны сделать, - использовать geom_col вместо geom_bar. Ваш текущий вызов указывает x= aestheti c (то, что должно быть осью x), но не y= aestheti c (то, что должно быть осью y). geom_bar указывает количество наблюдений / наблюдений для каждого значения x по умолчанию, тогда как geom_col используется для отображения полосы длины y при каждом значении x ... но вам потребуется ay aestheti c.

С учетом всего сказанного попробуйте следующее:

pl <- ggplot(data,aes(x=ï..Year, y=your.y.column.name)) +
    geom_col(color='red',fill='blue')

Что касается эстетики, я могу немного изменить цветовую схему, а также тему, но это не личное предпочтение. Я предлагаю хотя бы изменить цветовую схему на geom_bar/col. color= определяет контур полос, а fill= - цвет полос. Ваш код даст вам ярко-синие полосы с красным контуром ... не очень хорошо. Я бы также изменил ширину ваших полос a, чтобы они были немного тоньше, изменив аргумент width= со значения по умолчанию 1 на что-то меньшее. Вот пример с фиктивным набором данных. Большинство людей (включая меня) не захотят загружать чужие данные по ссылке, извините.

df <- data.frame(x=1:10, y=1:10)
ggplot(df, aes(x=x, y=y)) +
    geom_col(fill='steelblue', color='black', width=0.5) +
    theme_bw()

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...