如何通过echart4r的e_visual_map修改调色板,例如ggplot2的Viridis?
用Viridis调色板替换echart4r可视化的默认调色板
当然可以实现,你可以借助viridis包(ggplot2的Viridis调色板依赖此包)获取渐变颜色值,再传递给e_visual_map()的color参数,就能替换默认调色板。
以下是修改后的完整代码:
library(tidyverse) library(echarts4r) library(viridis) # 加载Viridis调色板依赖包 data(mtcars) # 生成Viridis渐变调色板(这里生成10个颜色值,数量可按需调整) viridis_colors <- viridis(10) mtcars |> e_charts(mpg) |> e_scatter(wt, qsec, scale = e_scale) |> e_visual_map(qsec, scale = e_scale, color = viridis_colors)
如果不想额外加载viridis包,也可以通过ggplot2的scales工具提取调色板:
library(tidyverse) library(echarts4r) data(mtcars) # 从ggplot2的Viridis连续调色板中提取颜色,option可选"A""B""C""D"对应不同变体 viridis_colors <- scales::viridis_pal(option = "D")(10) mtcars |> e_charts(mpg) |> e_scatter(wt, qsec, scale = e_scale) |> e_visual_map(qsec, scale = e_scale, color = viridis_colors)
核心逻辑是:e_visual_map()的color参数支持传入自定义颜色向量,将Viridis调色板的颜色值传入后,就会覆盖默认的色彩映射。
内容的提问来源于stack exchange,提问作者Ian.T
相关产品推荐
相关产品推荐

