首页 > 解决方案 > 从 R 中的等高线图中删除图例

问题描述

这应该很容易做到,但解决方案让我望而却步。如何删除用 plotly for R 制作的等高线图中的图例?这对我不起作用。

# Reproducible example
p <- plot_ly(mtcars, x = ~wt, y = ~cyl, z = ~mpg, type = "contour")
hide_legend(p) # Doesn't work
p %>% layout(showlegend = FALSE) # Doesn't work
plot_ly(mtcars, x = ~wt, y = ~cyl, z = ~mpg, type = "contour", showlegend = FALSE) # Doesn't work

实际上,我真正想做的是在同一个图中为多个等高线图创建一个图例,但是将它们分配给同一个图例组也不起作用,所以我宁愿给等高线加上标签并去掉所有传说比有十几个传说混乱我的情节:

plot_ly() %>% 
  add_trace(..., type = "contour", ...) %>% # This adds a legend
  add_trace(..., type = "contour", ...) %>% # This adds another unwanted legend
  add_trace(..., type = "contour", ...) %>% # This adds yet another unwanted legend
  ...
  add_trace(..., type = contour", ...) # Now I have dozens of legends that I don't want!

我将 Plotly 用于 R,而不是 Plotly 用于 Python。

标签: rplotlylegendr-plotlylegend-properties

解决方案


图例可以像这样隐藏:

p <- plot_ly(mtcars, x = ~wt, y = ~cyl, z = ~mpg, type = "contour")
p %>% hide_colorbar()

推荐阅读