Как построить кривую функции в R
каковы альтернативы для рисования простой кривой для такой функции, как
eq = function(x){x*x}
в R?
это звучит такой очевидный вопрос, но я мог бы найти только эти связанные вопросы на stackoverflow, но они все более конкретные
- функция линии графика в R
- построение функций поверх точек данных в R
- как я могу построить функцию в R со сложным цифры?
- как построить простую кусочно-линейную функцию?
- нарисуйте более одной кривой функции в одном графике
надеюсь, я не написал дубликат вопроса.
5 ответов
ты имеешь в виду вот так?
> eq = function(x){x*x}
> plot(eq(1:1000), type='l')
(или любой диапазон значений, относящийся к вашей функции)
Я сделал некоторые поиски в интернете, и это некоторые способы, которые я нашел:
самый простой способ - использовать кривую без предопределенной функции
curve(x^2, from=1, to=50, , xlab="x", ylab="y")
вы также можете использовать кривую, когда у вас есть предопределенная функция
eq = function(x){x*x}
curve(eq, from=1, to=50, xlab="x", ylab="y")
если вы хотите использовать ggplot, у вас есть выбор между qplot
library("ggplot2")
eq = function(x){x*x}
qplot(c(1,50), fun=eq, stat="function", geom="line", xlab="x", ylab="y")
и ggplot
library("ggplot2")
eq = function(x){x*x}
ggplot(data.frame(x=c(1, 50)), aes(x=x)) + stat_function(fun=eq, geom="line") + xlab("x") + ylab("y")
решетчатое решение с дополнительными настройками, которые мне нужны:
library(lattice)
distribution<-function(x) {2^(-x*2)}
X<-seq(0,10,0.00001)
xyplot(distribution(X)~X,type="l", col = rgb(red = 255, green = 90, blue = 0, maxColorValue = 255), cex.lab = 3.5, cex.axis = 3.5, lwd=2 )
- Если вам нужен диапазон значений для x, построенных с шагом, отличным от 1, например 0.00001, вы можете использовать:
X
- вы можете изменить цвет вашей линии, определив значение rgb:
col = rgb (красный = 255, зеленый = 90, синий = 0, maxColorValue = 255)
- вы можете изменить ширину линиями, установив:
lwd = 2
- вы можете изменить размер меток, масштабируя их:
cex.lab = 3.5, cex.axis = 3.5