簡體   English   中英

R icenReg包:移動ic_np fit的圖例

[英]R icenReg package: Move plot legend for ic_np fit

我需要創建一個比較三種物種的區間刪失生存曲線的圖。 我能夠使用ic_npicenReg包中的ic_np函數生成顯示所有三條曲線的圖。當我使用基本R plot()ic_np擬合的輸出時, ic_np出現一個圖例。

來自icenReg包文檔的這個例子產生了一個類似的數字:

library(icenReg)
data(miceData)
fit <- ic_np(cbind(l, u) ~ grp, data = miceData) #Stratifies fit by group
plot(fit)

但是,左下方的標題涵蓋了我生存曲線最有趣的比較,所以我想將圖例移到右上角。

我已經看到了這個問題,有關設置圖例位置為基礎R.這個問題的答案基本情節似乎認為我才能不用傳說情節,但我一直沒能做到這一點。

我還看到了這個問題,即將圖例添加到其他類型的生存分析中,默認情況下似乎沒有生成圖例,但我無法使用區間刪失數據實現這些方法。

我已經讀過,我無法移動已添加到繪圖中的圖例,但我不知道如何在沒有圖例的情況下生成此特定圖以便我可以在我想要的位置添加一個(右上角) )。

我怎樣才能(a)使用沒有圖例的ic_np生成間隔刪除的Kaplan-Meier生存曲線圖 - 可能使用一些隱藏的plot()參數 - 或者(b)使用不同的繪圖設備生成此圖,假設情節傳說是可移動的嗎?

在繪圖函數的包中似乎沒有幫助頁面,因此您需要確定fit -object的類並查看代碼:

class(fit)
#[1] "ic_npList"
#attr(,"package")
#[1] "icenReg"

 plot.ic_npList
#Error: object 'plot.ic_npList' not found

因此它不會被導出,我們需要深入挖掘(不要太驚訝,因為導出的函數需要有幫助頁面。)

 getAnywhere(plot.ic_npList)
#-----------
A single object matching ‘plot.ic_npList’ was found
It was found in the following places
  registered S3 method for plot from namespace icenReg
  namespace:icenReg
with value

function (x, fitNames = NULL, lgdLocation = "bottomleft", ...) 
{
    addList <- list(xlim = x$xRange, ylim = c(0, 1), xlab = "time", 
        ylab = "S(t)", x = NA)
    dotList <- list(...)
   #.........
#..........
    legend(lgdLocation, legend = grpNames, col = cols, lty = 1)
}
<bytecode: 0x7fc9784fa660>
<environment: namespace:icenReg>

因此,圖例展示位置有一個位置參數,而嘗試的明顯替代方法是:

plot(fit, lgdLocation = "topright")

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM