Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 情节+;ggplot2:添加图层会使工具提示消失_R_Ggplot2_Plotly - Fatal编程技术网

R 情节+;ggplot2:添加图层会使工具提示消失

R 情节+;ggplot2:添加图层会使工具提示消失,r,ggplot2,plotly,R,Ggplot2,Plotly,使用ggplot2和plotly,我可以轻松创建US county choropleth并设置自定义工具提示。但是,当我添加状态边界时,工具提示在某些情况下无法呈现。这个问题似乎与接近国家边界有关。这可能是什么原因造成的,如何修复 首先,添加第二层完全破坏工具提示的示例 library(plotly) library(tidyverse) ### One layer -- works fine a <- data.frame(group = seq(3085), val = rnorm(

使用ggplot2和plotly,我可以轻松创建US county choropleth并设置自定义工具提示。但是,当我添加状态边界时,工具提示在某些情况下无法呈现。这个问题似乎与接近国家边界有关。这可能是什么原因造成的,如何修复

首先,添加第二层完全破坏工具提示的示例

library(plotly)
library(tidyverse)

### One layer -- works fine
a <- data.frame(group = seq(3085), val = rnorm(3085)) %>%
  left_join(ggplot2::map_data("county"), by = "group")

p <- ggplot(a, aes(long, lat, group = group)) +
  geom_polygon(aes(fill = val, text = subregion))

ggplotly(p, tooltip="text")

### Two layers -- no tool tips
b <- ggplot2::map_data("state")

p <- ggplot(a, aes(long, lat, group = group)) +
  geom_polygon(aes(fill = val, text = subregion)) +
  geom_path(data = b, color = "black")

ggplotly(p, tooltip="text")
library(plotly)
图书馆(tidyverse)
###一层——很好用
a%
左联合(ggplot2::地图数据(“县”),由=“组”)

p我甚至不能让第一个为我运行(这可能是由于ggplot的dev版本中的更改),但我怀疑问题是您的后续层正在覆盖以前的层。无论最后添加的是什么,都会在顶部结束,因此请尝试在州之后添加县。如果在州之后添加县,则填充(来自geom_多边形)将绘制在直线上(来自geom_路径),因此它不会按该顺序工作。我正在使用ggplot2_2.1.0。我确认,如果您使用dev ggplot2安装plotly,您会收到一个错误。我甚至无法运行第一个版本(这可能是由于ggplot的dev版本发生了更改),但我怀疑问题是您的后续层正在覆盖以前的层。无论最后添加的是什么,都会在顶部结束,因此请尝试在州之后添加县。如果在州之后添加县,则填充(来自geom_多边形)将绘制在直线上(来自geom_路径),因此它不会按该顺序工作。我正在使用ggplot2_2.1.0。我确认,如果使用dev ggplot2进行plotly安装,则会出现错误。
### Just Delaware: shows tool tips
b <- ggplot2::map_data("state") %>%
  filter(region == "delaware")

a <- data.frame(group = seq(3085), val = rnorm(3085)) %>%
  left_join(ggplot2::map_data("county"), by = "group") %>%
  filter(region == "delaware")

p <- ggplot(a, aes(long, lat, group = group)) +
  geom_polygon(aes(fill = val, text = subregion)) +
  geom_path(data = b, color = "black")

ggplotly(p, tooltip="text")
### New England: *sometimes* shows tool tips
new_england <- c("maine", "new hampshire", "vermont", "massachusetts", "connecticut", "rhode island")
b <- ggplot2::map_data("state") %>%
  filter(region %in% new_england)

a <- data.frame(group = seq(3085), val = rnorm(3085)) %>%
  left_join(ggplot2::map_data("county"), by = "group") %>%
  filter(region %in% new_england)

p <- ggplot(a, aes(long, lat, group = group)) +
  geom_polygon(aes(fill = val, text = subregion)) +
  geom_path(data = b, color = "black")

ggplotly(p, tooltip="text")