Случайные числа в Java при работе с Android

Вот еще один способ сделать это, используя функцию line2user из этой записи .

par(mfrow = c(2, 2))
plot(runif(100))
plot(runif(100))
text(line2user(line=mean(par('mar')[c(2, 4)]), side=2), 
     line2user(line=2, side=3), 'First title', xpd=NA, cex=2, font=2)

plot(runif(100))
plot(runif(100))
text(line2user(line=mean(par('mar')[c(2, 4)]), side=2), 
     line2user(line=2, side=3), 'Second title', xpd=NA, cex=2, font=2)

centered_titles [/g1]

Здесь название расположено на 2 строки выше верхнего края графика, как показано в line2user(2, 3). Мы центрируем его, смещая его относительно 2-го и 4-го графиков на половину объединенной ширины левого и правого полей, т. Е. mean(par('mar')[c(2, 4)]).


line2user выражает смещение ( количество строк) от оси в пользовательских координатах и ​​определяется как:

line2user <- function(line, side) {
  lh <- par('cin')[2] * par('cex') * par('lheight')
  x_off <- diff(grconvertX(0:1, 'inches', 'user'))
  y_off <- diff(grconvertY(0:1, 'inches', 'user'))
  switch(side,
         `1` = par('usr')[3] - line * y_off * lh,
         `2` = par('usr')[1] - line * x_off * lh,
         `3` = par('usr')[4] + line * y_off * lh,
         `4` = par('usr')[2] + line * x_off * lh,
         stop("side must be 1, 2, 3, or 4", call.=FALSE))
}

13
задан citizen conn 19 July 2011 в 00:46
поделиться