国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > R > 正文

R語言中使用curve函數繪制常用函數曲線

2023-04-28 12:24:14
字體:
來源:轉載
供稿:網友

前面文章中介紹了使用plot函數繪制圖形的方法。本文介紹一下使用R中curve函數繪制常見函數曲線的方法。

1、curve函數簡介

curve函數語法格式如下:

curve(expr, from = NULL, to = NULL, n = 101, add = FALSE, type = "l", xname = "x", xlab = xname, ylab = NULL, log = NULL, xlim = NULL, ...)

主要的參數如下:

expr:函數名稱或一個關于變量x的函數表達式;

from,to:表示繪圖的起止范圍;

n:一個整數值,表示x取值的數量;

add:是一個邏輯值,當為TRUE時,表示將繪圖添加到已存在的繪圖中;

type:與plot函數中type含義相同;

xname:用于x軸變量的名稱。

xlab,ylab:x軸和y軸的標簽名稱。

2、繪制y=x的直線

#y=x
curve(x+0, -10, 10, bty="l", xlab="x1", ylab="y")
abline(h=0, v=0, lty=2, col="gray")
text(0.5, -0.5, "0", col="gray")
text(8, 10, "y = x")

圖形如下:

3、繪制 y = 2x + 3 的直線

# y= 2x + 3
curve(2*x + 3, -10, 10, bty="l", xlab = "x", ylab = "y",  asp = 1)
abline(h=0, v=0, lty=2, col = "darkgray")
text(0.8, -0.8, "0", col = "darkgray")
text(15, 20, "y = 2x + 3")

圖形如下:

3、繪制形如y = ax2 + bx + c的圖像

#y=x^2
curve(x^2,-5,5,bty="l",xlab="x",ylab="y",asp=1,ylim=c(-5,25))
abline(h=0,v=0,lty=2,col="darkgray")
text(0.8,-0.8,"0",col="darkgray")
text(7,23,expression(paste("y = ",x^2)))

#y=x^2+3x+1
curve(x^2+3*x+1,-10,5,col="blue",add=T)
text(8,25.5,expression(paste("y = ",x^2," + 3x + 1")),col="blue")
abline(v= -b/(2*a),col="lightblue",lty=2)

本段代碼在同一幅圖中繪制了兩個函數圖像,分別是:y = x2和y = x2 + 3x + 1,其圖像如下圖所示:

繪制一元二次函數的圖像

4、冪函數圖像

下面的程序代碼給出的是形如y = xα的圖像。

# y = x
curve(x^1,-1.5,2,bty="l",xlab="x",ylab="y",asp=1,ylim=c(-1,1))
abline(h=0,v=0,lty=2,col="darkgray")
text(0.1,-0.1,"0",col="darkgray")
lines(c(0,1,1),c(1,1,0),lty=2,col="red")
text(1.1,0.95,"1",col="red")
#y = x ^ 2
curve(x^2,-1.5,2,add=T,col="blue")
#y = x ^ 3
curve(x^3,-1.5,2,add=T,col="orange")
#y = x ^ (1/2)
curve(x^(1/2), 0,2,add=T,col="green")
#y = x ^ (1/3)
curve(x^(1/3), 0,2,add=T,col="darkgreen")

圖像如下圖所示:

冪函數圖像

5、指數函數

下面程序代碼繪制的是形如 y = ax的函數圖像。

curve(2^x,-3,3,bty="l",xlab="x",ylab="y",asp=1,ylim=c(-0.5,8))
abline(h=0,v=0,lty=2,col="darkgray")
text(0.2,-0.15,"0",col="darkgray")
curve(4^x,-3,3,bty="l",add=T,col="blue")
curve((1/2)^x,-3,3,bty="l",add=T,col="red")
curve((1/4)^x,-3,3,bty="l",add=T,col="green")
curve(exp,-3,3,bty="l",add=T,col="orange")

具體如下圖所示:

指數函數圖像

5、對數函數圖像

繪制形如 y = loga(x)的函數圖像

curve(log(x,2),0,10,bty="l",xlab="x",ylab="y",asp=1,ylim=c(-3,5))
abline(h=0,v=0,lty=2,col="darkgray")
text(0.15,-0.15,"0",col="darkgray")
curve(log(x),0,10,bty="l",add=T,col="orange")
curve(log(x,10),0,10,bty="l",add=T,col="blue")
curve(log(x,0.5),0,10,bty="l",add=T,col="green")
curve(log(x,0.1),0,10,bty="l",add=T,col="red")

圖像如下圖所示:

對數函數圖像

其中,橘黃色的曲線是y = ln(x)的函數圖像。

6、三角函數圖像

(1)正弦與余弦函數

#sin(x)
curve(sin(x),-10,10,bty="l",xlab="x",ylab="y",asp=1)
#cons(x)
curve(cos,-10,10,add=T,col="blue")
#下面是繪制坐標軸和圖中紅色的線及標簽
abline(h=0,v=0,lty=2,col="darkgray")
text(0.5,-0.5,"0",col="darkgray")
lines(c(-pi,-pi),c(1.5,-1.5),col="red",lty=3)
text(-pi,2.5,expression(-pi),col="darkgray")
lines(c(-pi/2,-pi/2),c(1.5,-1.5),col="red",lty=3)
text(-pi/2,2.5,expression(-frac(pi,2)),col="darkgray")
lines(c(pi/2,pi/2),c(1.5,-1.5),col="red",lty=3)
text(pi/2,2.5,expression(frac(pi,2)),col="darkgray")
lines(c(pi,pi),c(1.5,-1.5),col="red",lty=3)
text(pi,2.5,expression(pi),col="darkgray")

如下圖:

正弦與余弦函數

(2)正切函數

curve(tan,-2*pi,2*pi,col="red",ylim=c(-6,6),asp=1)
abline(h=0,v=c(-pi,-pi/2,0,pi/2,pi),lty=2,col="darkgray")
text(c(-pi+0.5,-pi/2+0.5,0.5,pi/2+0.5,pi+0.5),-0.5,
c("-π","-π/2",0,"π/2","π"),col="darkgray")

函數圖像如下圖:

正切函數圖像

(3)余切函數

在R的默認基礎庫中沒有提供余切函數,但是可以根據余切與正切的關系來繪制。余切等于正切的倒數。

下面的代碼是繪制余切函數:

curve(1/tan(x),-2*pi,2*pi,col="blue",ylim=c(-6,6),asp=1)
abline(h=0,v=c(-pi,-pi/2,0,pi/2,pi),lty=2,col="darkgray")
text(c(-pi+0.5,-pi/2+0.5,0.5,pi/2+0.5,pi+0.5),0.5, c("-π","-π/2",0,"π/2","π"),col="darkgray")

函數圖像如下圖所示:

余切函數圖像

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 蒙自县| 曲周县| 娄底市| 滨海县| 铜山县| 那曲县| 修文县| 蒙阴县| 屏东市| 西华县| 阿尔山市| 涿鹿县| 临安市| 河北省| 库尔勒市| 天峨县| 三穗县| 林周县| 巴彦淖尔市| 凤阳县| 额尔古纳市| 黑河市| 湖州市| 五常市| 阳山县| 平泉县| 资中县| 汤原县| 灵台县| 瓦房店市| 三穗县| 横峰县| 聂荣县| 吉木萨尔县| 贞丰县| 怀化市| 阿拉善左旗| 临澧县| 射阳县| 济南市| 绥棱县|