2016-02-27 76 views
1

我想在一张图上组合2个饼图和2个箱形图。结合这一点的简单方法是什么?我的代码如下所示。在一个图中组合多个图

x <- c(20, 12, 4, 16, 8) 
y <- c(30, 12,45, 20, 9) 
names <- c("germany","france","australia","vienna","hungary") 
par(fig=c(0,0.5,0,1)) 
p1 <- pie(x, names, col = c("purple", "cyan", "blue","red","yellow")) 
title("pie1", line=-9) 
par(fig=c(0.5,1,0,1),new=TRUE) 
p2 <-pie(y, names, col = c("purple", "cyan", "blue", "red", "yellow")) 
title("pie2", line=-9) 

x = read.csv ("data1.csv") 
y = read.csv ("data2.csv") 
p3 <-boxplot(x,col=c("green","blue","red"), main = "boxplot1", ylim=c(0,10)) 
p4 <-boxplot(y,col=c("green","blue","red"), main = "boxplot2", ylim=c(0,10)) 

data1.csv

c1 c2 c3 
5 7 8 
4 5 7 
5 5 5 
6 5 
10 
3 

data2.csv

c1 c2 c3 
    5 7 8 
    7 4 7 
    5 3 5 
    6 5 
    9 
    3 
+0

你可以让你的例子可重现(使用'dput()')?该图形究竟如何?你想把馅饼放在哪里? –

+0

我想在第一行得到两个饼图,在第二行得到两个箱形图。 – athulya

回答

0

你可以改变你的情节布局,有它的多条曲线使用par

par(mfrow=c(2,2)) 
p1 
p2 
p3 
p4 

确保以后再改回来:

par(mfrow=c(1,1)) 

有时它会给你一个绘图区域太小的错误。在这种情况下,你将不得不改变个别地块的外边缘具有较小的空白:

par(oma=c(a,b,c,d)) 

其中a =左,B =顶部,C =右,d =底部。