我目前正在处理一个数据集,其中的行名都是数值而不是字符。
通常在Plotly
中,从这样的数据集创建一个基本的热图是非常简单的,下面的例子是:
data <- as.matrix(mtcars)
plotly::plot_ly(x = colnames(data), y = rownames(data), z = data, type = "heatmap")
然而,我似乎遇到了问题**,因为**我的数据集的行名是数值。对于如何解决这个问题有什么建议吗?
下面是我的数据集的reprex:
set.seed(051939)
df <- data.frame(loci = sample(1000:5000, size = 50, replace = TRUE), a = runif(50), b = runif(50))
df <- tibble::column_to_rownames(df, "loci")
data <- as.matrix(df)
2条答案
按热度按时间wkftcu5l1#
那这个呢
plot_ly(x = colnames(data), y = rownames(as.character(data)), z = data, type = "heatmap") %>% plotly::layout(p, yaxis = list(title = "loci", ticktext = sample(1000:5000, size = 50, replace = TRUE), tickvals = 1:50))
6pp0gazn2#
感谢@Viktor Horvath找到解决方案。