From cb9f77d9db0d8e7d5717be2995030e6b360a5ea2 Mon Sep 17 00:00:00 2001 From: Jaron Kent-Dobias Date: Wed, 4 Sep 2019 21:02:12 -0400 Subject: small changes --- .gitignore | 1 + 02.05.hs | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 1433c41..f108245 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ *.hi *.o *.svg +*.eps [0-9][0-9].[0-9][0-9] diff --git a/02.05.hs b/02.05.hs index bad7367..d3be4ab 100644 --- a/02.05.hs +++ b/02.05.hs @@ -8,7 +8,7 @@ import Graphics.Rendering.Chart.Backend.Cairo import Data.Colour.Names import Diagrams.Prelude -import Diagrams.Backend.SVG.CmdLine +import Diagrams.Backend.Postscript randomWalk :: (RandomGen g) => Int -> Int -> State g [[Double]] randomWalk d n = get >>= (\g -> let (g1, g2) = split g in (put g1) >> (return $ take n $ scanl (\x y -> map (uncurry (+)) $ zip x y) (replicate d 0.0) $ chunksOf d $ randomRs (-0.5,0.5) g2)) @@ -21,10 +21,10 @@ main = do let (w10, g2) = runState (randomWalk 2 10) g let (w1000, g3) = runState (randomWalk 2 1000) g2 let (w100000, g4) = runState (randomWalk 2 100000) g3 --- mainWith $ foldr1 Diagrams.Prelude.atop [lc red $ drawWalk w10, lc blue $ drawWalk w1000, lc green $ drawWalk w100000] + renderDia Postscript (PostscriptOptions "02.05.01.eps" (dims2D 500 500) EPS) $ foldr1 Diagrams.Prelude.atop [lc red $ drawWalk w10, lc blue $ drawWalk w1000, lc green $ drawWalk w100000] let (e1, g5) = runState (sequence $ replicate 10000 $ randomWalk 2 2) g4 let (e10, g6) = runState (sequence $ replicate 10000 $ randomWalk 2 11) g5 - mainWith $ foldr1 Diagrams.Prelude.atop [mconcat $ map (place (lw Diagrams.Prelude.none $ fc yellow $ ((circle 0.01) :: Diagram B))) (map (\[x, y] -> p2 (x, y)) (map last e1)), mconcat $ map (place (lw Diagrams.Prelude.none $ fc black $ circle 0.01)) (map (\[x, y] -> p2 (x, y)) (map last e10))] + renderDia Postscript (PostscriptOptions "02.05.02.eps" (dims2D 500 500) EPS) $ foldr1 Diagrams.Prelude.atop [mconcat $ map (place (lw Diagrams.Prelude.none $ fc yellow $ ((circle 0.01) :: Diagram B))) (map (\[x, y] -> p2 (x, y)) (map last e1)), mconcat $ map (place (lw Diagrams.Prelude.none $ fc black $ circle 0.01)) (map (\[x, y] -> p2 (x, y)) (map last e10))] -- cgit v1.2.3-54-g00ecf