You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Plotly中mesh3d的颜色随z值变化(R语言)

解决Plotly中mesh3d按z值(sales)着色的问题

要让mesh3d图形根据z值(sales列)实现类似add_surface的颜色渐变效果,只需在add_trace中添加颜色映射相关参数即可,具体修改如下:

修改后的代码

library(plotly)
library(tibble) # 因使用tribble需加载该包

# 可复现数据集
marketing <- tribble(~youtube, ~facebook, ~sales,
                   270, 45, 26,
                   53, 47, 12,
                   20, 55, 11)

plot_ly() %>% 
  add_trace(
    x = ~youtube, 
    y = ~facebook, 
    z = ~sales, 
    type = "mesh3d",
    color = ~sales, # 绑定颜色与sales(z值)
    colorscale = "Viridis", # 采用与add_surface默认一致的色阶
    showscale = TRUE # 显示颜色对应条
  )

关键参数说明

  • color = ~sales:将图形颜色与sales值绑定,实现按z值渐变着色
  • colorscale = "Viridis":使用add_surface默认的色阶,也可替换为"RdBu"、"Blues"等其他内置色阶
  • showscale = TRUE:显示右侧颜色条,便于对应z值与颜色的关系

调整后生成的mesh3d图形会根据sales值大小呈现渐变色彩,与add_surface的着色逻辑一致。

内容的提问来源于stack exchange,提问作者Dario Lacan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 09:25:38