本楼主今天刚好翻了下 echarts 还有 echarts4r 的更新日志,留意到后者新增了一个 e_morph函数,这是用来展示不同图形之间变形的,比如案例就展示了一个饼图与一个条形图之间变来变去。楼主参照 e_morph 函数的案例还有 echarts 的这个案例也绘制了一个地图和一个条形图,然鹅有一点区别是,楼主绘制的图形总是“从地图变成条形图”,并没有“从条形图变成地图”。代码如下:
library(echarts4r)
json <- jsonlite::read_json("https://raw.githubusercontent.com/shawnbot/topogram/master/data/us-states.geojson")
#如果网速不给力,链接的 json 文件可以先下载下来再导入
#json <- jsonlite::read_json("data/us-states.geojson")
e1 <- USArrests |>
tibble::rownames_to_column("states") |>
e_charts(states) |>
e_map_register("USA", json) |>
e_map(Murder, map = "USA") |>
e_visual_map(Murder,
universalTransition = TRUE,
animationDurationUpdate = 1000L)
e2 <- USArrests |>
tibble::rownames_to_column("states") |> dplyr::arrange(Murder) |>
e_charts(states) |>
e_bar(Murder,
universalTransition = TRUE,
animationDurationUpdate = 1000L) |>
e_flip_coords()
cb <- "() => {
let x = 0;
setInterval(() => {
x++
chart.setOption(opts[x % 2], true);
}, 3000);
}"
e_morph(e1, e2, callback = cb)
楼主的echarts4r包升级到了0.4.5。