Имея такой код: Имея следующие команды:
library(stm)
gadarian <- gadarian
K<-c(5,10,15)
temp<-textProcessor(documents=gadarian$open.ended.response,metadata=gadarian)
out <- prepDocuments(temp$documents, temp$vocab, temp$meta)
documents <- out$documents
vocab <- out$vocab
meta <- out$meta
set.seed(02138)
K<-c(5,10,15)
df1 <- searchK(documents, vocab, K, prevalence=~treatment + s(pid_rep), data=meta)
df2 <- searchK(documents, vocab, K, prevalence=~treatment + s(pid_rep), data=meta)
Мы можем построить результаты для df1:
plot(df1$results$K, df1$results$heldout, type = "p", main = "Held-Out Likelihood",
xlab = "Number of Topics (K)", ylab = "Held-Out Likelihood", ask = TRUE)
lines(df1$results$K, df1$results$heldout, lty = 1, col = 1)
и для df2, используя это:
plot(df2$results$K, df2$results$heldout, type = "p", main = "Held-Out Likelihood",
xlab = "Number of Topics (K)", ylab = "Held-Out Likelihood", ask = TRUE)
lines(df2$results$K, df2$results$heldout, lty = 1, col = 1)
Как можно объединить эти два графика в один, имеющий разные цвета для каждой линии, и добавить прямоугольник в правом верхнем углу графика, который будет иметь цветную линию и рядом с ней метки likehood_score_df1 и likehood_score_df2?