paarid=sapply(1:15, function(nr){ a=runif(1, 1, 100) b=100-a c(a, b) }) isikX=0 isikY=0 loigupikkus=100 pilt=ggplot()+coord_equal() for(i in 1:10){ nurk=runif(1, 0, 2*pi) dx=loigupikkus*cos(nurk) dy=loigupikkus*sin(nurk) uusX=isikX+dx uusY=isikY+dy print(paste(isikX, isikY, uusX, uusY)) tabel=tibble(a=isikX, b=isikY, c=uusX, d=uusY) pilt=pilt+geom_segment(data=tabel, aes(x=a, y=b, xend=c, yend=d)) isikX=uusX isikY=uusY } print(pilt) loikudearv=10 loigupikkus=100 nurgad=runif(loikudearv, 0, 2*pi) dxd=loigupikkus*cos(nurgad) dyd=loigupikkus*sin(nurgad) xd=c(0, cumsum(dxd)) yd=c(0, cumsum(dyd)) tibble(xd, yd) %>% ggplot(aes(xd, yd)) + geom_path() + coord_equal() loikudearv=10 loigupikkus=100 pilt=ggplot() + coord_equal() + xlim(-600, 600) + ylim(-600, 600) saveGIF({ print(pilt) for(nr in 1:8){ nurgad=runif(loikudearv, 0, 2*pi) dxd=loigupikkus*cos(nurgad) dyd=loigupikkus*sin(nurgad) xd=c(0, cumsum(dxd)) yd=c(0, cumsum(dyd)) pilt=pilt+ geom_path(aes(x=xd, y=yd), data=tibble(xd, yd)) print(pilt) } }) loikudearv=10 loigupikkus=100 pilt=ggplot() + coord_equal() + xlim(-600, 600) + ylim(-600, 600) saveGIF({ for(nr in 1:4){ nurgad=runif(loikudearv, 0, 2*pi) dxd=loigupikkus*cos(nurgad) dyd=loigupikkus*sin(nurgad) xd=c(0, cumsum(dxd)) yd=c(0, cumsum(dyd)) for(nr2 in 1:loikudearv){ tabel=tibble(a=xd[nr2], b=yd[nr2], c=xd[nr2+1], d=yd[nr2+1]) pilt=pilt+geom_segment(data=tabel, aes(x=a, y=b, xend=c, yend=d)) print(pilt) } pilt=pilt+ geom_path(aes(x=xd, y=yd), data=tibble(xd, yd), color="gray") print(pilt) } }, interval=0.1) if(4>3){ print("suurem") } loikudearv=5 loigupikkus=100 pilt=ggplot() + coord_equal() + xlim(-600, 600) + ylim(-600, 600) saveGIF({ for(nr in 1:2){ nurgad=runif(loikudearv, 0, 2*pi) dxd=loigupikkus*cos(nurgad) dyd=loigupikkus*sin(nurgad) xd=c(0, cumsum(dxd)) yd=c(0, cumsum(dyd)) pilt=remove_geom(pilt, "GeomText") pilt=pilt+annotate("text", x=-500, y=500, label=nr) for(nr2 in 1:loikudearv){ pilt=pilt+annotate("segment", x=xd[nr2], y=yd[nr2], xend=xd[nr2+1], yend=yd[nr2+1]) print(pilt) } pilt=pilt+ geom_path(aes(x=xd, y=yd), data=tibble(xd, yd), color="gray") print(pilt) } }, interval=1) remove_geom <- function(ggplot2_object, geom_type) { # Delete layers that match the requested type. layers <- lapply(ggplot2_object$layers, function(x) { if (class(x$geom)[1] == geom_type) { NULL } else { x } }) # Delete the unwanted layers. layers <- layers[!sapply(layers, is.null)] ggplot2_object$layers <- layers ggplot2_object } loikudearv=5 loigupikkus=100 teeY=90 mituEkslejatTeeni=0 pilt=ggplot() + coord_equal() + xlim(-600, 600) + ylim(-600, 600) + geom_hline(yintercept=teeY) saveGIF({ for(nr in 1:4){ nurgad=runif(loikudearv, 0, 2*pi) dxd=loigupikkus*cos(nurgad) dyd=loigupikkus*sin(nurgad) xd=c(0, cumsum(dxd)) yd=c(0, cumsum(dyd)) pilt=remove_geom(pilt, "GeomText") pilt=pilt+annotate("text", x=-500, y=500, label=nr) pilt=pilt+annotate("text", x=-500, y=450, label=mituEkslejatTeeni) eksleb=TRUE for(nr2 in 1:loikudearv){ pilt=pilt+annotate("segment", x=xd[nr2], y=yd[nr2], xend=xd[nr2+1], yend=yd[nr2+1]) if(eksleb){ print(pilt) if(yd[nr2+1]>teeY){ eksleb=FALSE mituEkslejatTeeni=mituEkslejatTeeni+1 } } } pilt=pilt+ geom_path(aes(x=xd, y=yd), data=tibble(xd, yd), color="gray") print(pilt) } }, interval=1)