2013-07-06 2 views
6

Я читал исходный код R, пытаясь понять, как он ссылается на страницы справки (например, ?c). Я думаю, что он использует less, но я не смог найти функцию, которая это делает. Думаю, я мог бы сделать system(gettextf("echo %s | less", my_text)), но он не будет работать в Windows.Как вывести изображение на страницу R?

ответ

7

Посмотрите ?page и ?file.show:

page(runif(1e5)) 
+0

Очень полезно, работает даже в RStudio! – krlmlr

+0

Спасибо. Вы знаете, есть ли способ опубликовать текст без сохранения его в файл? – nachocab

+0

@nochocab: 'page' также использовать временный файл. Я не знаю, можно ли достичь разбивки на страницы без временного файла. – sgibb

2

+1 к @sgibb, page() действительно полезно. В некоторых случаях я хочу пойти с более сложным решением. Вы можете также использовать ?sink в сочетании с ?file.show:

sink(file="tempSink", type="output") 
    ... 
    # various commands 
    ... 
sink() 
file.show(file="tempSink", delete.file=TRUE, title="my output") 

Например, page() отображает только один выход, но вы можете захотеть взглянуть на несколько вместе. Я также отметил, что иногда page() не работает, но приведенное выше (я не знаю, почему - это может быть просто ошибка).

+1

Это то же самое, что и 'page', если вы используете' method = "print" '(посмотрите:' page (page) '). Конечно, вы должны включить ваши * различные команды * в функцию. – sgibb