Эквивалент кривой () для ggplot
существует ли эквивалентный метод построения функций с помощью ggplot
до curve()
команда, используемая в базовой графике? Я предполагаю, что альтернативой было бы просто создать вектор значений функции и построить связную линию, но я надеялся на что-то более простое.
спасибо!
2 ответа:
вы можете добавить кривую с помощью
stat_function
:ggplot(data.frame(x=c(0, 10)), aes(x)) + stat_function(fun=sin)
также можно использовать
qplot
, но не ясно, если это проще:qplot(c(0,2), fun=sin, stat="function", geom="line")
если ваша кривая функция более сложная, то используйте лямбда-функцию. Например,
ggplot(data.frame(x=c(0, 10)), aes(x)) + stat_function(fun=function(x) sin(x) + log(x))
вы можете найти другие примеры на http://kohske.wordpress.com/2010/12/25/draw-function-without-data-in-ggplot2/
"данные.пример "рамка" выше работает хорошо, и он делает линии сетки. Пример 'qplot' не работает в ggplot2 2.2.0 по указанным причинам.
вы также можете использовать функцию "кривая" в ggplot2 2.2.0, но она не делает автоматически линии сетки или цвет фона. Например: кривая (cos (x), from= 0, to= pi/2).
" ggplot (data.рамка.(.. ) метод дает полный впечатляющий диапазон параметров форматирования ggplot2. Мне это нравится.