Как ИЗМЕНИТЬ цвет точки, положение и размер значения в функции plot_models - PullRequest
2 голосов
/ 23 марта 2020

Q1: функция plot_models. да, размер точки можно определить, но размер значения и положение не работают. value.size = не работает здесь. как это исправить? Q2: см. Рисунок ниже, цвет точек устанавливается автоматически, есть ли способ, которым я мог бы изменить цвет точки, так как желтый цвет очень плох для читателей.

вот синтаксис:

plot_models(myfit01, myfit03, myfit04, myfit05, myfit14, myfit19, myfit22,
transform="exp", legend.title = "Topics",axis.lim = c(0.1, 8), 
axis.labels = c("NBV", "BAS"),
m.labels = c("T01", "T03", "T04","T05", "T14", "T19","T22"),show.values = T, 
show.p = T, p.shape = TRUE, digits=4, 
p.threshold = c(0.05, 0.01, 0.001), 
vline.color = "#edd840",dot.size = 3, spacing=0.7, ci.lvl=0.95, grid=F)+
theme_bw()+theme( legend.title = element_text(color = "blue", size = 14),
legend.text = element_text(size = 12),axis.title.x = element_text(size = 14), 
axis.text.x = element_text(size=14), axis.text.y = element_text(size=16))+
ggtitle("szc")+
theme(plot.title = element_text(family="Georgia", colour="black", size=14))

by sjPlot

1 Ответ

0 голосов
/ 23 марта 2020

Вы меняете цвет, используя опцию "col =" и по размеру, я думаю, вы ссылаетесь на размер текста, для этого нет опций, вам нужно изменить значение по умолчанию для geom_text, к сожалению, см. Ниже :

Некоторые примеры данных:

library(ggplot2)
library(sjPlot)

data(efc)
fit1 <- lm(barthtot ~ c160age + c12hour + c161sex + c172code, data = efc)
fit2 <- lm(neg_c_7 ~ c160age + c12hour + c161sex + c172code, data = efc)
fit3 <- lm(tot_sc_e ~ c160age + c12hour + c161sex + c172code, data = efc)

Тогда:

GeomText$default_aes$size
[1] 3.88

Это размер по умолчанию для текста, вы go уменьшите размер. Вот так сначала выглядит график:

plot_models(fit1,fit2,fit3, 
axis.labels = c("Carer's Age", "Hours of Care"),
m.labels = c("Barthel Index", "Negative Impact", "Services used"),
show.values = TRUE, show.p = TRUE,
p.shape = TRUE, digits=4, 
p.threshold = c(0.05, 0.01, 0.001), 
vline.color = "#edd840",dot.size = 3, spacing=0.7, ci.lvl=0.95, grid=F,
colors = c("orange","salmon","cadetblue"))

enter image description here

Теперь мы изменим их:

GeomText$default_aes$size <- 2.5
plot_models(fit1,fit2,fit3, 
axis.labels = c("Carer's Age", "Hours of Care"),
m.labels = c("Barthel Index", "Negative Impact", "Services used"),
show.values = TRUE, show.p = TRUE,
p.shape = TRUE, digits=4, 
p.threshold = c(0.05, 0.01, 0.001), 
vline.color = "#edd840",dot.size = 3, spacing=0.7, ci.lvl=0.95, grid=F,
colors = "social")

enter image description here

Существует ряд цветовых палитр, которые вы можете выбрать:

show_sjplot_pals()

Или вы можете указать свои собственные цвета, такие как:

colors = c("grey","orange","red")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...