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

在R中使用Plotly修改3D曲面图轴标签及相关问题求助

解决Plotly 3D曲面图的两个自定义问题

问题1:修改图例(颜色条)标题为“Average speed”

Plotly的3D曲面图用colorbar(颜色条)替代普通legend展示数值刻度,因此需要在add_surface()函数内直接配置colorbar参数,而非在layout()的legend项中设置。

修改后的核心代码片段:

p <- plot_ly(z = ~avgspeed) %>%
  add_surface(
    colorbar = list(title = "Average speed")  # 配置颜色条标题
  ) %>%
  layout(
    title = "3D surface plot of average speed",
    scene = list(
      xaxis = list(title = "traffic volume [veh/h]"),
      yaxis = list(title = "penetration [%]"),
      zaxis = list(title = "average speed [km/h]")
    )
  )

问题2:自定义x轴(交通流量)和y轴(渗透率)的刻度范围与步长

在scene的轴配置中,通过range设定刻度范围,tickmode='linear'指定线性刻度规则,tick0定义起始刻度值,dtick设置刻度步长:

  • x轴(交通流量):范围100-2000,步长100
  • y轴(渗透率):范围0-100,步长10

整合后的完整代码:

p <- plot_ly(z = ~avgspeed) %>%
  add_surface(
    colorbar = list(title = "Average speed")
  ) %>%
  layout(
    title = "3D surface plot of average speed",
    scene = list(
      xaxis = list(
        title = "traffic volume [veh/h]",
        range = c(100, 2000),
        tickmode = "linear",
        tick0 = 100,
        dtick = 100
      ),
      yaxis = list(
        title = "penetration [%]",
        range = c(0, 100),
        tickmode = "linear",
        tick0 = 0,
        dtick = 10
      ),
      zaxis = list(title = "average speed [km/h]")
    )
  )

验证维度匹配

确保avgspeed矩阵的维度与轴刻度数量一致:

  • 矩阵20列对应x轴20个刻度点(100到2000,步长100共20个值)
  • 矩阵11行对应y轴11个刻度点(0到100,步长10共11个值)

内容的提问来源于stack exchange,提问作者Attila Borsos

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 09:10:35