2016-06-02 8 views
-1

Есть два разных варианта (main в пределах участка и title после этого, который вызывает main), чтобы добавить заголовок к сюжету. Я хочу знать, в чем разница между этими двумя. Какой из них я должен использовать?Почему есть главная и название?

Приведенный ниже код дает минимальный пример и создает графики.

library(mvtnorm) 
par(mfrow=c(2,1)) 
x = rmvnorm(10,c(2,2),matrix(c(2,0,0,2),2)) 
plot(x, main='title') 
plot(x) 
title(main='title') 

<code>Title</code> and <code>main</code> used for two graphs.

Спасибо за вашу помощь.

+2

Вы прочитали файлы справки? '? title' –

+0

' plot' вызывает 'title', который делает заголовок (это не означает, что' title' вызывает 'main' - это просто невозможно). аргумент 'main' для удобства - вы можете сделать простой сюжет с заголовком только в одной строке. таким же образом вы можете создавать точки, линии, оси, метки осей либо изнутри 'plot', либо используя отдельные fns – lebatsnok

ответ

2

Они идентичны, за исключением того, что title позволяет вам добавить заголовок после составления графика, а не определять его атомарно. Используйте то, что наиболее удобно. Если у вас много аргументов, указанных в plot, вам может потребоваться указать заголовок на отдельной строке, чтобы сделать ваш код более читаемым, например.

Чтобы увидеть, что они эквивалентны, ознакомьтесь с разделом plot.default(). Последняя строка является непрямым вызов title() где main и sub проходят через:

> plot.default 
function (x, y = NULL, type = "p", xlim = NULL, ylim = NULL, 
    log = "", main = NULL, sub = NULL, xlab = NULL, ylab = NULL, 
    ann = par("ann"), axes = TRUE, frame.plot = axes, panel.first = NULL, 
    panel.last = NULL, asp = NA, ...) 
{ 

    # [code left out for clarity] 

    localTitle <- function(..., col, bg, pch, cex, lty, lwd) title(...) 

    # [code left out for clarity] 

    if (ann) 
     localTitle(main = main, sub = sub, xlab = xlab, ylab = ylab, 
      ...) 
    invisible() 
} 
+0

Спасибо @Thomas - правки оценены. – Bazz

0

Название является лишь одним из многих различных вещей, которые вы можете изменить вне основной plot функции. Например, вы можете использовать axis, points, lines и legend, чтобы добавить альтернативные оси, добавить больше точек, линии над сюжетом или условные обозначения/клавиши, чтобы показать, что означают различные комбинации цветов/точек/линий.

Эти функции обеспечивают хорошую степень настройки участков, что является хорошим, потому что это позволяет делать графики, чтобы они выглядели ясными и привлекательными.