使用 R/Plotly 更改热图的 y 轴刻度值

Lik*_*iky 1 r heatmap plotly

我有以下 R 代码:

library(plotly)
A <- matrix(seq(1, 12), nrow = 4, ncol = 3)
p <- plot_ly(z = t(A), type = "heatmap", colorscale = "Greys")
p 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  1. 如何更改绘图以仅查看 y 轴上的值 0、1 和 2,而不查看值 -0.5、0.5、1.5 和 2.5(与 x 轴类似)

  2. 如何将 y 轴上的所有刻度值添加 10,以获得 10、11 和 12,而不是 0、1 和 2。

请注意,我正在寻找一个一般概念,因为现实中的矩阵要大得多。

Max*_*ers 5

如何更改绘图以仅查看 y 轴上的值 0、1 和 2,而不查看值 -0.5、0.5、1.5 和 2.5(与 x 轴类似)

添加dtick = 1到您的yaxisin layout.

如何将 y 轴上的所有刻度值添加 10,以获得 10、11 和 12,而不是 0、1 和 2。

您可以在ticktext文本中指定每个刻度应显示的内容。您还需要提供tickvals并设置tickmode为array。

在此输入图像描述

完整代码

library(plotly)
A <- matrix(seq(1, 12), nrow = 4, ncol = 3)
p <- plot_ly(z = t(A), type = "heatmap", colorscale = "Greys") %>%
  layout(yaxis = list(dtick = 1, ticktext = 10:12, tickmode="array", tickvals = 0:2))
p 
Run Code Online (Sandbox Code Playgroud)