R 不显示具有NA值的国家/地区的绘图仪动画地图

R 不显示具有NA值的国家/地区的绘图仪动画地图,r,maps,plotly,R,Maps,Plotly,我把这个贴在了网上,但是完全没有收到任何活动!希望您能在这里提供帮助: 我有地图时间序列数据,一些国家没有数据,plotly根本不绘制它们。我可以让他们概述,他们看起来不同,但似乎没有任何地方的数据丢失那里(即,我想要一个图例条目)。我怎样才能做到这一点?这是一个reprex: library(plotly) library(dplyr) data = read.csv('https://github.com/lc5415/COVID19/raw/master/data.csv') l &

我把这个贴在了网上,但是完全没有收到任何活动!希望您能在这里提供帮助:

我有地图时间序列数据,一些国家没有数据,
plotly
根本不绘制它们。我可以让他们概述,他们看起来不同,但似乎没有任何地方的数据丢失那里(即,我想要一个图例条目)。我怎样才能做到这一点?这是一个reprex:

library(plotly)
library(dplyr)

data = read.csv('https://github.com/lc5415/COVID19/raw/master/data.csv')


l <- list(color = toRGB("grey"), width = 0.5)

g <- list(
  scope = 'world',
  countrycolor = toRGB('grey'),
  showframe = T,
  showcoastlines = TRUE,
  projection = list(type = 'natural earth')
)

map.time = data %>%
  plot_geo() %>% 
  add_trace(z = ~Confirmed, color = ~Confirmed, frame = ~Date, colors = 'Blues',
            text = ~Country, locations = ~Alpha.3.code, marker = list(line = l)) %>% 
  colorbar(title = 'Confirmed') %>%
  layout(
    title = 'Number of confirmed cases over time',
    geo = g
  ) %>% 
  animation_opts(redraw = F) %>%
  animation_slider(
    currentvalue = list(
      prefix = paste0("Days from ",
                      format(StartDate, "%B %dnd"),": "))) %>%
  plotly_build()

map.time

library(plotly)
图书馆(dplyr)
data=read.csv('https://github.com/lc5415/COVID19/raw/master/data.csv')
l%
添加跟踪(z=~已确认,颜色=~已确认,帧=~日期,颜色='蓝色',
text=~Country,locations=~Alpha.3.code,marker=list(line=l))%>%
颜色栏(标题='已确认')%>%
布局(
标题=‘一段时间内确诊病例的数量’,
geo=g
) %>% 
动画选择(重画=F)%>%
动画滑块(
currentvalue=列表(
prefix=paste0(“开始日期”,
格式(起始日期,“%B%dnd”),“:”))%%>
plotly_build()
地图时间

请注意,缺少数据的国家(如俄罗斯)的数据点与所有其他国家的数据点一样多,问题不在于这些数据点没有出现在传递给plotly的dtaframe中。

处理此问题的明显方法是为工具提示创建一个单独的标签列,该列显示NA值的“无数据”(实际值除外),然后将实际NA值设为0。这将为所有国家/地区提供统一的外观,但在一个国家/地区没有数据时会正确地告诉您

map.time=data%>%
如果(is.numeric,函数(x){x[is.na(x)],则进行变异
绘图_geo()%>%
添加跟踪(z=~已确认,颜色=~已确认,帧=~日期,颜色='蓝色',
text=~Country,locations=~Alpha.3.code,
标记=列表(行=l))%>%
颜色栏(标题='已确认')%>%
布局(
标题=‘一段时间内确诊病例的数量’,
geo=g
) %>% 
动画选择(重画=F)%>%
动画滑块(
currentvalue=列表(
prefix=paste0(“开始日期”,
格式(起始日期,“%B%dnd”),“:”))%%>
plotly_build()
其中:


嘿,艾伦,谢谢你的快速回复,理想情况下,我更希望有一个单独的图例框,上面写着
NA
,以便清楚地区分有无缺失值的国家。在我看来,用-1代替NA是一个统一的选择,因为这样一来,这些国家的颜色就会与低值国家的颜色混合在一起。