Ticket #5841: test.hs

File test.hs, 1014 bytes (added by carter, 2 years ago)

example chart code -- needs chart-gtk to run

Line 
1import Graphics.Rendering.Chart 
2import Graphics.Rendering.Chart.Gtk
3import Data.Colour.Names
4import Data.Colour
5import Data.Accessor
6       
7chart = layout
8  where
9    am :: Double -> Double
10    am x = (sin (x*3.14159/45) + 1) / 2 * (sin (x*3.14159/5))
11
12    sinusoid1 = plot_lines_values ^= [[ (x,(am x)) | x <- [0,(0.5)..400]]]
13              $ plot_lines_style   .> line_color ^=  opaque blue
14              $ plot_lines_title ^= "am"
15              $ defaultPlotLines
16
17    sinusoid2 = plot_points_style ^= filledCircles 2  (opaque red)
18              $ plot_points_values ^= [ (x,(am x)) | x <- [0,7..400]]
19              $ plot_points_title ^= "am points"
20              $ defaultPlotPoints
21
22    layout = layout1_title ^= "Amplitude Modulation"
23           $ layout1_plots ^= [Left (toPlot sinusoid1),
24                               Left (toPlot sinusoid2)]
25           $ defaultLayout1
26
27main = do
28    renderableToWindow (toRenderable chart) 640 480
29     --renderableToPDFFile (toRenderable chart) 640 480 "test.pdf"