如何在 Plotly 条形图中仅更改一个条的颜色?

3

我有这个图:

Especie <- c("Perros","Gatos","Pájaros","Total")
Cantidad <- c(3,2,4,9)

df <- data.frame(Especie,Cantidad)

grafico <- plot_ly(df,
        x = ~Especie,
        y = ~Cantidad,
        type = "bar")

是否有可能根据“Especie”列上的特定值,有条件地使“总计”条以不同的颜色绘制? 或者,是否有可能使“数量”最高的条以不同的颜色绘制? 谢谢!

2个回答

4

实现您想要的结果的一个选项是在颜色属性上映射条件:

library(plotly)

plot_ly(df,
  x = ~Especie,
  y = ~Cantidad,
  color = ~Especie == "Total",
  type = "bar",
  showlegend = FALSE
)els


3

另一种选项是使用条件语句ifelse将您的颜色标记器marker设置为以下内容:

library(plotly)
grafico <- plot_ly(df,
                   x = ~Especie,
                   y = ~Cantidad,
                   type = "bar",
                   marker = list(color = ifelse(df$Especie == 'Total', "red", "blue")))
grafico

使用reprex v2.0.2于2023年3月28日创建


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接