Построение прогрессивной двухточечной прогулки в R - PullRequest
0 голосов
/ 15 декабря 2018

Как я могу построить прогрессивную прогулку от точки к точке?

Позволяет иметь p1 = [1,0], p2 = [0,1], p3 = [1,1].Сначала график должен провести линию от p1 до p2, показывающую направление, подождать секунду, затем провести другую линию от p2 до p3, и она будет продолжаться, если у вас будет больше данных.

Размер графика должен быть сначала фиксированк (0,1) ^ 2.Правильный вывод должен выглядеть примерно так: Пример графика

На данный момент мой код такой:

plot(x,y,xlim=range(x), ylim=range(y), xlab="x", ylab="y", main="Filled Plane",pch=16)
#lines(x,y,xlim=range(x),ylim=(y),pch=16)
for(i in 1:20){
  arrows(x[i],y[i],x[i+1],y[i+1],length = 0.25, angle = 30, col = 1:3)
}

1 Ответ

0 голосов
/ 15 декабря 2018

Один из вариантов - использовать стрелки.Во-первых, вам нужно создать сюжет с данными, которые вы хотите.Затем вы можете рисовать линии, чтобы соединить ваши точки.Допустим, у вас есть случайные равномерные массивы x, y.Установите предел, чтобы решить, сколько точек вы хотите построить.Хотя я сразу расставил точки (иначе не смог бы правильно расположить сетку) Надеюсь, это поможет.

limit<- 50
x <- runif(limit)
y <- runif(limit)
plot(x,y, xlim=range(0,1), ylim=range(0,1),
    xlab="x", ylab="y", main = "Random Walk")
grid(nx = 10, ny = 10, col = "lightgray", lty = "dotted", 
    lwd = par("lwd"), equilogs = TRUE)
for(i in 1:limit){
  arrows(x[i],y[i],x[i+1],y[i+1], length = 0.1, angle = 20)
  Sys.sleep(0.5)
}
...