當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R gpar 處理網格圖形參數


R語言 gpar 位於 grid 包(package)。

說明

gpar() 應用於創建一組圖形參數設置。它返回類 "gpar" 的對象。這本質上是 name-value 對的列表。

get.gpar()可用於查詢當前圖形參數設置。

用法

gpar(...)
get.gpar(names = NULL)

參數

...

任意數量的命名參數。

names

有效圖形參數名稱的字符向量。

細節

所有網格視口和(預定義)圖形對象都有一個名為 gp 的槽,其中包含 "gpar" 對象。當將視口推入視口堆棧並繪製圖形對象時,將強製執行 "gpar" 對象中的設置。通過這種方式,圖形輸出將由 gp 設置修改,直到圖形對象完成繪製,或者直到視口從視口堆棧中彈出,或者直到某個其他視口或圖形對象被推送或開始繪製。

默認參數設置由 ROOT 視口定義,該視口從圖形設備獲取其設置。這些默認值可能因設備而異(例如,與 PDF 設備相比,PNG 設備的默認 fill 設置不同)。

有效的參數名稱是:

col 線條和邊框的顏色。
fill 用於填充矩形、多邊形等的顏色
alpha Alpha 通道透明度
lty 線型
lwd 行寬
lex 應用於線寬的乘數
lineend 線端樣式(圓形、對接、方形)
linejoin 線連接樣式(圓形、斜接、斜角)
linemitre 線斜接限製(數量大於 1)
fontsize 文本大小(以點為單位)
cex 應用於字體大小的乘數
fontfamily 字體家族
fontface 字體(粗體、斜體……)
lineheight 行高是文本大小的倍數
font Font Face(fontface 的別名;為了向後兼容)

有關其中許多內容的更多詳細信息,請參閱基礎圖形中相應圖形參數 par 的幫助。 (名稱可能略有不同,例如 lendljoinlmitrefamily 。)

顏色可以以 rgb 返回的形式之一指定,作為名稱(請參閱 colors )或作為當前 palette 的非負整數索引(零被視為透明)。 (負整數值現在是一個錯誤。)

alpha 設置通過乘法與各個顏色的 Alpha 通道組合(兩個 Alpha 設置均歸一化為 0 到 1 的範圍)。

fill 設置也可以是線性漸變或徑向漸變或圖案(請參閱 patterns )。

文本大小為 fontsize * cex 。一行的大小為 fontsize * cex * lineheight

cex設置是累積的;如果一個視口的 cex 為 0.5,那麽另一個視口的 cex 為 0.5,則有效的 cex 為 0.25。

alphalex 設置也是累積的。

fontfamily 的更改可能會被某些設備忽略,但受 PostScript、PDF、X11、Windows 和 Quartz 支持。 fontfamily 可用於指定 Hershey 字體係列之一(例如 HersheySerif ),並且所有設備都將遵守此規範。

fontface的規格可以是整數或字符串。如果是整數,則它遵循 R 基本圖形標準:1 = 普通、2 = 粗體、3 = 斜體、4 = 粗斜體。如果是字符串,則有效值為: "plain""bold""italic""oblique""bold.italic" 。對於 HersheySerif 字體係列的特殊情況,還可以使用 "cyrillic""cyrillic.oblique""EUC"

所有參數值都可以是多個值的向量。 (這並不總是有意義 - 例如,視口隻會注意到第一個參數值。)

get.gpar() 返回所有當前圖形參數設置。

"gpar" 的對象。

例子

gp <- get.gpar()
utils::str(gp)
## These *do* nothing but produce a "gpar" object:
gpar(col = "red")
gpar(col = "blue", lty = "solid", lwd = 3, fontsize = 16)
get.gpar(c("col", "lty"))
grid.newpage()
vp <- viewport(width = .8, height = .8, gp = gpar(col="blue"))
grid.draw(gTree(children=gList(rectGrob(gp = gpar(col="red")),
                     textGrob(paste("The rect is its own colour (red)",
                                    "but this text is the colour",
                                    "set by the gTree (green)",
                                    sep = "\n"))),
      gp = gpar(col="green"), vp = vp))
grid.text("This text is the colour set by the viewport (blue)",
          y = 1, just = c("center", "bottom"),
          gp = gpar(fontsize=20), vp = vp)
grid.newpage()
## example with multiple values for a parameter
pushViewport(viewport())
grid.points(1:10/11, 1:10/11, gp = gpar(col=1:10))
popViewport()

作者

Paul Murrell

也可以看看

Hershey

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Handling Grid Graphical Parameters。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。