Facet Wrap in ggplot2 for my data以及如何计算P50?

时间:2017-12-06 15:28:06

标签: r plot ggplot2 glm

我的实验中有生存数据(%)。数据如下:

Survival <- read.table(text= "Species Var Year Time PerSurvival
1 1 2014 0 86
1 1 2014 1 74
1 1 2014 7 80
1 1 2014 14 69
1 1 2014 21 63
1 1 2014 28 52
1 1 2014 35 53
1 1 2014 42 47
1 1 2014 50 32
1 2 2015 0 99
1 2 2015 1 98
1 2 2015 7 95
1 2 2015 14 91
1 2 2015 21 60
1 2 2015 28 61
1 2 2015 35 48
1 2 2015 42 43
1 2 2015 50 10
1 3 2014 0 98
1 3 2014 1 97
1 3 2014 7 84
1 3 2014 14 82
1 3 2014 21 53
1 3 2014 28 52
1 3 2014 35 44
1 3 2014 42 29
1 3 2014 50 5
1 4 2014 0 92
1 4 2014 1 84
1 4 2014 7 78
1 4 2014 14 73
1 4 2014 21 57
1 4 2014 28 52
1 4 2014 35 46
1 4 2014 42 41
1 4 2014 50 13
2 5 2014 0 99
2 5 2014 1 97
2 5 2014 7 95
2 5 2014 14 86
2 5 2014 21 73
2 5 2014 28 76
2 5 2014 35 64
2 5 2014 42 29
2 5 2014 56 0
2 6 2015 0 94
2 6 2015 1 100
2 6 2015 7 90
2 6 2015 14 82
2 6 2015 21 76
2 6 2015 28 52
2 6 2015 35 50
2 6 2015 50 8
2 7 2014 0 98
2 7 2014 1 98
2 7 2014 7 96
2 7 2014 14 95
2 7 2014 21 82
2 7 2014 28 70
2 7 2014 35 81
2 7 2014 42 75
2 7 2014 50 9
2 8 2015 0 92
2 8 2015 1 94
2 8 2015 7 86
2 8 2015 14 84
2 8 2015 21 86
2 8 2015 28 78
2 8 2015 35 68
2 8 2015 50 53", header = TRUE)

我使用以下代码来可视化数据并适合逻辑函数:

View(Survival
attach(Survival)
library(ggplot2)

ggplot(data=Survival) +
  geom_point(mapping=aes(x=Time,y=PerSurvival)) + xlim(0, 60) + ylim(0, 100) +
  geom_smooth(mapping=aes(x=Time,y=PerSurvival), method="nls", formula = y ~ 100 / (1 + exp(-a* (x - b))), se = FALSE, fill=NA, method.args=list(start = c(a=-0.05, b=50))) +
  facet_wrap(~ Year + Var, nrow=2)

运行此代码会产生以下图表:

Survival Plots

我需要以下问题的帮助:

  1. 应使用哪些代码生成2014年和2015年的两个单独的地块。在2014年的地块中,每个变量应该有5条曲线,在2015年应该有3条曲线。如何为每个变量的点和曲线着色或为每条曲线的点赋予不同的形状?

  2. 应使用哪些代码生成两行图,多年使用facet wrap选项各一行?在这种情况下,在顶行中应该有5个具有点和曲线的单独图。同样明智的是,底行应该有3条曲线?

  3. 如何获得每个变种生存率降低50%的时间?如何在Library(MASS)中使用dose.p函数?

0 个答案:

没有答案