Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R生存曲线图图例_R_Plot_Legend_Survival Analysis - Fatal编程技术网

R生存曲线图图例

R生存曲线图图例,r,plot,legend,survival-analysis,R,Plot,Legend,Survival Analysis,我有一张这样的桌子: ID Survival Event Allele 2 5 1 WildType 2 0 1 WildType 3 3 1 WildType 4 38 0 Variant 我想做一个kaplan-meier图,告诉我野生型或变种是否能存活更长时间 我有以下代码: library(survival) Table <-read.table("Table1",header=T) fit=survfit(Surv(Table$Su

我有一张这样的桌子:

ID Survival Event Allele
2   5   1   WildType
2   0   1   WildType
3   3   1   WildType
4   38  0   Variant
我想做一个kaplan-meier图,告诉我野生型或变种是否能存活更长时间

我有以下代码:

library(survival)
Table <-read.table("Table1",header=T)
fit=survfit(Surv(Table$Survival,Table$Event)~Table$Allele)
plot(fit,lty=2:3,col=3:4)
绘图看起来与预期一致(即两条曲线)

我想做的就是在图上画一个图例,这样我就可以看到哪些数据是用黑线和红线表示的,也就是说,野生型或变种存活的时间更长

我试过这两个命令:

lab <-gsub("x=","",names(fit$strata))
legend("top",legend=lab,col=3:4,lty=2:3,horiz=FALSE,bty='n')
具体发生的情况是:当我键入最后一个命令(图例(“top”,图例=lab,col=3:4,lty=2:3,horiz=FALSE,bty='n'))时,XII窗口打开,但它是完全空白的

但是,如果您只是键入“plot(fit,lty=2:3,col=3:4)”,XII窗口和plot就会出现

编辑2:同样,这个图将有两条线,我如何判断哪一条线是哪一个变量?最简单的方法是键入summary(fit),它给了我两个表。那么,无论哪个变量在表中排在第一位,我都会在图例中放在第一位

非常感谢
Eva

我也曾多次遇到“plot.new尚未调用”错误!奇怪的是,错误是间歇性的,重复相同的命令并不总是导致错误!在我的例子中,我发现通过在plotting命令前面加上

plot.new()

阻止出现错误!我不知道为什么。顺便说一句,我也可以使用您的命令将图例添加到生存图中。

您也可以使用
ggsurvplot()
survminer
执行此操作。 这里有一个例子

library(survminer) # Contains ggsurvplot()
library(survival) # Contains survfit()
ggsurvplot(
  fit=survfit(Surv(time, censor) ~ Allele, data=your_data,type="kaplan-meier"), # Model
  xlab="Years",
  ylab="Overall survival probability",
  legend.labs=c("WildType","Variant"), # Assign names to groups which are shown in the plot
  conf.int = T, # Adds a 95%-confidence interval
  pval = T, # Displays the P-value in the plot
  pval.method = T # Shows the statistical method used for obtaining the P-value
)

我似乎没有任何问题,添加一个传奇的生存情节。也许你可以发布一个我们可以复制粘贴到R中的错误,以得到与你相同的错误。
plot.new()
library(survminer) # Contains ggsurvplot()
library(survival) # Contains survfit()
ggsurvplot(
  fit=survfit(Surv(time, censor) ~ Allele, data=your_data,type="kaplan-meier"), # Model
  xlab="Years",
  ylab="Overall survival probability",
  legend.labs=c("WildType","Variant"), # Assign names to groups which are shown in the plot
  conf.int = T, # Adds a 95%-confidence interval
  pval = T, # Displays the P-value in the plot
  pval.method = T # Shows the statistical method used for obtaining the P-value
)