###################################################express
問題:基礎繪圖plot 18.4.30ide
plot函數,基礎繪圖的各個參數?函數
解決方案:字體
cars <- c(1, 3, 6, 4, 9); spa
trucks <- c(2, 5, 4, 5, 12); code
suvs <- c(4,4,6,6,16)圖片
g_range <- range(0, cars) #range()產生一個範圍,本例即0-16文檔
plot(cars,數學
main = "",it
sub = "", #font.sub="", cex.sub=2, col.sub="",
# font: 設置文字的格式,1是默認值,就是普通的文字,2表明加粗,3表明斜體, 4表明加粗+斜體,
xlab = "",
ylab = "",
# plot(cars, type="o", col="blue", ylim=g_range, ann=FALSE, axes=FALSE)
# ann=F不繪製標題, 後面纔有title(main="", col.main="red", font.main=2, cex.main=2, adj="")
#後面纔有title(xlab="", ylab="", col.lab=rgb(0,0.5,1), font.lab=1, cex.lab=1.5, adj="")
# axes=F表示不繪製座標軸,後面才能添加axis設置座標軸;注意只會影響到是否畫出座標軸線和刻度,不會影響座標軸標題
#axis(1, at=1:5, lab=c("Mon","Tue","Wed","Thu","Fri"))#1,2,3,4表示座標軸的下 左 上 右側。
#axis(2, las=1, at=4*0:g_range[2], col.axis="", font.axis=2, cex.axis="")
# at=4*0:g_range[2]表示刻度範圍爲(0:g_range[2]),每4個單位顯示一個刻度
# las=表示文字的方向,是平行於y軸仍是垂直於它
xlim = c(1,5),
ylim = c(min(cars),max(cars)),
type = "o",
#type設置畫圖的類型,有九種可能的取值,分別表明不一樣的樣式:
# (1)'p'畫點;(2)'l'畫線5;(3)'b'同時畫點和線,但點線不相交;(4)'c'將type= 'b'中的點去掉,只剩下相應的線條部分;
# (5)'o'同時畫點和線,且相互重疊,;(6)'h'畫鉛垂線;(7)'s'畫階梯線,從一點到下一點時,先畫水平線,再畫垂直線;
# (8)'S'也是畫階梯線,先畫垂直線,再畫水平線;(9)'n'做一幅空圖,沒有任何內容,但座標軸、標題等其它元素都照樣顯示。
pch = 2,
cex = 1.2, #字體的放大倍數
col = "blue"
#asp= 圖形縱橫比 y=x;
# log 座標是否取對數,TRUE或者FALSE;
)
討論擴展:
title(main="Autos",font.main=4,cex.main=2,col.main="red",)
# font.main用於控制字體,分別爲1: 正常,2: 斜體,3: 粗體,4: 粗斜體; 此三項可同做用於main、sub、xlab、ylab
# cex.main 設置字的大小,是原大小的多少倍。
# col.main 設置main的顏色
legend(1, g_range[2], c("cars","trucks"), cex=0.8, col=c("blue","red"), pch=21:22, lty=1:2, bg="grey", title="more", title.col="red")
# 添加內部圖例,legend(,1,g_range[2])表示圖例左上角的座標;c("cars","trucks")標籤內容,cex=0.8字體的放大倍數,
text(x = c(3, 4), y = c(3, 5), labels = c("text", "text"), col = c("red", "blue"),cex = c( 0.8 , 1 )) # 在兩個位置添加(3,3)和(4,5)
text(x = 4, y = 2, labels =expression(hat(beta) == (X^t * X)^{-1} * X^t * y), srt = 45, adj = c(0.5, 0.5), cex = .8)
# 想打印數學表達式或者一些特殊符號,使用expression 函數.參考 plotmath 函數的幫助文檔
# srt文字與x軸正向的夾角。adj取值0-1,是對labels內容總體位置的微調,在中心位置的哪一個方向。
# pos+offset: 也是對文字的位置進行調整,可選值爲1,2,3, 4分別對應下,上,左,右,不能和adj參數同時使用,
mtext("text", side=4, line=0.4, las=1, col="red", cex=1.2, at=1:3, adj="") #爲四個座標軸添加標籤文字。
#在邊空添加text指定的文字,side:1=bottom, 2=left, 3=top, 4=right;line:添加的文字距離繪圖區域的距離,las 文字方向,..
lines(trucks, type="o", pch=22, col="red", lty=2, lwd=2) #添加折線,pch控制點的符號,lty=2表示虛線,
#lty控制連線的線型,能夠是整數(1: 實線,2: 虛線,3: 點線,4: 點虛線,5: 長虛線,6: 雙虛線),
abline(a=2, b=1, type="l", pch=2, col="red", lty=2, lwd=2) #繪製斜率爲1和截距爲2的直線
# abline(h = 3.5,v = 3) 畫y=3.5直線和x=3直線。
box(bty="L") # 添加外部邊框
# bty控制圖形邊框形狀,可用的值爲: "o", "l", "7", "c", "u" 和"]" (邊框和字符 的外表相像);
arrows(1, 2, 2, 4, code=2, angle= 30, lengths=0.1, lty=1, lwd=2, col="red") #添加箭頭,
# 若是code=1,2,3在一端仍是兩端畫箭頭; angle控制箭頭軸到箭頭邊的角度,lengths箭頭的大小
rect(1,5,2,7,col="red")
# 在座標爲(1,5)到(2,7)爲對角線畫長方形。
另請參閱:
做圖其餘相關函數(具體參數使用查看幫助文檔):
abline( ): 在原有的圖上加直線。
points( ): 在原有的圖上加點。
lines(): 在原有的圖上加線。
arrows(): 在原有的圖上加帶箭頭的線。
text(): 在原來的圖上某座標位置上加文本標籤。
title(): 給原有的圖形添加標題。
legend(): 在原有的圖形上加圖例。
frame() 與 plot.new(): 創建新的圖形窗口。
heat.colors( )/ rainbow( )/ gray.colors( ): 做圖顏色函數。
legend(x, y = NULL, legend, fill = NULL, col = par("col"),
border = "black", lty, lwd, pch,
angle = 45, density = NULL, bty = "o", bg = par("bg"),
box.lwd = par("lwd"), box.lty = par("lty"), box.col = par("fg"),
pt.bg = NA, cex = 1, pt.cex = cex, pt.lwd = lwd,
xjust = 0, yjust = 1, x.intersp = 1, y.intersp = 1,
adj = c(0, 0.5), text.width = NULL, text.col = par("col"),
text.font = NULL, merge = do.lines && has.pch, trace = FALSE,
plot = TRUE, ncol = 1, horiz = FALSE, title = NULL,
inset = 0, xpd, title.col = text.col, title.adj = 0.5,
seg.len = 2)
x, y X,y用於定位圖例,也可用單鍵詞"bottomright", "bottom", "bottomleft", "left", "topleft", "top", "topright", "right" and "center"
legend 字符或表達式向量
col 圖例中出現的點或線的顏色
lty, lwd 圖例中線的類型與寬度
seg.len lty 與lwd的線長,長度單位爲字符寬度
cex 字符大小
x.intersp 圖例中文字離圖片的水平距離
y.intersp 圖例中文字離圖片的垂直距離
title 給圖例加標題
title.col 標題顏色
title.adj 圖例標題的相對位置,0.5爲默認,在中間。0最左,1爲最右。
text.width 圖例字體所佔的寬度
text.col 圖例字體的顏色
text.font 圖例字體
horiz 默認堆疊放置圖例c()中的項目,if TRUE,則左右放置
xjust legend相對於x軸的對其方式 0:左對齊,0.5:居中對齊,1:右對齊。how the legend is to be justified relative to the legend x location.
yjust
bg bty != "n"時,整個圖例的背景色
bty 圖例框是否畫出,o爲畫出,默認爲n不畫出
box.lty, box.lwd, box.col bty = "o"時,圖例框的類型,box.lty決定是否爲虛線,box.lwd決定粗線,box.col決定顏色
fill 用特定的顏色填充圖例裏面 legend 前面的顏色
border 當fill = 參數存在的狀況下,填充色的邊框
xpd xpd=FALSE,即不容許在做圖區域外做圖,改成TRUE便可,與par()參數配合使用。
trace logical; if TRUE顯示圖例信息.
plot logical. If FALSE不畫出圖例
adj 圖例中字體的相對位置
pch 點的類型
angle 陰影的角度
density 陰影線的密度
pt.bg 點的背景色
pt.cex 點的大小
pt.lwd 點的邊緣的線寬
merge logical, if TRUE,合併點與線,但不填充圖例框,默認爲TRUE
ncol 圖例中分類的列數
inset 當圖例用關鍵詞設置位置後,inset = 分數,能夠設置其相對位置