我一直在研究 R 中的交互式绘图。我知道有几个包可以创建交互式绘图,特别是散点图,但我正在寻找某种功能。
例如这个情节。人们可以将鼠标悬停在按钮上以获得该点后面数据的小数字摘要,即工具提示。
当您拥有包含更多变量的数据集时,通常最好探索/可视化 PCA 的分数,或者进行多维缩放 (MDS)。但是,如果以交互方式绘制数据(如上面的示例),则将鼠标悬停在该点上时的摘要不会提供太多信息,即只是一长串数字。如果能够生成自定义绘图来显示,而不是仅仅显示数值,那就更好了。
所以我的问题是:
当将鼠标悬停在散点图中的某个点上时,是否可以(在 R 中可用的某些包中)生成可视化摘要。这可能是一个条形图,或者只是一些用户指定的绘图函数,它将 data.frame 中的一行作为参数。
如果这是可能的,那么它将极大地有助于快速理解 MDS 的结果。
EDIT:
以下是对 iris 数据集进行 MDS 的一些代码:
library(ggplot2)
library(plotly)
d <- dist(iris[,-5]) # euclidean distances between the rows
fit <- cmdscale(d,eig=TRUE, k=2) # k is the number of dim
# Put coordinates and original data in one data.frame
x <- fit$points[,1]
y <- fit$points[,2]
pDat <- data.frame(x=x,y=y)
pDat <- cbind(pDat,iris)
p <- ggplot(pDat) + geom_point(aes(x,y))
ggplotly(p)
首先,现在工具提示仅包含 x,y 坐标。我希望工具提示包含原始 4 个变量的值。然后,我想将工具提示显示为条形图,而不是数据点后面的原始 4 个变量。 MDS 保留了数据点之间的距离,因此人们可以用鼠标逐渐悬停,并看到条形图,几乎连续变化,因为距离被保留。在我的使用案例中,每个点后面有 30 个变量,因此条形图摘要提供的视觉信息比 30 个数值更多。