windows
位於 grDevices
包(package)。 說明
僅適用於 Windows。圖形設備被打開。對於 windows
、 win.graph
、 x11
和 X11
來說,這是當前 Windows 顯示上的一個窗口:多個名稱是為了與其他係統兼容。 win.metafile
打印到文件,win.print
打印到 Windows 打印係統。
用法
windows(width, height, pointsize, record, rescale, xpinch, ypinch,
bg, canvas, gamma, xpos, ypos, buffered, title,
restoreConsole, clickToConfirm, fillOddEven,
family, antialias)
win.graph(width, height, pointsize)
win.metafile(filename = "", width = 7, height = 7, pointsize = 12,
family, restoreConsole = TRUE,
xpinch = NA_real_, ypinch = NA_real_)
win.print(width = 7, height = 7, pointsize = 12, printer = "",
family, antialias, restoreConsole = TRUE)
參數
width, height |
繪圖窗口畫布的(標稱)寬度和高度(以英寸為單位)。默認 |
pointsize |
繪製文本的默認磅值,解釋為大點(1/72 英寸)。值四舍五入為最接近的整數:小於或等於零的值將重置為默認值 |
record |
邏輯:設置記錄繪圖標誌的初始狀態。默認 |
rescale |
字符, |
xpinch, ypinch |
雙倍的。每英寸像素數,水平和垂直。默認 |
bg |
顏色。初始背景顏色。默認 |
canvas |
顏色。當背景顏色透明時可見的畫布顏色。應該是純色(並且任何 alpha 值都將被忽略)。默認 |
gamma |
伽馬校正模糊因子。 R中的顏色是sRGB;如果您的顯示器不符合 sRGB,您可以通過調整此參數對 RGB 通道應用額外的伽瑪校正來改進。默認為 1(無額外伽馬校正)。 |
xpos, ypos |
整數。窗口左上角的位置(以像素為單位)。負值取自顯示器的另一邊。缺失值(默認值)意味著從‘utils Rwin configuration’ 文件,該文件默認為 |
buffered |
合乎邏輯的。屏幕輸出應該是double-buffered嗎?默認 |
title |
字符串,最多 100 個字節。使用默認的 |
filename |
輸出文件的名稱:它將是一個增強的 Windows 圖元文件,通常給出擴展名“.emf' 或者 '.wmf’。最多允許 511 個字符。如果字符串中包含整數格式,則將替換頁碼(請參閱 |
printer |
Windows 已知的打印機名稱。默認情況下會出現一個對話框供用戶選擇打印機。 |
restoreConsole |
邏輯:請參閱下麵的“詳細信息”。對於屏幕設備,默認為 |
clickToConfirm |
邏輯:是否通過單擊設備而不是在控製台中回答問題來真正確認新幀。默認 |
fillOddEven |
邏輯控製多邊形填充模式:有關詳細信息,請參閱 |
family |
指定默認字體係列的長度為一的字符向量。請參閱“字體”部分。 |
antialias |
長度為一的字符向量,請求控製字體抗鋸齒。這與 |
細節
所有這些設備都是作為同一設備的變體來實現的。
windows
的所有參數都有 windows.options
設置的默認值:參數部分中給出的默認值是默認值的默認值。這些默認值也適用於 win.graph
、 x11
和 X11
的 gamma
、 xpinch
、 ypinch
、 buffered
、 restoreConsole
和 antialias
的內部值。
窗口的大小是根據提供的有關顯示的信息計算得出的:它取決於準確配置的係統。默認情況下,屏幕設備會向 Windows 詢問每英寸的像素數。這可以通過指定 xpinch
和 ypinch
來覆蓋(這通常是錯誤的),最方便的是通過 windows.options
。例如,13.3 英寸 1280x800 屏幕(典型的筆記本電腦顯示屏)的分辨率為 96 dpi,盡管其實際分辨率約為 114 dpi。這些參數也可能有助於將輸出的比例與圖元文件的大小相匹配(否則取決於準確配置的係統)。
不同的顏色需要仔細區分。設備區域之外的區域以 Windows 應用程序背景顏色著色。設備區域以畫布顏色著色。當調用新頁麵時,這是繪圖的背景顏色over-painted,但該背景顏色可以是透明的(默認情況下)。設置畫布顏色和背景顏色之間的一個區別是,保存繪圖時,會複製背景顏色,但不會複製畫布顏色。參數bg
設置基本圖形中par("bg")
和網格圖形中gpar("fill")
的初始值
記錄的情節曆史屬於 "SavedPlots"
類。他們有一個 print
方法和一個子集方法。由於各個圖屬於 "recordedplot"
類,因此可以通過打印來重播它們:請參閱 recordPlot
。活動繪圖曆史記錄存儲在工作區中的變量 .SavedPlots
中。
當屏幕設備為double-buffered(默認)時,屏幕在上次繪圖調用後 100 毫秒更新一次,或者在連續繪圖期間每 500 毫秒更新一次。在打開設備之前,可以通過將 options("windowsTimeout")
設置為兩個整數的向量來更改這些時間。
由par(lwd =)
控製的線寬是1/96英寸的倍數。允許小於 1 的倍數,小至一個像素寬度。
對於win.metafile
,每個文件隻允許一個圖,並且 Windows 似乎不允許重複使用該文件。因此,允許多個繪圖的唯一方法是使用參數化的filename
,如示例中所示。如果省略 filename
(或指定為 ""
),則關閉設備時輸出將複製到剪貼板。
restoreConsole
參數是對多個 Windows 圖形設備當前實現中的問題的臨時修複,並且可能會在即將發布的版本中刪除。如果設置為 FALSE
,新設備打開後控製台將不會獲得焦點。
屏幕設備上支持線條、填充和文本的半透明顏色。這些適用於(從“文件”菜單)保存為 PDF、PNG、BMP、JPEG 和 TIFF,但如果保存為圖元文件和 PostScript,則將被忽略。底層 Windows API 的限製意味著半透明對象必須嚴格包含在設備區域內(允許線寬和連接)。
值
繪圖設備被打開:沒有任何內容返回到R口譯員。
調整大小選項
如果重新調整屏幕設備的大小,則默認行為 ( "R"
) 是重新繪製繪圖,就像最初指定了新大小一樣。使用 "fit"
將重新縮放現有繪圖以適應新的設備區域,同時保留縱橫比。使用 "fixed"
將使繪圖大小保持不變,如果部分繪圖被遮擋,則添加滾動條。
創建的圖形窗口永遠不會超過屏幕寬度或高度的 85%,但可以將其大小調整為更大的尺寸。對於前兩個 rescale
選項,如果需要,寬度和高度將按比例重新縮放,如果是 rescale = "fit"
,則繪圖將相應地重新縮放。如果rescale = "fixed"
在這些約束內選擇最初顯示的部分,分別針對寬度和高度。在 MDI 模式下,限製為 MDI 客戶端區域的 85%。
重新縮放窗口後(使用 "fit"
時)使用 strwidth
或 strheight
會給出原始單位的尺寸,但僅近似於從重新縮放的字體的度量(整數大小)導出的尺寸
顯示區域可能大於‘paper’尺寸,並且‘paper’之外的區域以Windows應用程序背景顏色著色。如果重新縮放有效,"din"
等圖形參數指的是縮放圖。
字體
Windows 設備中繪製的文本所使用的字體可以通過兩種方式進行控製。文件 R_HOME\etc\Rdevga
可用於指定 par(font =)
(或等效的 grid
)的映射。或者,可以通過非空 family
參數(或圖形包中的 par(family =)
)指定字體係列,這將通過 Windows 字體數據庫用於字體 1:4(請參閱 windowsFonts
) 。
字體的外觀取決於通過 antialias
參數和機器設置進行的抗鋸齒設置。這些是對 Windows GDI 的提示,可能無法遵循,但antialias = "none"
應確保不使用抗鋸齒函數。對於屏幕設備,默認值取決於機器設置:如果已啟用,則默認值為"cleartype"
。請注意,灰度抗鋸齒僅用於小字體(低於約 9 像素,典型顯示器上約為 7 點)。
通過遠程桌麵訪問係統時,遠程桌麵設置和用戶的本地帳戶設置都與是否使用抗鋸齒相關。
某些字體僅適用於 ClearType 抗鋸齒函數,例如 Meiryo
日語字體。
慣例
本節介紹“R Internals”手冊中規定的圖形設備約定的實現。
-
默認設備尺寸為 7 平方英寸,盡管 Windows 經常錯誤地實現這一點:請參閱“詳細信息”。
-
字體大小以大點為單位。
-
默認字體係列是 Arial。
-
線寬為 1/96 英寸的倍數,最小為 1 個像素。
-
圓的最小半徑為 1 像素。
-
pch = "."
和cex = 1
對應於邊長為 1 像素和 0.01 英寸中較大者的矩形。 -
顏色通過顯卡的未配置文件顏色映射進行解釋 - 假定符合 sRGB。
注意
x11()
、 X11()
和 win.graph()
是調用 windows()
的簡單包裝器,主要出於兼容性原因而存在。
此外,x11()
和 X11()
有自己的 Unix-alikes 幫助頁麵(其中還有更多參數)。
例子
## Not run: ## A series of plots written to a sequence of metafiles
if(.Platform$OS.type == "windows")
win.metafile("Rplot%02d.wmf", pointsize = 10)
## End(Not run)
也可以看看
windowsFonts
、 savePlot
、 bringToTop
、 Devices
、 postscript
、 x11
適用於 Unix 類係統。
相關用法
- R windows.options 設置/查看 windows() 參數默認值的輔助函數
- R windowsFonts Windows 字體
- R axisTicks 計算漂亮的軸刻度
- R hcl HCL 顏色規格
- R quartzFonts 石英字體
- R as.graphicsAnnot 強製圖形注釋對象
- R xyTable (x,y) 點的重數,例如,對於向日葵圖
- R dev.interactive 當前圖形設備是否具有交互性?
- R chull 計算一組點的凸包
- R convertColor 在色彩空間之間轉換
- R X11Fonts X11 字體
- R plotmath R 中的數學注釋
- R dev.capture 將設備輸出捕獲為光柵圖像
- R dev.size 查找設備表麵的尺寸
- R pdf.options 設置/查看 pdf 參數默認值的輔助函數
- R densCols 平滑密度圖的顏色
- R rgb RGB 顏色規格
- R check.options 設置帶有一致性檢查的選項
- R msgWindow 操縱窗口
- R dev.flush 保持或刷新屏幕圖形設備上的輸出
- R n2mfrow 根據繪圖數計算默認“mfrow”
- R dev 控製多個設備
- R hsv HSV 顏色規格
- R postscript PostScript 圖形
- R pdf PDF圖形設備
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Windows Graphics Devices。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。