R語言
viewportTransform
位於 grid
包(package)。 說明
這些函數定義當 grid.define()
d 組為 grid.use()
d 時將應用的轉換。
用法
viewportTransform(group, shear=groupShear(), flip=groupFlip(), device=TRUE)
viewportTranslate(group, device=TRUE)
viewportScale(group, device=TRUE)
viewportRotate(group, device=TRUE)
defnTranslate(group, inverse=FALSE, device=TRUE)
defnScale(group, inverse=FALSE)
defnRotate(group, inverse=FALSE, device=TRUE)
useTranslate(inverse=FALSE, device=TRUE)
useScale(inverse=FALSE)
useRotate(inverse=FALSE, device=TRUE)
groupTranslate(dx=0, dy=0)
groupRotate(r=0, device=TRUE)
groupScale(sx=1, sy=1)
groupShear(sx=0, sy=0)
groupFlip(flipX=FALSE, flipY=FALSE)
參數
group |
正在轉型的群體。 |
inverse |
指示我們是否想要向前或向後轉換的邏輯。 |
shear |
說明剪切變換的仿射變換矩陣。 |
flip |
說明縮放反轉的仿射變換矩陣。 |
dx, dy |
要應用的翻譯。 |
r |
要應用的輪換。 |
sx, sy |
要應用的縮放(或剪切)。 |
flipX, flipY |
是否否定x-scaling或y-scaling(邏輯)。 |
device |
指示變換是相對於設備還是相對於當前視口的邏輯。 |
細節
viewport*()
函數不會直接調用。它們作為 transform
參數傳遞給 grid.use
。
defn*()
和 use*()
函數也不會直接調用,但可用於創建自定義轉換函數。例如,請參閱 viewportTransform
的源代碼。
group*()
函數生成基本的仿射變換矩陣,也可用於創建自定義變換函數。例如, groupShear()
函數可用於指定對 viewportTransform()
的剪切變換。
還可以定義任何返回 3x3 矩陣的函數(隻要最後一列包含 0、0 和 1)並將其用作 grid.use
的 transform
參數,但結果可能是 device-dependent,並且可能很難預測。該函數將使用兩個參數調用: group
和 device
。
值
仿射變換矩陣。
例子
## NOTE: on devices without support for groups nothing will be drawn
grid.newpage()
## Define and use group in same viewport
pushViewport(viewport(width=.2, height=.2))
grid.define(circleGrob(gp=gpar(lwd=5)), name="circle")
grid.use("circle")
popViewport()
## Use group in viewport that is translated and scaled
pushViewport(viewport(x=.2, y=.2, width=.1, height=.1))
grid.use("circle")
popViewport()
## Use group in viewport that is translated and scaled
## BUT only make use of the translation
pushViewport(viewport(x=.2, y=.8, width=.1, height=.1))
grid.use("circle", transform=viewportTranslate)
popViewport()
## Use group in viewport that is translated and scaled
## unevenly (distorted)
pushViewport(viewport(x=.8, y=.7, width=.2, height=.4))
grid.use("circle")
popViewport()
作者
Paul Murrell
也可以看看
相關用法
- R validDetails 自定義網格 grob 驗證
- R vpPath 連接視口名稱
- R valid.just 驗證理由
- R grid.curve 在位置之間繪製曲線
- R legendGrob 構建一個圖例 Grob
- R grid.draw 畫一個網格
- R grid.stroke 描邊或填充路徑
- R grid.raster 渲染光柵對象
- R showGrob 標簽網格塊
- R gridCoords 為網格對象創建坐標集
- R unit.pmin 並行單元最小值和最大值
- R grid.points 繪製數據符號
- R grid.force 強製將一個對象放入其組件中
- R grobCoords 計算 Grob 周長上的點
- R unit.rep 複製單元對象的元素
- R Working 維護和導航網格視口樹
- R grid.display.list 控製網格顯示列表
- R dataViewport 根據數據創建帶有比例的視口
- R stringWidth 創建說明字符串或數學表達式的寬度和高度的單位
- R grid.show.viewport 繪製網格視口圖
- R grid.segments 繪製線段
- R grid.frame 創建用於包裝對象的框架
- R gPath 連接 Grob 名稱
- R calcStringMetric 計算文本的指標信息
- R grid.group 畫一個組
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Define a Group Transformation。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。