trellis.par.get
位於 lattice
包(package)。 說明
用於查詢、顯示和修改圖形參數以精細控製網格顯示的函數。僅對當前活動設備的設置進行修改。
用法
trellis.par.set(name, value, ..., theme, warn = TRUE, strict = FALSE)
trellis.par.get(name = NULL)
show.settings(x = NULL)
參數
name |
給出組件名稱的字符串。如果在 |
value |
給出組件所需值的列表。已定義為當前設置的一部分但 |
theme |
說明如何更改設置的列表,類似於 與 |
... |
可以在 |
warn |
邏輯標誌,指示在沒有打開圖形設備的情況下調用 |
strict |
通常是一個邏輯標誌,指示是否應該嚴格解釋 通過將 |
x |
更改設置的組件的可選列表( |
細節
控製網格顯示的外觀和感覺的各種圖形參數(顏色、線條類型、背景等)是高度可定製的。此外,R 可以在多種設備上生成圖形,並且預計不同的參數集將更適合不同的設備。這些參數內部存儲在名為 lattice.theme
的變量中,該變量是一個列表,其組件定義特定設備的設置。這些組件由它們所代表的設備名稱(通過 .Device
獲得)進行標識,並在第一次使用 trellis.device
打開新設備時創建(或者在設備上繪製點陣圖)該會議中的第一次)。
每個設備的初始設置默認為適合該設備的值。在實踐中,這可以歸結為三種不同的設置,一種用於屏幕設備,如 x11
和 windows
,一種用於黑白圖(主要用於 postscript
),一種用於彩色打印機(顏色 postcript
, pdf
)。
一旦設備打開,就可以修改其設置。當稍後使用 trellis.device
打開同一設備的另一個實例時,該設備的設置將重置為其默認值,除非在 trellis.device
調用中另有指定。但不同設備的設置是分開處理的,即打開 postscript 設備不會更改 x11 設置,隻要 x11 設備處於活動狀態,該設置就會保持有效。
函數 trellis.par.*
是全局設置的接口。它們始終應用於當前活動設備的設置。
trellis.par.get
調用時不帶任何參數,返回活動設備的完整設置列表。當存在 name
參數時,它僅返回該組件。 trellis.par.get
將當前活動設備設置的 name
組件的值設置為 value
。
trellis.par.get
通常在網格函數內部使用,以在繪圖之前獲取圖形參數。用戶通過 trellis.par.set
進行的修改通常按如下方式完成:
add.line <- trellis.par.get("add.line")
add.line$col <- "red"
trellis.par.set("add.line", add.line)
更方便(但不兼容 S)的方法是
trellis.par.set(list(add.line = list(col = "red")))
和
trellis.par.set(add.line = list(col = "red"))
trellis.settings
中組件的實際列表尚未最終確定,因此我不會嘗試在此處列出它們。當前值可以通過 print(trellis.par.get())
獲取。大多數名稱應該是不言自明的。
show.settings
提供圖形顯示,總結當前設置中的一些值。
值
trellis.par.get
返回一個列表,給出該組件的參數。如果 name
丟失,則返回完整列表。
大多數設置是控製點陣圖各個元素的圖形參數。有關詳細信息,請參閱下麵的示例。這裏說明了更不尋常的設置。
grid.pars
-
除非被特定設置覆蓋,否則全局有效的網格圖形參數。
fontsize
-
兩個組件(每個組件都是數字標量)的列表,
text
和points
分別用於文本和符號。 clip
-
兩個組件的列表(每個組件都是字符串,
"on"
或"off"
):panel
和strip
。 axis.components
-
包含四個組件的列表(
left
、top
、right
、bottom
),每個列表為相應的網格布局單元提供名為tck
、pad1
和pad2
的數字乘數。 layout.heights
-
包含網格布局高度數字乘數的列表。
layout.widths
-
包含網格布局寬度數字乘數的列表。
注意
在某些方麵,trellis.par.get
和 trellis.par.set
一起替代了傳統 R 圖形中使用的 par
函數。特別是,更改 par
設置對晶格輸出影響很小(如果有的話)。由於點陣圖是使用網格圖形實現的,因此其參數係統確實會產生影響,除非被合適的點陣參數設置覆蓋。通過將此類參數包含在 grid.pars
組件中,可以將其指定為點陣主題的一部分(有關有效參數名稱的列表,請參閱 gpar
)。
例子
show.settings()
tp <- trellis.par.get()
unusual <- c("grid.pars", "fontsize", "clip", "axis.components",
"layout.heights", "layout.widths")
for (u in unusual) tp[[u]] <- NULL
names.tp <- lapply(tp, names)
unames <- sort(unique(unlist(names.tp)))
ans <- matrix(0, nrow = length(names.tp), ncol = length(unames))
rownames(ans) <- names(names.tp)
colnames(ans) <- unames
for (i in seq(along = names.tp))
ans[i, ] <- as.numeric(unames %in% names.tp[[i]])
ans <- ans[, order(-colSums(ans))]
ans <- ans[order(rowSums(ans)), ]
ans[ans == 0] <- NA
levelplot(t(ans), colorkey = FALSE,
scales = list(x = list(rot = 90)),
panel = function(x, y, z, ...) {
panel.abline(v = unique(as.numeric(x)),
h = unique(as.numeric(y)),
col = "darkgrey")
panel.xyplot(x, y, pch = 16 * z, ...)
},
xlab = "Graphical parameters",
ylab = "Setting names")
作者
Deepayan Sarkar Deepayan.Sarkar@R-project.org
也可以看看
相關用法
- R trellis.device 初始化網格顯示
- R tmd Tukey 均差圖
- R panel.xyplot xyplot 的默認麵板函數
- R xyplot.ts 時間序列繪圖方法
- R panel.bwplot bwplot 的默認麵板函數
- R panel.loess 添加黃土平滑的麵板函數
- R lset 修改網格設置的接口 - 已失效
- R panel.axis 繪圖軸刻度和標簽的麵板函數
- R Rows 從列表中提取行
- R panel.number 在繪圖期間訪問輔助信息
- R update.trellis 檢索和更新網格對象
- R barley 明尼蘇達州大麥試驗的產量數據
- R panel.functions 有用的麵板函數組件
- R prepanel.functions Lattice 有用的 Prepanel 函數
- R xyplot 常見的二變量網格圖
- R simpleTheme 生成簡單主題的函數
- R panel.parallel 並行的默認麵板函數
- R print.trellis 繪製和總結網格對象
- R panel.cloud 雲默認麵板函數
- R packet.panel.default 將數據包與麵板關聯
- R levelplot 水平圖和等高線圖
- R cloud 3d 散點圖和線框曲麵圖
- R panel.pairs splom 的默認超級麵板函數
- R draw.colorkey 通常為水平圖生成色鍵
- R prepanel.default 默認預麵板函數
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Graphical Parameters for Trellis Displays。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。