Встраивание диаграмм googleVis в веб-сайт - PullRequest
24 голосов
/ 10 января 2011

Чтение из пакета googleVis виньетка : "С помощью пакета googleVis пользователи могут легко создавать веб-страницы с интерактивными диаграммами на основе фреймов данных R и отображать их через Пакет R.rsp или внутри собственных сайтов". Следуя инструкциям, я смог просмотреть примеры диаграмм, используя метод plot для объектов gvis. Этот метод по умолчанию создает rsp-файл в папке rsp / myAnalysis пакета googleVis, используя информацию об типе и идентификаторе диаграммы объекта, и отображает выходные данные, используя локальный веб-сервер пакета R.rsp (порт 8074 по умолчанию ).

Может ли кто-нибудь помочь мне (или предоставить какую-либо ссылку) в отношении процедуры, которой кто-то должен следовать, чтобы встроить такие диаграммы в существующий веб-сайт (например, сайт joomla)?

Ответы [ 5 ]

27 голосов
/ 10 января 2011

Очевидно, я думаю, что это слишком многословно для @ gd047, но я поместил своего рода учебник, так как он может быть полезен для других читателей, которые хотят использовать googleVis на своем собственном веб-сайте.

установить googleVis из CRAN

install.packages('googleVis')

обратите внимание на сообщения.

затем создайте объект gvis:

library(googleVis)
M <- gvisMotionChart(Fruits, "Fruit", "Year")

, содержимое M можно найти по:

> M

, и вы можете найти график в своем браузере:

> plot(M)

, тогда для генерации графика необходимо M $ html $ chart:

> M$html$chart
[1] "<!-- MotionChart ... omitted... \">\n</div>\n"

сохранить его вфайл:

> cat(M$html$chart, file="tmp.html")

, если вы откроете "tmp.html" как файл (то есть, адрес говорит о файлах: ///***/tmp.html), тогда может появиться предупреждение безопасности.Вам нужно получить доступ к html через http: //.

. Поэтому, если вы можете редактировать любую веб-страницу, на которой доступен тег (например, блоггер), вы можете использовать ее, просто скопировав и вставивсодержимое tmp.html, например, так:

http://takahashik.blogspot.com/2011/01/googlevis-example.html

Вот знаменитая версия "радужной оболочки" примера:

http://takahashik.blogspot.com/2011/01/googlevis-example-for-data-iris_10.html

В противном случае, если у вас есть веб-сервер, вы можете использовать его, загрузив tmp.html на сервер.

8 голосов
/ 10 января 2011

Если вы хотите скопировать и вставить диаграмму вручную в CMS (например, на сайт Joomla / Wordpress), вы можете сделать это из html-списка объекта 'gvis'.Точно так же, как @kohske предложил:

# demo data from manual
M <- gvisMotionChart(Fruits, "Fruit", "Year")
# write the HTML body to a temporary file without header and footer
cat(M$html$chart, file="temp.html")
# or with caption included:
cat(paste(M$html[c("chart", "caption")], collapse="\n"), file="temp.html")

Затем скопируйте и вставьте содержимое файла temp.html на свой сайт Joomla.Следует обратить внимание на вставку кода в виде содержимого HTML, а не в редакторе WYSIWYG (например, Tiny MCE)!

Если вы хотите показать его на отдельной странице, не забудьте также включить верхний и нижний колонтитулы:

# demo data from manual
M <- gvisMotionChart(Fruits, "Fruit", "Year")
# write the HTML to a temporary file with header and footer all included
cat(paste(M$html, collapse="\n"), file="temp.html")

И наконец: вы можете легко загрузить этот документ, например, на FTP-сервер, и получить к нему доступ через любой браузер.

1 голос
/ 07 мая 2013

Вы также можете написать следующий код

print(M,"chart", file="myfile")

, скопировать и вставить вывод html на свою веб-страницу, и диаграмма googleVis будет работать

1 голос
/ 13 января 2011

Flash-контент может не работать на локальном компьютере.Мне пришлось изменить ограничения безопасности на Adobe Site , чтобы заставить его работать.

Теперь, следуя инструкциям daroczig, можно просматривать содержимое в локальном браузере и не полагаться на R.rsp в целом.

0 голосов
/ 16 июля 2012

У меня есть скрипт, который будет автоматически запускаться при обновлении данных и размещать диаграмму googleVis на веб-сайте с помощью RCurl и googleVis. Вот пример, где visChart - это диаграмма:

library(RCurl)
library(googleVis)

сделать visChart

write(visChart$html$chart, file='visChart.html')
ftpUpload('visChart.html', "ftp://username:password@example.com/path/to/'visChart.html")

visChart$html$chart дает только HTML только для диаграммы без нижнего колонтитула, поэтому я использую iframe в своем HTML для доступа к этой диаграмме. Если вы используете сайт Google, блогер или хотите гаджет Google, вы можете использовать createGoogleGadget ():

write(createGoogleGadget(visChart), file='visChart.xml')
ftpUpload('visChart.xml', "ftp://username:password@example.com/path/to/'visChart.xml")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...