这是我的第一个问题,如果我做错了,那就很抱歉。正如问题所说我想在R中使用globejs()在我的3D Globe中显示一个单点。我正在创建一个带有dashboard()的页面,并且在框()中,我使用来自包threejs的leaflet和globejs() 。我创建了两个numericInput(),一个用于lat,一个用于long但它拒绝工作。我尝试了很多方法,但没有用。不知何故,arcs在我创建的data.frame中运行得很好,这就是现在的基本方式:
output$distPlot <- renderGlobe({
ja<-c(input$arclat,input$arclong,input$arclat2,input$arclong2);
m<-data.frame(matrix(ja,ncol=4,nrow=1));
globejs(bg="white",lat=input$lat,long=input$long,value=45,arcs=m,arcsColor = "#99aaff", atmosphere = input$icon, arcsHeight = 0.1,arcsOpacity = 1 )
})
我希望你能理解我的问题。请帮助。
答案 0 :(得分:0)
以下是如何绘制一个点:
library(shiny)
library(threejs)
app <- shinyApp(
ui = bootstrapPage(
numericInput('long', 'longitude', 13.40),
numericInput('lat', 'latitude', 52.52),
globeOutput('plot')
),
server = function(input, output) {
output$plot <- renderGlobe({
globejs(
lat=c(NA, input$lat),
long=c(NA, input$long),
pointsize=5,
value=100)
})
}
)
runApp(app, launch.browser = TRUE)
似乎globejs
需要borth参数lat
和long
中至少长度为2的向量 - 可能是一个错误?