ggiraph软件包适用于交互式图形的生成。
我试图执行一些在网上找到的有关软件包ggiraph的例子,但我无法找到如何导出生成的交互式图形的任何地方,可能是svg格式(或其他)。
守则如下:
library(ggplot2)
library(ggiraph)
library(patchwork)
library(cowplot)
mtcars <- mtcars
mtcars$tooltip <- rownames(mtcars)
gg1 <- ggplot(mtcars) +
geom_point_interactive(aes(x = drat, y = wt, color = qsec,
tooltip = tooltip, data_id = tooltip ), size = 4)
gg2 <- ggplot(mtcars) +
geom_point_interactive(aes(x = qsec, y = disp, color = mpg,
tooltip = tooltip, data_id = tooltip ), size = 4)然后我试着出口:
oggetto <- girafe( ggobj = plot_grid(gg1, gg2), width_svg = 8, height_svg = 4)
library(svglite)
ggsave(file="test.svg", plot=oggetto, width=10, height=8)获取以下错误:
Error in UseMethod("grid.draw") :
no applicable method for 'grid.draw' applied to an object of class "c('girafe', 'htmlwidget')"有人知道如何导出图像吗?
谢谢您的每一个最终的答复!贾科莫
发布于 2022-03-11 09:00:52
可以使用htmltools::save_html(oggetto, "out.html")将包含svg的交互式绘图保存在HTML文件中。
out.html包含JavaScript,例如运行交互性所需的ggiraphjs.min.js。普通的SVG文件可以使用title属性显示工具提示,但是在两幅图上同时悬停的橙色点颜色似乎需要JavaScript。
https://stackoverflow.com/questions/71435042
复制相似问题