Итак, я написал программу R, где я смоделирую и визуализирую образец из стандартной коалесценционной модели.Как выделить путь ggplot2 в R?
library(ggplot2)
library(grid)
N <- 10
K <- 20
x <- matrix(0,N,K)
x
for(i in 2:K){
x[,i] <- sort(sample(N,N,replace = T))
}
f_grid <- expand.grid(x = 1:N, y = 1:K)
df_arrow <- expand.grid(x2 = 1:N, y2 = 2:K, yend = 0, xend = 0)
for(i in 1:nrow(df_arrow)){
df_arrow[i,]$xend <- x[df_arrow[i,]$x2, df_arrow[i,]$y2]
df_arrow[i,]$yend <- df_arrow[i,]$y2 - 1
}
ggplot(df_grid, aes(x = x, y = y)) + geom_point() +
geom_segment(data = df_arrow, aes(x = x2, y = y2, xend = xend, yend = yend))
Как я могу выделить путь случайного человека от самого молодого поколения до самого старого поколения. Генерация на вершине участка - самое молодое поколение.
Спасибо! Я буду играть с вашим кодом :) Еще один вопрос, если я хочу выделить более одного человека, что я могу сделать? – Zew
Ну, это зависит от того, хотите ли вы иметь разные цвета или нет. Если вы хотите, чтобы у них были разные цвета, вам нужны разные значения для цвета, поэтому замените значения TRUE (кроме 'end <- TRUE') на' id'. Если нет, вам ничего не нужно менять. В обоих случаях вы можете запускать код с идентификатора «id <- 200» с новым идентификатором каждый раз и перерисовывать график для начала, но вы должны фактически создать функцию и выполнить итерацию всех лиц, которых вы хотите отслеживать. – Tutuchan
Хорошо, я попробую. Спасибо за помощь :) – Zew