在R

时间:2015-06-28 10:19:15

标签: javascript html r google-maps

我已成功在googlemap中绘制了许多数据点。

但后来我想做下面的事情:

  1. 将图片作为背景添加到我的plotGooglemap标记
  2. 在我的plotGooglemap markers
  3. 中在infowindow中添加youtube embeded视频

    没有。 2是高优先级,如果可能则为1,然后确定。 目前我得到了一些视频嵌入的手动解决方案。 我使用plotGoogleMaps生成该html文件的R代码如下:

    require(plotGoogleMaps)  
    NucData <- read.csv("./locationdata.csv")
    NucData$Location <- gsub(",",":", NucData$Location)
    NucData$latitude <- as.numeric(levels(NucData$latitude))[as.integer(NucData$latitude)]
    NucData$longitude <- as.numeric(levels(NucData$longitude))[as.integer(NucData$longitude)]
    coordinates(NucData)<-~longitude+latitude # convert to SPDF
    proj4string(NucData) <- CRS('+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs ')
    myplot<-plotGoogleMaps(NucData,filename='MyMap.html', zcol='location.Name'
                      , draggableMarker=FALSE, colPalette=c('#FF0000', '#FFA500',                '#65ed12'),
                       )
    

    这很好地生成了地图,然后经过一些研究我手动更改了生成的html文件&#34; infowindow.setContent&#34;部分如下:

     var infowindow = new google.maps.InfoWindow({ content: "", disableAutoPan:false, maxWidth :320, pixelOffset :null  }); 
    google.maps.event.addListener(markersNucData7557[0] ,"click",function(event){ 
    
    infowindow.setContent('<div id="content">'+
          '<div id="siteNotice">'+
          '</div>'+
          '<h1 id="firstHeading" class="firstHeading">Video in Info Window</h1>'+
          '<div id="bodyContent">'+
          '<iframe width="300" height="250" src="http://www.youtube.com/embed/uV3R4lCc9YI" frameborder="0" allowfullscreen></iframe>'+
          '</div>'+
          '</div>'); 
    
     infowindow.setPosition(event.latLng);
    infowindow.open(map,markersNucData7557[0] )}); 
    

    效果很好......我可以将YouTube视频嵌入到特定标记中。 但由于我有许多数据点和相应的许多视频链接,因此不能手动更改html文件代码。有什么方法可以通过R代码实现它。我试图在plotGoogleMaps函数中使用InfoWindowControl选项,但失败了。

    m<-plotGoogleMaps(NucData,filename='MyMap.html', zcol='location.Name'
                      , draggableMarker=FALSE, colPalette=c('#FF0000', '#FFA500', '#65ed12'),
        InfoWindowControl=list(map=map, event="click",position="event.latLng",
                               disableAutoPan=FALSE, maxWidth=330,
                               content="('<div id="content">'+
          '<div id="siteNotice">'+
          '</div>'+
          '<h1 id="firstHeading" class="firstHeading">Video in Info Window</h1>'+
          '<div id="bodyContent">'+
          '<iframe width="300" height="250" src="http://www.youtube.com/embed/uV3R4lCc9YI" frameborder="0" allowfullscreen></iframe>'+
          '</div>'+
          '</div>')")
    

    是否有任何其他类型的基于R包的方法,或者如果根本不可能,那么任何简单的Java端代码都会很棒。

0 个答案:

没有答案