Как построить множество барплотов, используя par и pdf, и чтобы они не были обрезаны в R - PullRequest
0 голосов
/ 31 мая 2018

У меня есть любопытный вопрос, я использую par () для создания многопанельного барплота, я замечаю, что после использования xlim и width, чтобы сделать бары по всем барплотам () одинаковыми, я замечаю, что main = ""не на самих барах, а на сюжетеЯ также вижу, что для некоторых участков бары сами по себе обрезаются.

Мне было интересно 1) можно ли сделать главную команду "" в barplot () центрированием только по столбцам и 2) как предотвратить срезание столбцов, но иметь возможность построить каждый изГрафики с использованием par (mfow = ""). Любые комментарии будут полезны.

У меня есть этот общий пример:

# create data
a<-c(1:100)
b<-c(1:200)
c<-c(1:300)
d<-c(1:400)
e<-c(1:500)
f<- c(1:600)

#make dataframes for barplots
test<-as.data.frame(cbind(a,b))
test1<-as.data.frame(cbind(a,b,c))
test2<-as.data.frame(cbind(a,b,c,d))
test3<-as.data.frame(cbind(a,b,c,d,e))
test4<-as.data.frame(cbind(a,b,c,d,e,f))

#gets means for each column
a1<-colMeans(test)
a2<-colMeans(test1)
a3<-colMeans(test2)
a4<-colMeans(test3)
a5<-colMeans(test4)

#lets plot
pdf(file= "/Users/Highf_000/Desktop/prac1.pdf");
par(mfrow = c(2, 3),     # 2 rows x 4 columns layout
      oma = c(2, 2, 0, 0), # two rows of text at the outer left and bottom margin
      mar = c(5, 5, 2, 1)+0.1, # space for one row of text at ticks and to separate plots
      mgp = c(2, 1, 0),    # axis label at 2 rows distance, tick labels at 1 row
      xpd = NA) 

barplot(mean(a), xlim = c(0, 1), width = 0.2, main = "Learning")
barplot(a1, xlim = c(0, 1), width = 0.2, main = "Learning")
barplot(a2, xlim = c(0, 1), width = 0.2, main = "Learning")
barplot(a3, xlim = c(0, 1), width = 0.2, main = "Learning")
barplot(a4, xlim = c(0, 1), width = 0.2, main = "Learning")
barplot(a5, xlim = c(0, 1), width = 0.2, main = "Learning")

dev.off()

Это мой вывод:

This is my output:

Мы видим, что заголовок точно не центрирован на последнем правом графике, и два нижних правых графика обрезаются.Как составить графики, чтобы не отрезать полоски и поддерживать ширину полос на всех участках?Примите во внимание, что мои реальные данные будут иметь где угодно от 3 баров на графике до 20 баров на графике.

...