r - PCA 图中带有名称的工具提示

标签 r ggplot2 tooltip pca r-plotly

我想用 ggplotly() 生成交互式绘图。工具提示应该显示变量的名称。

interactive <- ggplotly(pca,dynamicTicks = T,tooltip = c("x","y",label = list))

PCA 是 PCA 的可视化。 sub 是一个包含变量名称的 data.frame。

sub <- PCA(dataframe)

pca <- fviz_pca_ind(sub, pointsize = "cos2", 
             pointshape = 21, fill = "#E7B800",
             repel = TRUE, # Avoid text overlapping (slow if many points)
             geom = c("text","point"), 
             xlab = "PC1", ylab = "PC2",label = animal_list
             )

数据框包含变量名称,我希望以交互方式在工具提示中显示这些名称。 tooltip = 对我没有多大帮助,并且更改 pca_individuals 中的属性(例如使用 label= 或某些东西也不起作用。 感谢您的支持。 我真的很欣赏你的无私行为。

用于玩耍(实际数据框要大得多):

dataframe <- data_frame("c1"=c(78,89,0),"c2"=c(89,89,34),"c3"=c(56,0,4))

最佳答案

您可以手动执行工具提示的内容,如下所示:

library(factoextra)
library(plotly)
library(FactoMineR)

dataframe <- 
  data.frame("c1"=c(78,89,0),"c2"=c(89,89,34),"c3"=c(56,0,4))
res.pca <- PCA(dataframe)

pca <- fviz_pca_ind(res.pca, pointsize = "cos2", 
                    pointshape = 21, fill = "#E7B800",
                    repel = TRUE, 
                    geom = c("text","point"), 
                    xlab = "PC1", ylab = "PC2")

ggly <- ggplotly(pca)
bggly <- plotly_build(ggly)
bggly$x$data[[1]]$text <- 
  with(pca$data, paste0("name: ", name, 
                        "</br></br>x: ", x, 
                        "</br>y: ", y, 
                        "</br>coord: ", coord, 
                        "</br>cos2: ", cos2, 
                        "</br>contrib: ", contrib))

bggly

关于r - PCA 图中带有名称的工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60301239/

相关文章:

jquery - 防止引导工具提示在单击时隐藏

r - ggjoy 方面与 ggtree

r - 箱线图与 geom_boxplot 多年

python - 错误的 Python 日期计算。

r - 如何不使用 R 绘制时间序列中的间隙

r - 如何在R中绘制时间序列数据,根据因子数据改变背景?

vue.js - Vuetify : show tooltip with a condition

javascript - 需要微创 javascript 工具提示实用程序(不是 jQuery 插件)

R计算列中值之间的差异

r - 在 dplyr 和 mutate 中使用 strsplit 和 subset