使用 Plotly 在等高线图上叠加线

Posted

技术标签:

【中文标题】使用 Plotly 在等高线图上叠加线【英文标题】:Overlaying line on contour plot using Plotly 【发布时间】:2018-11-19 08:33:59 【问题描述】:

我想在 Plotly 等高线图上叠加一条线,类似于在矩阵的图像上叠加一条线,其中强度表示 zR3 中的位置:

# Generate an arbitrary matrix
m <- matrix(sin(1:6^2) * 1:6, nrow = 6)

# Define a path
path <- data.frame(x = c(0:7), y = c(0, 1, 2, 2, 3, 3, 4, 6))

image(x = 1:6, y = 1:6, z = m, col = gray.colors(20), xlab = "x", ylab = "y")
lines(path$x, path$y)

呈现:

使用 Plotly,我已经尝试过

library(plotly)
plot_ly(x = 1:6, y = 1:6, z = t(m), type = "contour") %>% 
  add_lines(x = path$x, y = path$y)

它会生成一个等高线图,上面覆盖着一个空的R3 空间而不是一条线:

【问题讨论】:

【参考方案1】:

你可以试试这个:

plot_ly(x = 1:6, y = 1:6, z = t(m), type = "contour") %>% 
  add_trace(x = c(1, 2, 3, 4, 5, 6), y = c(1, 2, 3, 3, 4, 5), type = "scatter", mode = "line")

它几乎可以满足您的需求。希望对您有所帮助!

【讨论】:

以上是关于使用 Plotly 在等高线图上叠加线的主要内容,如果未能解决你的问题,请参考以下文章

使用 R 绘制带有等高线图叠加的 3D 曲面图

在 Plotly Density_Mapbox 上添加 GeoJSON 等高线作为图层

R语言plotly可视化:plotly可视化二维直方图二维直方图是二元分布的直方图可视化二维直方图等高线图在等高线上添加数值标签自定义标签字体色彩设置鼠标悬浮显示效果添加边缘直方图

R语言plotly可视化:plotly可视化二维直方图等高线图使用子图的方式在二维直方图等高线图的顶部和右侧添加两个变量的边缘直方图(2D Histogram Contour Subplot)

如何在稀疏点之间插入数据以在 R & plotly 中绘制等高线图

等高线图未在 plotly python 中显示