Pomyślałem, że byłoby naprawdę fajnie używać plotGoogleMaps w błyszczącej aplikacji do dynamicznej analizy i wyświetlania danych przestrzennych za pomocą R. Nigdy wcześniej nie używałem żadnej z tych paczek (są one stosunkowo nowe) i nie mają zbyt wiele doświadczenie programistyczne, więc zacząłem od tutoriali i przykładów dla każdego, a następnie starałem się je złączyć razem.plotGoogleMaps w błyszczącej aplikacji
Mogę sprawić, aby wszystkie poszczególne elementy kodu działały, ale uruchomienie aplikacji nie wyświetla mapy google. Zgaduję, że ma to związek z działkąGoogleMaps próbującą kreślić w przeglądarce i błyszczącą próbą renderowania fabuły w przeglądarce, ale nie wiem, jak rozwiązać ten problem. Wyciągnąłem większość błyszczące kod z the shiny tutorial Inputs & Outputs a następnie kod plotGoogleMaps Tutorial
badawczej:
#load packages and data
library(shiny)
library(plotGoogleMaps)
data(meuse)
#convert data frame to SpatialPointDataFrame and set
coordinates(meuse)<-~x+y
proj4string(meuse) <- CRS('+init=epsg:28992')
#will need to select column name for app, maybe not best way to do this,
#but seems to work
formulaText<-paste('zinc')
#plot data on Google map, opens browser and works
mpgPlot <- plotGoogleMaps(meuse, zcol=formulaText)
ui.R
library(shiny)
# Define UI for meuse test
shinyUI(pageWithSidebar(
# Application title
headerPanel("Meuse Test"),
# Sidebar with controls to select the variable to plot on map
sidebarPanel(
selectInput("variable", "Variable:",
choices=list("Zinc" = "zinc",
"Lead" = "lead",
"Copper" = "copper"),
selected="Zinc")
),
# Show the caption and plot of the requested variable on map
mainPanel(
plotOutput("mapPlot")
)
))
server.R
library(shiny)
library(plotGoogleMaps)
data(meuse)
coordinates(meuse)<-~x+y
proj4string(meuse) <- CRS('+init=epsg:28992')
# Define server logic required to plot various variables on map
shinyServer(function(input, output) {
# Compute the forumla text in a reactive expression since it is
# shared by the output$mapPlot ?I think I still need to do this...
formulaText <- reactive({
#paste the input name in so it follows argument format for plotGoogleMaps?
#tried without, don't think it is probelm, works with test code...
paste(input$variable)
})
# Generate a plot of the requested variable against mpg and only
# include outliers if requested
output$mapPlot <- renderPlot({
plotGoogleMaps(meuse, zcol=formulaText)
#also tried to specify alternative arguments like add=TRUE,
#filename='mapPlot.htm', openMap=FALSE
})
})
rozumiem zarówno lśniące i działkaGoogleMaps są całkiem nowe i widziałem kilka sugestii publikuj pytania do błyszczącej grupy Google, ale nie chcę podwójnie pisać, a StackOverflow to moje odpowiedzi. W końcu chciałbym również wnieść niewielki wkład w społeczność, która tak bardzo mi pomogła! Jeśli jest to po prostu kiepskie podejście Jestem otwarty na alternatywy, ja sprawdzanie googleVis teraz ...
Dzięki, Alex
PS
sessionInfo()
R version 3.0.1 (2013-05-16)
Platform: x86_64-w64-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=English_United States.1252
[2] LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] grid stats graphics grDevices utils datasets methods
[8] base
other attached packages:
[1] googleVis_0.4.3 plotGoogleMaps_2.0 maptools_0.8-25
[4] lattice_0.20-15 foreign_0.8-54 rgdal_0.8-10
[7] sp_1.0-11 shiny_0.6.0
loaded via a namespace (and not attached):
[1] bitops_1.0-5 caTools_1.14 digest_0.6.3 httpuv_1.0.6.3
[5] Rcpp_0.10.4 RJSONIO_1.0-3 tools_3.0.1 xtable_1.7-1
PPS- czytam this post kilka razy przed ogłoszeniem, ale teraz jestem podejrzliwy, moja odpowiedź jest. Appologies, jeśli pytanie jest duplikatem. Myślę, że to coś z htmlOutput()
... ?htmlOutput
jest rzadki ... czuję gęsty ...
Dziękujemy za szybką odpowiedź! Nie mogę znaleźć 'plotGoogleVis', tam jest 'plotGoogleMap' (używam) jest" googleVis "(wspomniałem) ... iframe wygląda na pomocny, nowe terytorium, spróbuję wrócić ... I również nie wiedział o ulotce, jeśli któraś z prac zaakceptuje. Dzięki! –