几天来,基本图层图块“OSM”和“Stamen.TonerLite”(我已经使用了一年多作为我的地图的标准图块)没有正确显示 - 即不再可能在它们之间切换.
只要地图在 RStudio 和 RStudio Viewer 中显示,一切都可以完美运行。但是,一旦我在浏览器中打开 .Rmd 输出的相应 .html 文件(我尝试了 chrome、internet explorer、edge 和 firefox),就不可能在磁贴之间切换了。要么显示“OSM”,我不能切换到“Stamen.TonerLite”,反之亦然。
我尝试了不同的图层瓷砖或超过 2 层瓷砖,但结果相同。即使我切换到其他图层,也始终只有一层图块可见。
我的案例的可重现示例:
---
title: "stackoverflow"
author: " "
date: " "
output: html_document
---
```{r, echo = T}
library(leaflet)
m <- leaflet() %>%
addTiles(group = "OSM") %>%
addProviderTiles("Stamen.TonerLite") %>%
addLayersControl(baseGroups = c("OSM", "Stamen.TonerLite")) %>%
addCircleMarkers(lat = 47.4,
lng = 9.37,
radius = 10,
fillOpacity = 1.0)
m
```
Run Code Online (Sandbox Code Playgroud)
我在 R 中运行传单包的简单示例,例如:
library(leaflet)
library(ggmap)
>somePlace <-ggmap::geocode("Vienna")
Information from URL : http://maps.googleapis.com/maps/api/geocode/json?address=Vienna&sensor=false
>somePlace
lon lat
1 16.37382 48.20817
>leaflet(somePlace) %>% addTiles() %>% addMarkers()
Run Code Online (Sandbox Code Playgroud)
地图用蓝色标记显示灰色空间:
没有 OSM 空间可视化的痕迹。你能指出问题出在哪里吗?
提前感谢建设性讨论!
我的配置:R 版本 3.2.4(2016-03-10),平台:x86_64-w64-mingw32/x64(64 位),Windows Server 2012 x64(build 9200),ggmap_2.6.1,leaflet_1.0.1。
类似的问题(但没有合适的解决方案): R 传单包生成空白(灰色)地图 [Ubuntu 14.04] R 传单 RStudio 查看器空白(灰色)地图 [Windows 7]
我想使用R中的世界地图来显示我的数据,其中标签将被添加到某些点(给定坐标).标签应该是一些3D矩形,其高度与数据表中的值成比例.我会使用R包"传单"(或任何替代,如果更好).世界上大约有10-15个点,每个位置有两个值(具体地,点是主要油田的位置,并且值例如是大小和储量).我想为每个点设置两个这样的3D矩形,比方说,红色和蓝色站在彼此附近,具有适当的高度和数字,并且每个点都标有油田的名称.我找到了带有传单包的解决方案,在地图上添加了适当半径的圆圈.
数据和库由代码加载:
library(leaflet)
basins<-read.csv("somedata.csv")
Run Code Online (Sandbox Code Playgroud)
somedata.csv具有以下结构(仅作为最小工作示例的四个数据):
basin,lat,lon,res.density,rel.area
Central Sumatra,1,96,16.7,75
North Sea,58.4,2,20,24
Maracaibo basin,9,-71,74.4,14.3
Los Angeles,33,-118,31.2,32
Run Code Online (Sandbox Code Playgroud)
圆圈标记的映射由命令调用
m=leaflet(data = basins) %>% addTiles() %>% addCircleMarkers(~lon, ~lat , popup = ~as.character(basin),radius=~res.density*0.4,label=~htmlEscape(basin),labelOptions=labelOptions(noHide=T,textOnly=TRUE,direction="bottom"))
Run Code Online (Sandbox Code Playgroud)
然而,这个解决方案并不是那么好,因为它不允许可视化第二个值(通过参数radius = ~res.density,其中res.density是我的.csv表中盆的第一个值的名称).
我想重现一些看起来像这张图片的东西,它是由GMT制作的.具有普通(2D)地图就足够了,但是每个点需要两个这样的矩形,其中字段的名称和每个矩形的值.
来自GMT包的图片
我想将列重命名为今天的日期:
我用以下语法尝试了基本函数Sys.Date()和dplyr pkg:
library(dplyr)
df2 <- df1 %>% select(Column 1, Column 2) %>% rename(toString(Sys.Date())= 'Old Column Name')
Run Code Online (Sandbox Code Playgroud)
不行.任何的想法?
我有一个数据框,想要在一个特定列上创建一个饼图,表示此列中每个级别的百分比.
data <- data.frame(a=c("a1","a1","a2","a3","a1","a2","a3","a4","a2","a1","a5","a4","a3"),
b=1:13)
Run Code Online (Sandbox Code Playgroud)
换句话说,我想要一个饼图,表明a1,a2,......的出现百分比.
另外,我需要在图表上显示百分比.我怎样才能用ggplot2包完成这一切?
任何小小的帮助将不胜感激!