Подавить легенду на графике плотности ggplot2/qplot

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

Вот что я пробовал с простой последовательностью из 1000 чисел (графических рядов), в которой было около 200 NA в первых 200 местах.

qplot(plotseries,geom="density",fill="red",na.rm=TRUE,show_guide=FALSE)

qplot(plotseries,geom="density",fill="red",na.rm=TRUE,legend.position="none")

Я просмотрел онлайн-документ ggplot2 и тоже ничего там не нашел....


person William    schedule 26.08.2014    source источник
comment
Может быть, вы хотите сделать fill = I("red"), чтобы легенда не создавалась?   -  person aosmith    schedule 27.08.2014
comment
@aosmith прав: здесь требуется I. Попробуйте, например. fill='green' и вы увидите, что цвет заливки такой же.   -  person tonytonov    schedule 27.08.2014
comment
В качестве примечания: если вы планируете использовать ggplot в дальнейшем, обычно рекомендуется переключиться на вызов ggplot вместо qplot, поскольку последний ради простоты скрывает философию языка построения графиков.   -  person tonytonov    schedule 27.08.2014
comment
Я намерен использовать ggplot, но на данный момент мне просто нужна простота qplot, пока я не прочитаю книгу ggplot2 и не поэкспериментирую с ней.   -  person William    schedule 28.08.2014
comment
И если я хочу использовать переменную для цвета, как мне продолжить скрывать легенду? Должен ли я вместо этого идти на ggplot?   -  person William    schedule 28.08.2014
comment
Вы можете добавить + guides(fill = FALSE) после кода qplot.   -  person aosmith    schedule 29.08.2014


Ответы (2)


И каким будет эквивалент ggplot? fill=I("red") не принимается в следующем

ggplot(SPXweekly,aes(x=SPX, fill=I("royalblue3"))) + geom_density(альфа=0,75)

SPXweekly — это data.frame со столбцами с именами Date и SPX.

person William    schedule 28.08.2014

Если вы просто используете обычную команду qplot, а затем добавляете + theme(legend.position = "none") в свой код, легенда будет удалена. Итак, ваш код будет выглядеть следующим образом:

qplot(plotseries,geom="density",fill="red",na.rm=TRUE) + theme(legend.position="none")

Обычно такие вещи работают так же, как в команде ggplot2.

person user9941892    schedule 23.08.2018