Plot_ly в R: Как добавить правильные метки оси и значения тиков? - PullRequest
1 голос
/ 13 февраля 2020

Если M является матрицей, то

plot_ly(z = M) %>% add_surface()

строит график поверхности этой матрицы. Это означает, что строки и столбцы являются значениями x и y, а значение z является элементом матрицы.

Однако оси x и y помечены как целые числа, соответствующие строкам и столбцам M , Кроме того, оси просто называются «x» и «y» буквально на графике.

Но это не то, что я хочу. Матрица M была сгенерирована с использованием outer(A, B, someFunction), где A, B - векторы. Поэтому я хочу, чтобы на оси отображались значения A и B, и я хочу, чтобы на метках оси было указано "A", "B", а не "x", "y".

Как это сделать?

Ответы [ 2 ]

0 голосов
/ 13 февраля 2020

Вы должны установить A и B в x и y:

library(plotly)

A <- B <- seq(-5, 5, by = 0.2)
z <- outer(A, B, function(x,y) exp(-x^2-y^2))

plot_ly(x = A, y = B, z = z) %>% add_surface() %>%
  layout(scene = list(xaxis = list(title = "A"), yaxis = list(title = "B")))
0 голосов
/ 13 февраля 2020

Найдено из их документации здесь: https://plot.ly/r/figure-labels/

library(plotly)
library(tidyverse)

M <- 
  matrix(c(1, 2, 3, 1), ncol = 2, nrow = 2)

plot_ly(z = M) %>% 
  add_surface() %>% 
  layout(scene = list(xaxis = list(title = "A"), yaxis = list(title = "B")))
...