r - 使用 VennDiagram 在 RStudio 查看器中查看 venn.diagram(不仅仅是写入文件)?
问题描述
使用这个VennDiagram
包,我们可以用这样的venn.diagram()
函数制作一个像这样的维恩图:
library(tidyverse)
library(hrbrthemes)
library(tm)
library(proustr)
# Load dataset from github
data <- read.table("https://raw.githubusercontent.com/holtzy/data_to_viz/master/Example_dataset/14_SeveralIndepLists.csv", header=TRUE)
to_remove <- c("_|[0-9]|\\.|function|^id|script|var|div|null|typeof|opts|if|^r$|undefined|false|loaded|true|settimeout|eval|else|artist")
data <- data %>% filter(!grepl(to_remove, word)) %>% filter(!word %in% stopwords('fr')) %>% filter(!word %in% proust_stopwords()$word)
# library
library(VennDiagram)
#Make the plot
venn.diagram(
x = list(
data %>% filter(artist=="booba") %>% select(word) %>% unlist() ,
data %>% filter(artist=="nekfeu") %>% select(word) %>% unlist() ,
data %>% filter(artist=="georges-brassens") %>% select(word) %>% unlist()
),
category.names = c("Booba (1995)" , "Nekfeu (663)" , "Brassens (471)"),
filename = 'venn.png',
output = TRUE ,
imagetype="png" ,
height = 480 ,
width = 480 ,
resolution = 300,
compression = "lzw",
lwd = 1,
col=c("#440154ff", '#21908dff', '#fde725ff'),
fill = c(alpha("#440154ff",0.3), alpha('#21908dff',0.3), alpha('#fde725ff',0.3)),
cex = 0.5,
fontfamily = "sans",
cat.cex = 0.3,
cat.default.pos = "outer",
cat.pos = c(-27, 27, 135),
cat.dist = c(0.055, 0.055, 0.085),
cat.fontfamily = "sans",
cat.col = c("#440154ff", '#21908dff', '#fde725ff'),
rotation = 1
)
这导致.png
直接写入工作。
如何在 RStudio 查看器窗格中查看它,以及在 RMarkdown 文档等中使用它(即以相同的方式查看常规 ggplot 或基本图)?
另请注意,同样的问题适用于?
venn.diagram
文档中的任何示例(它们似乎都写入文件而不是显示在 RStudio 查看器中)
解决方案
这也应该完成这项工作。我删除了可读性的论点:
...
plt <- venn.diagram(
filename = NULL,
cex = 1,
cat.cex = 1,
lwd = 2,
)
grid::grid.draw(plt)
从?venn.diagram
filename
图像输出的文件名,或者如果 NULL 返回网格对象本身
看来,你几乎可以控制任何事情。再次文档:
... 一系列调整情节的图形参数。详情见下文
参数 Venn Sizes 类 描述
cex 1,2,3,4,5 numeric Vector 给出每个区域标签的大小(长度 = 1/3/7/15 基于集合数)
因此我们需要能够显示grid
对象。plot()
并且print()
不要做这项工作(似乎没有print.grid()
)。
推荐阅读
- ajax - 无法在sailsjs v1.0 中使用PATCH
- javascript - 使用 watchify 制作捆绑包后出现 blob 错误
- java - 获取已安装该应用的 Facebook 好友列表
- c# - 使用 Microsoft Report Viewer 显示数据
- c# - Xamarin C# 调用转移代码放置
- python-3.x - Python3上这个简单的计算器有什么问题
- c# - 如何使用 WPF MVVM 缩短代码?
- angularjs - 如何在 Ionic 中获取以前版本的科尔多瓦?
- javascript - 我如何链接到 javascript 对象(没有框架)?(JS世界的Actionscript概念)
- node.js - res.status() 与 res.statusCode