如何改变 plotly R 图表中的不透明度

How can I vary opacity in a plotly R chart

这是一个玩具示例。 data.frame 中的不透明度值没有影响

library(plotly)
df <- data.frame(x=c(1,2),y=c(6,3),opacity=c(1,0.2))

plot_ly(df,
    type="bar",
    x=x,
    y=y,
    opacity=opacity,
    marker = list(         
      color='#5a22e3'    
    )
    )

我可能还想在 df 中扩展一个颜色列并利用它来代替上面的固定值 TIA

您可以添加一个 group 以便它知道要查找多个不透明度:

plot_ly(df,
        type="bar",
        x=x,
        y=y,
        group=x,
        opacity=opacity,
        marker = list(         
          color='#5a22e3'    
        )
)

更新

关于颜色,添加color作为变量与group做类似的事情,但它需要是一个因子或字符变量(注意我删除了group):

plot_ly(df,
        type="bar",
        x=x,
        y=y,
        opacity=opacity,
        color=as.factor(x)
)

因为只有两层,这会给你一个警告,所以你可以把所有的都放在一个suppressWarnings()