Облако слов с масштабированным цветом в зависимости от частоты - PullRequest
0 голосов
/ 13 июня 2018

Мне нужно создать цветное облако слов того же цвета, но с масштабированной интенсивностью.Это пример, но используется в случае карты.

enter image description here

Как видите, карта окрашена в один цвет, но с различной интенсивностью в соответствии сномер клиента в том виде, как он представлен в шкале справа.

Это мой фрейм данных:

> head(d,20)
                   word freq
paris             paris 1250
saint             saint 1247
les                 les  694
marseille     marseille  500
lyon               lyon  312
toulouse       toulouse  226
nantes           nantes  204
strasbourg   strasbourg  177
seine             seine  174
montpellier montpellier  170
nice               nice  169
mer                 mer  160
rennes           rennes  153
bordeaux       bordeaux  144
lille             lille  144
bois               bois  126
marne             marne  123
dijon             dijon  119
nancy             nancy  116
provence       provence  115

А это мой код для создания облака слов

library("wordcloud")
library(wordcloud2)


color_range_number<-length(unique(d$freq))
color <- colorRampPalette(brewer.pal(9,"Blues")[3:7])(color_range_number)[factor(d$freq)]

wordcloud(words =d$word,freq =d$freq,min.freq=1,max.words=100,color=color,random.order=FALSE,rot.per=0.35)

Но я получил это:

enter image description here

Спасибо за ваши предложения!

1 Ответ

0 голосов
/ 13 июня 2018

Если вам нужен только один синий цвет и вы хотите изменить альфа-канал, вам даже не нужна функция colorRampPalette, только функция alpha из шкал.

d <- read.table(text = "
city                   word freq
paris             paris 1250
saint             saint 1247
les                 les  694
marseille     marseille  500
lyon               lyon  312
toulouse       toulouse  226
nantes           nantes  204
strasbourg   strasbourg  177
seine             seine  174
montpellier montpellier  170
nice               nice  169
mer                 mer  160
rennes           rennes  153
bordeaux       bordeaux  144
lille             lille  144
bois               bois  126
marne             marne  123
dijon             dijon  119
nancy             nancy  116
provence       provence  115", header = T)

library(wordcloud)
library(scales)
wordcloud(words =d$word,freq =d$freq,min.freq=1,max.words=100,color=alpha("blue", seq(0.4,1, 0.05)),random.order=FALSE,rot.per=0.35)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...