将日志应用于choroplethmapbox中的颜色

时间:2020-04-08 20:30:15

标签: r plotly choropleth

我希望显示一个颜色范围,该范围根据值的对数分配颜色,但保持颜色标签和悬停状态不变。 例如,请考虑该图表,该图表将受益于日志记录。

library(rjson)
library(plotly)
url <- 'https://raw.githubusercontent.com/plotly/datasets/master/geojson-counties-fips.json'
counties <- rjson::fromJSON(file=url)
url2<- "https://raw.githubusercontent.com/plotly/datasets/master/fips-unemp-16.csv"
df <- read.csv(url2, colClasses=c(fips="character"))
variableWePretendWeWantToGraph <- df$unemp^4
fig <- plot_ly()
fig <- fig %>% add_trace(
  type="choroplethmapbox",
  geojson=counties,
  locations=df$fips,
  z=variableWePretendWeWantToGraph,
  colorscale="Viridis",
  zmin=0,
  zmax=max(variableWePretendWeWantToGraph),
  marker=list(line=list(
    width=0),
    opacity=0.5
  )
)
fig <- fig %>% layout(
  mapbox=list(
    style="carto-positron",
    zoom =2,
    center=list(lon= -95.71, lat=37.09))
)
fig

(注意:要获得一个可以从中受益的图形,我只是以一个效果很好的示例数据集为例,并将其提高为4的幂以显示创建了无用的颜色图)

目标是显示一张漂亮的地图,但将标签保留在适当的位置(即,颜色栏上的4个刻度将是300000,(e ^(log(300000)* 2/3)= 4481,(e ^(log(300000)* 1/3)= 661

是否有内置的方法可以设置颜色以记录原木,还是需要计算色标并将自定义标签放在颜色栏和悬停上? 在https://plotly.com/r/reference/#choroplethmapbox这里的文档中,有多个引用,例如

...如果轴type是“ log” ...

,但没有有关如何实际设置的说明。尝试layout(zaxis = list(type = "log"))无效。

0 个答案:

没有答案