2016-12-13 17 views
1

Используя пакет wordcloud, мне нужно сделать wordclouds отрегулированным до прямоугольной формы. Создание wordcloud само по себе не проблема. Я использую пользовательскую функцию:R - wordcloud отрегулирован в прямоугольной форме

createCorpus <- function (name, name2, output) { 

     # Here comes all the processing for generating a corpus 
     # irrelevant for this question 

     # Create wordcloud and save the image in png format 
     png(output, width=7.5, height=5, units="cm", res=140, bg = "white") 
     wordcloud(ordered.colors=TRUE, 
       words = topfeatures$keyName, 
       freq = topfeatures$value.x, 
       scale=c(1,.5), 
       min.freq=2, 
       max.words=10, 
       random.order=T, 
       rot.per=.0) 

    dev.off() 
} 

Запуск функции (F.I. :)

createCorpus(markenmonitoring$Content, "termsmm", "wcMM.png")

концы генерируя детские с Wordcloud. Тем не менее, кажется, что форма всех этих словосочетаний имеет тенденцию быть круглой. Однако в моих спецификациях мне нужно создать прямоугольные формы wordclouds. F.i:

How the end result should look like

Примите во внимание, что для предыдущего изображения я вручную изменил размер «круговой» Wordcloud.

Я начал менять параметр rot.per на .0 и, следовательно, предотвращать вывод слов по вертикали. Однако, похоже, это не помогает. До тех пор, как я ограничить высоту моих выходной (в f.i .: png(output, width=7.5, height=2.5, units="cm", res=140, bg = "white")), я получаю следующее сообщение об ошибке:

Error in plot.new() : figure margins too large

Вопрос: Могу ли я сделать wordclouds в R с формой, отличной круговой?

+0

Вы пытались установить 'fixed.asp = F' в вызове функции' wordcloud'? –

+0

Посмотрите на [wordcloud2] (https://cran.r-project.org/web/packages/wordcloud2/vignettes/wordcloud.html). – Henrik

ответ

1

По моему личному опыту за последние несколько часов это невозможно.
Я прочитал wordcloud package description и нет аргументов, которые вы можете установить, чтобы сделать wordcloud горизонтальным.

+1

Кажется, это невозможно. Я борется последние 2 недели без возможного решения – agustin