echarts4r中e_scatter的scale参数不生效问题求助
解决echarts4r散点大小不随X轴变化的问题
你误用了scale参数——它是用来对系列数值做轴方向的缩放,并非控制散点的动态尺寸。要实现散点大小随X轴推进变化,同时保持X、Y轴位置不变,需改用symbol_size参数配合自定义缩放函数:
修改后的代码
library(echarts4r) df_1 <- data.frame( EIXOX = 1:100, VAR1 = 200:101, VAR2 = 201:300, VAR3 = 301:400, VAR4 = 401:500 ) my_scale <- function(x) scales::rescale(x, to = c(5, 45)) df_1 |> e_chart(x = EIXOX, height = 250) |> e_scatter(serie = VAR1, legend = FALSE, symbol_size = ~my_scale(EIXOX)) # 用公式绑定X轴变量计算尺寸
关键说明
symbol_size支持以公式(~)形式传入动态计算逻辑,这里把X轴的EIXOX值传入my_scale函数,将1-100的数值缩放到5-45的尺寸范围,实现散点大小随X轴推进逐渐变化。- X轴仍为
EIXOX,Y轴仍为VAR1的原始数值,完全满足“轴位置不变”的要求。
内容的提问来源于stack exchange,提问作者neves
相关产品推荐
相关产品推荐

