我使用这段代码成功地创建了这个在 y 轴上带有线性刻度的图。重要的一点是geom_rect(),它创建了蓝线,当我将 y 轴转换为 log2 比例时,蓝线会消失。
plot <- ggplot(data, aes(x=ï.., y=Casirivimab)) + geom_point(size = 1)
#plot <- plot + scale_y_continuous(trans='log2', breaks = trans_breaks("log2", function(x) 2^x),labels = trans_format("log2", math_format(2^.x)))
plot <- plot + geom_rect(aes(xmin=ï..-.1, xmax=ï..+.1, ymin=-Inf, ymax=Inf, fill = Cas.Epitope), alpha=0.5, stat="identity")
plot <- plot + scale_fill_manual(values = c("x"="blue"), na.value= "grey92")
plot <- plot + coord_cartesian(xlim = c(340,510))
plot <- plot + theme(panel.background = element_rect(colour = "grey92", fill = "grey92"))
plot <- plot + labs(x = "amino acid position", y = "fold change", title = "Casirivimab", color = "Epitope Position")
plot_Cas <- plot
plot_Cas
一旦我在 log 2 转换中添加 log2 转换,geom_rect 创建的蓝线就会消失。当我将轴转换为 log2 刻度时,如何防止这些蓝线消失?
plot <- ggplot(data, aes(x=ï.., y=Casirivimab)) + geom_point(size = 1)
**plot <- plot + scale_y_continuous(trans='log2', breaks = trans_breaks("log2", function(x) 2^x),labels = trans_format("log2", math_format(2^.x)))**
plot <- plot + geom_rect(aes(xmin=ï..-.1, xmax=ï..+.1, ymin=-Inf, ymax=Inf, fill = Cas.Epitope), alpha=0.5, stat="identity")
plot <- plot + scale_fill_manual(values = c("x"="blue"), na.value= "grey92")
plot <- plot + coord_cartesian(xlim = c(340,510))
plot <- plot + theme(panel.background = element_rect(colour = "grey92", fill = "grey92"))
plot <- plot + labs(x = "amino acid position", y = "fold change", title = "Casirivimab", color = "Epitope Position")
plot_Cas <- plot
plot_Cas
非常感谢您提前提供的帮助。
这里的 Ps 是数据集,图表上绘制的数据是从中获取的。绘制的数据仅适用于“Casirivimab”。
structure(list(ï.. = c(18L, 69L, 80L, 141L, 215L, 222L, 241L,
246L, 247L, 321L, 333L, 334L, 335L, 337L, 339L, 340L, 341L, 343L,
344L, 345L, 346L, 348L, 351L, 354L, 357L, 359L, 360L, 361L, 367L,
378L, 384L, 403L, 405L, 406L, 408L, 409L, 415L, 416L, 417L, 417L,
417L, 420L, 421L, 435L, 439L, 440L, 441L, 444L, 444L, 445L, 446L,
447L, 448L, 449L, 450L, 452L, 452L, 453L, 455L, 456L, 456L, 456L,
457L, 458L, 460L, 470L, 472L, 473L, 474L, 475L, 475L, 476L, 477L,
478L, 478L, 479L, 481L, 482L, 483L, 484L, 484L, 485L, 486L, 486L,
486L, 486L, 486L, 487L, 488L, 489L, 490L, 490L, 492L, 493L, 494L,
494L, 495L, 496L, 498L, 500L, 501L, 502L, 503L, 504L, 505L, 508L,
509L, 519L, 537L, 570L, 583L, 655L, 681L, 681L, 692L, 701L, 716L,
859L, 982L, 1118L, 1147L, 1163L, 1229L), Mutation = c("L18F",
"Δ69-70", "D80A", "Δ141-146", "D215G", "A222V", "Δ242-247",
"R246I", "S247R", "Q321L", NA, NA, NA, NA, NA, NA, "V341I", NA,
NA, NA, NA, "A348T", NA, "N354D", NA, "S359N", NA, NA, "V367F",
"K378R", "P384L", NA, NA, "E406W", "R408I", "Q409E", NA, NA,
"K417E", "K417N", "K417T", NA, NA, "A435S", "N439K", "N440K",
NA, "K444Q", "K444T", "V445A", "G446V", NA, NA, "Y449N", "N450D",
"L452Q", "L452R", "Y453F", "L455F", "F456A", "F456K", "F456R",
NA, "K458R", "N460T", NA, "I472V", NA, NA, "A475R", "A475V",
"G476S", "D.2 (S477N)", "T478I", "T478K", "P479S", NA, NA, "V483A",
"E484K", "E484Q", "G485D", "F486K", "F486L", "F486R", "F486S",
"F486V", "N487R", NA, NA, "F490L", "F490S", NA, "Q493K", "S494P",
"S494R", NA, NA, NA, NA, "N501Y", NA, NA, NA, NA, "Y508H", NA,
"H519P", "K537R", "A570D", "E583D", "H655Y", "P681H", "P681R",
"I692V", "A701V", "T716I", "T859N", "S982A", "D1118H", "S1147L",
"D1163Y", "M1229I"), Cas.Epitope = c(NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, "x", NA, NA, NA, NA, NA,
NA, NA, "x", "x", NA, "x", NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, "x", "x", "x", NA, NA, NA, NA, NA, NA, NA,
NA, NA, "x", "x", "x", NA, NA, NA, NA, NA, NA, NA, "x", "x",
"x", "x", "x", "x", "x", "x", "x", "x", "x", NA, NA, NA, "x",
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), Casirivimab = c(0.766666667,
1.2, 0.5, 0.9, 1.2, 1.25, 0.866666667, 0.7, NA, 1.6, NA, NA,
NA, NA, NA, NA, 0.8, NA, NA, NA, NA, 1, NA, 1.4, NA, 0.5, NA,
NA, 0.6, 0.8, 1.9, NA, NA, 84.4, 0.5, 1.3, NA, NA, 62.8, 34.8,
7.1, NA, NA, 1.1, 1.22, 1, NA, 0.95, 2, 1.75, 0.4, NA, NA, NA,
1.4, 5.8, 3.966666667, 73.91428571, 89.95, NA, NA, 3, NA, 0.8,
NA, NA, 2.2, NA, NA, 44.4, NA, 3.3, 2.45, 0.866666667, 2.9, 0.9,
NA, NA, 0.4, 18.84166667, 26.5, 3.7, 100, 48.6, 100, 100, 75.2,
100, NA, NA, 2.15, 0.866666667, NA, 42.66666667, 2.966666667,
0.8, NA, NA, NA, NA, 0.9, NA, NA, NA, NA, 1.1, NA, 0.7, 1, 0.433333333,
1, 1.2, 0.833333333, 1.2, 0.3, 0.7, 0.366666667, 1.3, 1, 0.9,
2.1, 0.8, 1.8), Bam.Epitope = c(NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "x",
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "x",
"x", NA, "x", NA, "x", "x", "x", "x", NA, NA, NA, NA, "x", NA,
NA, NA, NA, NA, NA, NA, NA, NA, "x", "x", "x", "x", "x", "x",
"x", "x", "x", "x", "x", "x", "x", "x", "x", "x", "x", "x", "x",
"x", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), Bamlanivimab = c(NA,
0.5, NA, NA, NA, 0.5, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, 0.4, NA, NA, NA, NA, 1.3, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, 100, 1.55, NA, NA, NA, 4.2,
NA, NA, NA, NA, NA, NA, NA, 2.5, NA, NA, 1.1, 2.6, NA, NA, NA,
NA, NA, 100, 100, NA, NA, NA, 100, NA, NA, 0.9, NA, NA, 100,
100, NA, NA, 100, 100, NA, NA, NA, NA, 1.1, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA), Ete.Epitope = c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "x", NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, "x", "x", "x", "x", "x", "x", "x", NA,
"x", "x", "x", "x", NA, NA, NA, NA, "x", "x", "x", "x", "x",
NA, "x", "x", "x", "x", NA, "x", "x", "x", "x", "x", "x", "x",
NA, NA, "x", "x", "x", "x", "x", "x", NA, NA, NA, NA, NA, NA,
"x", "x", NA, "x", "x", "x", "x", "x", "x", NA, "x", NA, NA,
NA, "x", "x", "x", "x", NA, NA, NA, "x", "x", NA, "x", "x", NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA), Etesevimab = c(0.6, 0.65, NA, 0.6, NA, 1.2, 0.2, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 83, 49,
NA, NA, NA, 0.35, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
1.4, 1.4, NA, 14.9, 32.6, 100, NA, NA, 100, NA, NA, NA, NA, 100,
16.7, NA, 0.6, 0.6, NA, NA, NA, NA, NA, 3.125, 1.3, NA, NA, 2.9,
17.9, NA, NA, 100, NA, NA, 4.5, 0.8, NA, NA, 0.55, 3.3, NA, NA,
NA, NA, 2.25, NA, NA, NA, NA, NA, NA, NA, NA, 0.2, 0.3, 0.5,
0.5, NA, NA, NA, 0.4, NA, 0.8, 0.5, NA, 0.7, NA), Imde.Epitope = c(NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, "x", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "x", "x", "x",
"x", "x", "x", "x", "x", "x", "x", "x", "x", NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, "x", "x", NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
), Imdevimab = c(0.7, 0.65, 0.6, 0.95, 0.7, 0.675, 0.433333333,
0.7, NA, 1.2, NA, NA, NA, NA, NA, NA, 0.8, NA, NA, NA, NA, 0.7,
NA, 0.7, NA, 0.6, NA, NA, 0.4, 0.6, 1.3, NA, NA, 100, 0.4, 1,
NA, NA, 1.166666667, 0.566666667, 1.1, NA, NA, 1, 24.66, 95.6,
NA, 68, 100, 68.26666667, 58.35, NA, NA, NA, 18.6, 4.4, 3.15,
1.5625, 1.2, NA, NA, 0.3, NA, 0.4, NA, NA, 1, NA, NA, 0.3, NA,
0.5, 1.375, 0.933333333, 1.4, 1.6, NA, NA, 0.6, 2.169230769,
1.1, 2.2, 0.4, 0.8, 0.3, 0.4, 2.05, 0.1, NA, NA, 2.933333333,
2.35, NA, 2.3, 1.233333333, 3.2, NA, NA, NA, NA, 0.633333333,
NA, NA, NA, NA, 0.7, NA, 0.5, 1.2, 0.466666667, 1, 1.3, 0.766666667,
0.9, 0.6, 0.8, 0.433333333, 1.2, 1.233333333, 0.733333333, 0.9,
1, 0.3), Sotro.Epitope = c(NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, "x", "x", "x", "x", "x", "x", "x", "x", "x", "x", "x", NA,
NA, "x", "x", "x", "x", "x", NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "x", NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, "x", NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA), Sotrovimab = c("1.1", "0.8",
NA, "0.8", NA, "0.8", "0.5", NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, "0.7", "1", NA, NA, NA, "1.05",
NA, NA, NA, NA, NA, NA, NA, NA, "#DIV/0!", NA, NA, NA, "1", NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "#DIV/0!", "0.5",
"0.7", NA, NA, NA, NA, NA, "0.45", NA, NA, NA, "1.5", NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, "0.8", NA, NA, NA, NA, NA, "2.35",
NA, NA, NA, NA, NA, NA, NA, NA, "1.8", "1.1", "0.8", "0.7", NA,
NA, NA, "1", NA, "0.7", "0.5", NA, "#DIV/0!", NA), Regdan.Epitope = c(NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "x",
NA, NA, NA, NA, NA, NA, "x", "x", "x", NA, NA, NA, NA, NA, NA,
NA, NA, NA, "x", NA, NA, "x", "x", "x", "x", "x", "x", "x", "x",
"x", NA, NA, NA, "x", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, "x", NA, NA, NA, "x", "x", "x", "x", "x", NA, NA, "x",
"x", "x", "x", "x", "x", "x", "x", "x", "x", NA, NA, NA, NA,
NA, "x", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA), Regdanivimab = c(NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 0.7, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, 35, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, 1, NA, NA, NA, NA, 8.7, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 5.5,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 1, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA)), class = "data.frame", row.names = c(NA,
-123L))