我有两个类似的数据框架,我可以在ggplot2
上以其置信区间绘制每一个。{1}}。我的问题是我如何在同一图表上绘制它们?
这是允许我绘制第一个数据帧的脚本,第二个基本上类似于这个,相同的比例和接近的值。
xlabel <- "Frequency [Hz]"
ylabel <- "|Z|[Ohm]"
plotdata <- data.frame(x=x6, y=mediaprobes, lower = (mediaprobes_m), upper = (mediaprobes_M))
library(ggplot2)
ggplot(plotdata) + geom_line(aes(y= y, x= x6, colour = "Mean probes"))+
geom_ribbon(aes(ymin=lower, ymax=upper, x=x6, fill = "st.err"), alpha = 0.5)+
scale_colour_manual("",values="blue")+
scale_fill_manual("",values="grey12")+
xlab(xlabel) +
ylab(ylabel)+
scale_x_log10(breaks = trans_breaks("log10", function(x) 10^x),
labels = trans_format("log10", math_format(10^.x)))+
scale_y_log10(breaks = trans_breaks("log10", function(x) 10^x),
labels = trans_format("log10", math_format(10^.x)))
第二个数据框
plotdatas <- data.frame(x=x6, y=mediaprobes, lower = (mediaprobes_m), upper = (mediaprobes_M))
这是数据帧的样子:
x y lower upper
1000000.0 2175.0 2127.042 2222.958
932600.0 2290.0 2239.668 2340.332
x y2 lower2 upper2
1000000.0 2454.593 2435.686 2473.500
932600.0 2580.815 2561.698 2599.932
答案 0 :(得分:1)
向每个表添加组状态,然后使用rbind
绑定它们。在ggplot中,按照您添加的组(&#34; A&#34;或&#34; B&#34;)指定颜色/填充。
# We have to change column names to match plotdata
colnames(plotdatas) <- c("x", "y", "lower", "upper")
plotdata$group <- "A"
plotdatas$group <- "B"
pd <- rbind(plotdata, plotdatas)
library(ggplot2)
ggplot(pd, aes(x, y, fill = group)) +
geom_line(aes(color = group)) +
geom_ribbon(aes(ymin = lower, ymax = upper),
alpha = 0.5) +
scale_colour_manual(values = c("blue", "black")) +
scale_fill_manual(values = c("grey40", "grey1"))
结果: