2016-12-13 1 views
-2

Я нахожусь на первых шагах программирования R. Для этого используйте Sublime Text 3. Я пытаюсь построить некоторые данные, с помощью следующего кода:Показать участок вместо сохранения PDF-файла

cars <- c(1, 3, 6, 4, 9) 
windows() 
plot(cars) 

Я ожидал увидеть график сразу после попадания Ctrl + B, но только сейчас я отметил PDF-файл был сохранить с графиком.

Возможно ли увидеть график вместо сохранения файла?

Попытка dev.off() я получил:

Error in dev.off() : cannot shut down device 1 (the null device) 
Execution halted 

И пытается getOption("device") я получил:

function (file = if (onefile) "Rplots.pdf" else "Rplot%03d.pdf", 
    width, height, onefile, family, title, fonts, version, paper, 
    encoding, bg, fg, pointsize, pagecentre, colormodel, useDingbats, 
    useKerning, fillOddEven, compress) 
{ 
    initPSandPDFfonts() 
    new <- list() 
    if (!missing(width)) 
     new$width <- width 
    if (!missing(height)) 
     new$height <- height 
    if (!missing(onefile)) 
     new$onefile <- onefile 
    if (!missing(title)) 
     new$title <- title 
    if (!missing(fonts)) 
     new$fonts <- fonts 
    if (!missing(version)) 
     new$version <- version 
    if (!missing(paper)) 
     new$paper <- paper 
    if (!missing(encoding)) 
     new$encoding <- encoding 
    if (!missing(bg)) 
     new$bg <- bg 
    if (!missing(fg)) 
     new$fg <- fg 
    if (!missing(pointsize)) 
     new$pointsize <- pointsize 
    if (!missing(pagecentre)) 
     new$pagecentre <- pagecentre 
    if (!missing(colormodel)) 
     new$colormodel <- colormodel 
    if (!missing(useDingbats)) 
     new$useDingbats <- useDingbats 
    if (!missing(useKerning)) 
     new$useKerning <- useKerning 
    if (!missing(fillOddEven)) 
     new$fillOddEven <- fillOddEven 
    if (!missing(compress)) 
     new$compress <- compress 
    old <- check.options(new, name.opt = ".PDF.Options", envir = .PSenv) 
    if (!missing(family) && (inherits(family, "Type1Font") || 
     inherits(family, "CIDFont"))) { 
     enc <- family$encoding 
     if (inherits(family, "Type1Font") && !is.null(enc) && 
      enc != "default" && (is.null(old$encoding) || old$encoding == 
      "default")) 
      old$encoding <- enc 
     family <- family$metrics 
    } 
    if (is.null(old$encoding) || old$encoding == "default") 
     old$encoding <- guessEncoding() 
    if (!missing(family)) { 
     if (length(family) == 4L) { 
      family <- c(family, "Symbol.afm") 
     } 
     else if (length(family) == 5L) { 
     } 
     else if (length(family) == 1L) { 
      pf <- pdfFonts(family)[[1L]] 
      if (is.null(pf)) 
       stop(gettextf("unknown family '%s'", family), 
        domain = NA) 
      matchFont(pf, old$encoding) 
     } 
     else stop("invalid 'family' argument") 
     old$family <- family 
    } 
    version <- old$version 
    versions <- c("1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", 
     "2.0") 
    if (version %in% versions) 
     version <- as.integer(strsplit(version, "[.]")[[1L]]) 
    else stop("invalid PDF version") 
    onefile <- old$onefile 
    if (!checkIntFormat(file)) 
     stop(gettextf("invalid 'file' argument '%s'", file), 
      domain = NA) 
    .External(C_PDF, file, old$paper, old$family, old$encoding, 
     old$bg, old$fg, old$width, old$height, old$pointsize, 
     onefile, old$pagecentre, old$title, old$fonts, version[1L], 
     version[2L], old$colormodel, old$useDingbats, old$useKerning, 
     old$fillOddEven, old$compress) 
    invisible() 
} 
<bytecode: 0x000000000f0e4c80> 
<environment: namespace:grDevices> 
+0

обеспечить закрытие графических устройств с помощью 'dev.off()' –

+0

Зачем голосовать за вопрос? – KcFnMi

ответ

0

с помощью автономного R консоли или другой программы, например, как RStudio, поведение по умолчанию, чтобы показать сюжет а не сохранять его в формате pdf. Попробуйте использовать dev.off() для сброса графического устройства.

Несоблюдение этого, что произойдет, если вы позвоните по телефону getOption("device")?

+0

Вопрос обновлен, см. Его снова. – KcFnMi

+0

ОК, я думаю, вам нужно будет открыть новое графическое устройство. Сначала запустите 'windows()', затем вызовите свой сюжет. –

+0

См. Https://github.com/DataScienceSpecialization/courses/blob/master/04_ExploratoryAnalysis/GraphicsDevices/index.md для получения более подробной информации! –