aivika-experiment-diagrams 1.3.1 → 1.4
raw patch · 3 files changed
+62/−49 lines, 3 filesdep ~aivika-experimentdep ~aivika-experiment-chart
Dependency ranges changed: aivika-experiment, aivika-experiment-chart
Files
- Simulation/Aivika/Experiment/Chart/Backend/Diagrams.hs +55/−0
- Simulation/Aivika/Experiment/DiagramsRenderer.hs +0/−44
- aivika-experiment-diagrams.cabal +7/−5
+ Simulation/Aivika/Experiment/Chart/Backend/Diagrams.hs view
@@ -0,0 +1,55 @@++{-# LANGUAGE MultiParamTypeClasses #-}++-- |+-- Module : Simulation.Aivika.Experiment.Chart.Backend.Diagrams+-- Copyright : Copyright (c) 2012-2014, David Sorokin <david.sorokin@gmail.com>+-- License : BSD3+-- Maintainer : David Sorokin <david.sorokin@gmail.com>+-- Stability : experimental+-- Tested with: GHC 7.8.3+--+-- This module defines a renderer that uses the Chart-diagrams library+-- for rendering charts within simulation, i.e. without using Cairo,+-- which can be suitable for MS Windows.+--++module Simulation.Aivika.Experiment.Chart.Backend.Diagrams+ (DiagramsRenderer(..)) where++import System.FilePath+import Data.Map++import Graphics.Rendering.Chart+import Graphics.Rendering.Chart.Backend.Diagrams++import Simulation.Aivika.Experiment+import Simulation.Aivika.Experiment.Chart++-- | This renderer uses the Chart-diagrams library for rendering charts within simulation.+data DiagramsRenderer =+ DiagramsRenderer { rendererFileFormat :: FileFormat,+ -- ^ It returns the file format used for saving the image.+ rendererCustomFonts :: Map (String, FontSlant, FontWeight) FilePath+ -- ^ It contains the custom fonts.+ }++-- | The class of the Diagrams-based renderers is a sub-class of the charting renderers.+class WebPageCharting r => DiagramsRendering r++instance ExperimentRendering DiagramsRenderer WebPageWriter where++ renderExperiment e r = renderExperiment e WebPageRenderer++instance WebPageRendering DiagramsRenderer++instance WebPageCharting DiagramsRenderer where++ renderableChartExtension (DiagramsRenderer EPS _) = ".eps"+ renderableChartExtension (DiagramsRenderer SVG _) = ".svg"+ renderableChartExtension (DiagramsRenderer SVG_EMBEDDED _) = ".svg"+ + renderChart (DiagramsRenderer format fonts) (width, height) =+ renderableToFile (FileOptions (fromIntegral width, fromIntegral height) format fonts)++instance DiagramsRendering DiagramsRenderer
− Simulation/Aivika/Experiment/DiagramsRenderer.hs
@@ -1,44 +0,0 @@---- |--- Module : Simulation.Aivika.Experiment.DiagramsRenderer--- Copyright : Copyright (c) 2012-2014, David Sorokin <david.sorokin@gmail.com>--- License : BSD3--- Maintainer : David Sorokin <david.sorokin@gmail.com>--- Stability : experimental--- Tested with: GHC 7.6.3------ This module defines a renderer that uses the Chart-diagrams library--- for rendering charts with simulation results, i.e. without using Cairo,--- which can be suitable for MS Windows.-----module Simulation.Aivika.Experiment.DiagramsRenderer- (DiagramsRenderer(..)) where--import System.FilePath-import Data.Map--import Graphics.Rendering.Chart-import Graphics.Rendering.Chart.Backend.Diagrams--import Simulation.Aivika.Experiment-import Simulation.Aivika.Experiment.Chart---- | This renderer uses the Chart-diagrams library for rendering charts with simulation results.-data DiagramsRenderer =- DiagramsRenderer { rendererFileFormat :: FileFormat,- -- ^ It returns the file format used for saving the image.- rendererCustomFonts :: Map (String, FontSlant, FontWeight) FilePath- -- ^ It contains the custom fonts.- }--instance FileRenderer DiagramsRenderer--instance ChartRenderer DiagramsRenderer where-- renderableFileExtension (DiagramsRenderer EPS _) = ".eps"- renderableFileExtension (DiagramsRenderer SVG _) = ".svg"- renderableFileExtension (DiagramsRenderer SVG_EMBEDDED _) = ".svg"- - renderChart (DiagramsRenderer format fonts) (width, height) =- flip $ renderableToFile (FileOptions (fromIntegral width, fromIntegral height) format fonts)
aivika-experiment-diagrams.cabal view
@@ -1,5 +1,5 @@ name: aivika-experiment-diagrams-version: 1.3.1+version: 1.4 synopsis: Diagrams backend for the Aivika simulation library description: This package complements the Aivika and Aivika Experiment packages @@ -15,19 +15,21 @@ homepage: http://github.com/dsorokin/aivika-experiment-diagrams cabal-version: >= 1.6 build-type: Simple-tested-with: GHC == 7.6.3+tested-with: GHC == 7.8.3 library - exposed-modules: Simulation.Aivika.Experiment.DiagramsRenderer+ exposed-modules: Simulation.Aivika.Experiment.Chart.Backend.Diagrams build-depends: base >= 3 && < 6, containers >= 0.4.0.0, filepath >= 1.3.0.0, Chart >= 1.3.1, Chart-diagrams >= 1.3.1,- aivika-experiment >= 1.3,- aivika-experiment-chart >= 1.3+ aivika-experiment >= 1.4,+ aivika-experiment-chart >= 1.4++ extensions: MultiParamTypeClasses ghc-options: -O2