在 tagcloud 中保留大写字母
Preserve uppercase in tagcloud
我想做一个标签云来可视化基因频率。
library(wordcloud)
genes_snv <- read.csv("genes.txt", sep="", header=FALSE)
wordcloud(genes_snv$V1,
min.freq=15,
scale=c(5,0.5),
max.words=100,
random.order=FALSE,
rot.per=0.3,
colors=brewer.pal(8, "Dark2"))
这是我的代码,但它将所有内容都转换为小写(对基因名称没有用)。我怎样才能避免这种情况?
genes.txt
开头为
Fcrl5
Etv3
Etv3
Lrrc71
Lrrc71
(...)
当缺少 freq
参数时 wordcloud
调用 tm::TermDocumentMatrix
,我猜它在计算频率之前在内部调用函数 tolower
。
为了避免调用 tm
,我们可以提供自己的频率,参见示例:
# dummy data
set.seed(1)
genes <- c("Fcrl5","Etv3","Etv3","Lrrc71","Lrrc71")
genes <- unlist(sapply(genes, function(i)rep(i, sample(1:100,1))))
# get frequency
plotDat <- as.data.frame(table(genes))
# plot
wordcloud(word = plotDat$genes, freq = plotDat$Freq,
min.freq=15,
scale=c(5,0.5),
max.words=100,
random.order=FALSE,
rot.per=0.3,
colors=brewer.pal(8, "Dark2"))
我想做一个标签云来可视化基因频率。
library(wordcloud)
genes_snv <- read.csv("genes.txt", sep="", header=FALSE)
wordcloud(genes_snv$V1,
min.freq=15,
scale=c(5,0.5),
max.words=100,
random.order=FALSE,
rot.per=0.3,
colors=brewer.pal(8, "Dark2"))
这是我的代码,但它将所有内容都转换为小写(对基因名称没有用)。我怎样才能避免这种情况?
genes.txt
开头为
Fcrl5
Etv3
Etv3
Lrrc71
Lrrc71
(...)
当缺少 freq
参数时 wordcloud
调用 tm::TermDocumentMatrix
,我猜它在计算频率之前在内部调用函数 tolower
。
为了避免调用 tm
,我们可以提供自己的频率,参见示例:
# dummy data
set.seed(1)
genes <- c("Fcrl5","Etv3","Etv3","Lrrc71","Lrrc71")
genes <- unlist(sapply(genes, function(i)rep(i, sample(1:100,1))))
# get frequency
plotDat <- as.data.frame(table(genes))
# plot
wordcloud(word = plotDat$genes, freq = plotDat$Freq,
min.freq=15,
scale=c(5,0.5),
max.words=100,
random.order=FALSE,
rot.per=0.3,
colors=brewer.pal(8, "Dark2"))