Как увеличить размер текста в сюжете байесовской сети с помощью bnlearn в R

Я пытаюсь нарисовать Bsyesian Network в R с помощью bnlearn. Вот мой код R

library(bnlearn)
library(Rgraphviz)

first_variable <- rnorm(100)
second_variable <- rnorm(100)
third_variable <- rnorm(100)
v <- data.frame(first_variable,second_variable,third_variable)

b <- hc(v)
hlight <- list(nodes = nodes(b), arcs = arcs(b),col = "grey", textCol = "red")
pp <- graphviz.plot(b, highlight = hlight)

Приведенный выше код работает, но размер текста на графике намного меньше, чем я ожидал. Вот:

введите описание изображения здесь

Я думаю, это потому, что мои переменные имеют длинные имена. В моих реальных данных имена переменных еще длиннее. Вот график BN для моего реального набора данных:

введите описание изображения здесь

Есть ли способ увеличить размер текста в сюжете?

1 ответ

На это в основном ответили в посте здесь (хотя это был не только вопрос ОП).

Предлагаются два подхода к изменению размера текста в глобальном масштабе:

par(cex=0.05)
graphviz.plot(res, highlight = 
                list(nodes=nodes(res), fill="lightgreen", col="black"))

Но я не считаю, что это работает.

В качестве альтернативы (и это то, что я делал), чтобы изменить характеристики узла отдельно:

g <- Rgraphviz::layoutGraph(bnlearn::as.graphNEL(b))
graph::nodeRenderInfo(g) <- list(fontsize=20)
Rgraphviz::renderGraph(g)
Другие вопросы по тегам