}      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~0 Safe-Inferred Safe-Inferred9The lines of the gnuplot script to be piped into gnuplot Options for gnuplot   Safe-InferredsEvery option represents an internal state in gnuplot. It is altered with gnuplot's set command. The first field in S is the name of the option and the name of the according internal state in gnuplot.{Sometimes the addressed state is not explicitly mentioned but is expressed by the syntax of the values. E.g. you can write set grid xtics and set grid noxticsV, but both commands refer to the same internal boolean variable, that we like to call xtics. It is important that the gnuplot Haskell bindings know that these two set commands refer to the same gnuplot state, since we want to simulate a stateless functional interface in front of a stateful imperative one.QIn case of a such a hidden state, we manage an identifier in the second field of ^. It is mainly used for distinguishing different hidden states, that are accessed by the same set variable. This second field may not contain valid gnuplot identifiers, however you might use the field for formatting boolean options using !.KConstructs a generic option from Strings for the first and second field of .oThis is very flexible, but not very safe. Use it only as fall-back, if there is no specific setter function in  Graphics.Gnuplot.Frame.OptionSet.1 1 0  Safe-Inferred  " Safe-Inferred Safe-Inferred    # Safe-Inferred ! !! Safe-Inferred!! Safe-Inferred"Use it this way: import Data.Time import Graphics.Gnuplot.Simple main = plotPath [XTime, XFormat "%m-%d"] $ prepXTime $ (UTCTime (fromGregorian 2008 01 01) 0, 1.0) : (UTCTime (fromGregorian 2008 01 05) 43200, 5.0) : (UTCTime (fromGregorian 2008 01 15) 0, 2.5) : []""""$ Safe-Inferred% Safe-Inferred#$#$#$& Safe-InferredThe default options contain what we expect as default value in gnuplot. We need an entry for every option that cannot be reset by unset.&4Add (set) an option with arguments as plain strings.oThis is very flexible, but not very safe. Use it only as fall-back, if there is no specific setter function in  Graphics.Gnuplot.Frame.OptionSet.'Remove (unset) an option.oThis is very flexible, but not very safe. Use it only as fall-back, if there is no specific setter function in  Graphics.Gnuplot.Frame.OptionSet.VConvert the difference between the first and the second option set into a sequence of set and unset commands.(#Set or unset option according to a 2. This is for switches that can be disabled using unset.oThis is very flexible, but not very safe. Use it only as fall-back, if there is no specific setter function in  Graphics.Gnuplot.Frame.OptionSet. See also: ), &, '.)8Add an option with boolean value that is formatted like set style fill border and set style fill noborder'. The name of the internal state (i.e. border3) must be stored in the second field of the option.oThis is very flexible, but not very safe. Use it only as fall-back, if there is no specific setter function in  Graphics.Gnuplot.Frame.OptionSet. See also (. %&'() %&'() %&'()' Safe-Inferred*** Safe-Inferred+<Color components for Red, Green, Blue, must be in the range [0,1]..Specify a color by name. You are responsible for choosing an existing name in gnuplot. If your color is available as Haskell variable in this module, then prefer this one.Y+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~X*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~X*+,.-/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Y+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~( Safe-Inferred Safe-Inferred  Safe-Inferred  Safe-InferredThe plot function returns m, which is nice for programming but ugly for interactive GHCi sessions. For interactive sessions, better use Graphics.Gnuplot.Simple. gfx must be one of the types Plot, Frame,  MultiPlot.This function runs gnuplot asynchronously for interactive terminals (X11, WX) and synchronously for file terminals (PostScript, PNG, etc.). This emulates the behaviour of gnuplot --persist=. However, when running asynchronous we cannot obtain a real +. Thus, in this case we will always return  ExitSuccess.Return the gnuplot script and the curve files corresponding to your plot data. The first parameter is the directory where the curve files are located. This directory is baked into the gnuplot script and the paths of the curve files.Don't make any assumptions about the structure of the files. Feeding the files to gnuplot, archiving them or study them are the intended uses of them.(Plot using the default gnuplot terminal.  Safe-InferredyEmbed a font file in the generated PostScript output. Each call adds a new font file, there is no way to remove it again.   Safe-Inferred       Safe-Inferred     Safe-Inferred  Safe-Inferred  Safe-Inferred !"#$%& !"#$%& Safe-Inferred Safe-Inferred>Count numbers of gnuplot data columns for the respective type.RSomehow a writer monad with respect to Sum monoid without material monadic result.Cf. ColumnSet module.+For values that are also in Atom class,  must generate a singleton list. It must hold ,ColumnCount (length (text x)) == columnCount.'()*+,-./0123456789:;'()*+,-./0123456789:;) Safe-Inferred <=>? <=>?<=>?* Safe-Inferred@AB@AB@AB+ Safe-InferredPlots can be assembled using C or mconcat or several functions from  Data.Foldable.DIn contrast to the Display.toScript method instantiation this function leaves the options, and thus can be used to write the Display.toScript instance for Frame.EFGHIJKLMNDOPQRSTUEFGHIJKLMNDOPQEFGHIJKLMNDOPQRSTU, Safe-InferredVWXYVWXVWXY- Safe-InferredZ[\Z[Z[\ Safe-Inferred Safe-Inferred Safe-Inferred]^_`abcd]^_`abcd. Safe-InferredeThe type parameter x" is for the values on the X axis, y of the Y axis and a+ is the type of the plotted data. The type ag is a pair in case of points in the plane, or a more complex tuple in case of error plots and the like.)efgh)efgh(efgh/ Safe-Inferredijklmnopqijklmnopq ijklmnopq0 Safe-Inferred?You can alter the line specification of graphs in a plot using r.stuvwxyz{|}~stuvwxyz{|} stuvwxyz{|}~ Safe-Inferred(( Safe-Inferred    1 Safe-Inferred            Safe-Inferred       Safe-Inferred /Set parameters of viewing a surface graph. See info:gnuplot/view!Show flat pixel map.(  rotateX rotateZ scale scaleZ !"#$%&'()*+,-./(%&'()  !"#$%&'()*+,-./(% &'()"#$%&'()*+,- !./(  !"#$%&'()*+,-./ Safe-Inferred012012012012 Safe-Inferred  Safe-Inferred3Plots can be assembled using mappend or mconcat or several functions from  Data.Foldable.3456#$34563456$#3456 Safe-Inferred7Plots can be assembled using mappend or mconcat4. You can alter attributes of embedded graphs using r.8 list Type.listLines (take 30 (let fibs = 0 : 1 : zipWith (+) fibs (tail fibs) in fibs)) list Type.lines (take 30 (let fibs0 = 0 : fibs1; fibs1 = 1 : zipWith (+) fibs0 fibs1 in zip fibs0 fibs1))9 2function Type.line (linearScale 1000 (-10,10)) sin: :functions Type.line (linearScale 1000 (-10,10)) [sin, cos]; RparameterFunction Type.line (linearScale 1000 (0,2*pi)) (\t -> (sin (2*t), cos t))789:;<= #$789:;<= 789:;<=$#789:;<= Safe-Inferred Safe-Inferred lBe careful with m- which can only be used as part of gnuplot's plot command but not as part of set . That is, >plotList [LineStyle 0 [LineTitle "foobar"]] [0,5..100::Double]6will leave you with an invalid gnuplot script, whereas `plotListStyle [] (defaultStyle {lineSpec = CustomStyle [LineTitle "foobar"]}) [0,5..100::Double]does what you want.The d types would be better enumerations but their interpretations depend on the gnuplot output type. :-(you cannot use this, call  instead)anything that is allowed after gnuplot's set command OplotList [] (take 30 (let fibs = 0 : 1 : zipWith (+) fibs (tail fibs) in fibs)) plotListStyle [] (defaultStyle{plotType = CandleSticks}) (Plot2D.functionToGraph (linearScale 32 (0,2*pi::Double)) (\t -> (-sin t, -2*sin t, 2*sin t, sin t))) +plotFunc [] (linearScale 1000 (-10,10)) sin 3plotFuncs [] (linearScale 1000 (-10,10)) [sin, cos] GplotParamFunc [] (linearScale 1000 (0,2*pi)) (\t -> (sin (2*t), cos t)) bplotParamFuncs [] (linearScale 1000 (0,2*pi)) [\t -> (sin (2*t), cos t), \t -> (cos t, sin (2*t))] nlet xs = [-2,-1.8..2::Double] in plotMesh3d [] [] (do x <- xs; return (do y <- xs; return (x,y,cos(x*x+y*y)))) let phis = linearScale 30 (-pi, pi :: Double) in plotMesh3d [] [] (do phi <- phis; return (do psi <- phis; let r = 5 + sin psi in return (r * cos phi, r * sin phi, cos psi))) Qlet xs = [-2,-1.8..2::Double] in plotFunc3d [] [] xs xs (\x y -> exp(-(x*x+y*y)))dRedirects the output of a plotting function to an EPS file and additionally converts it to PDF. Creates an EPS and a PDF graphics and returns a string that can be inserted into a LaTeX document to include this graphic.iDifferent from GHCi, Hugs doesn't output a return value from an IO monad. So you must wrap it with a o. Nevertheless this implementation which returns the LaTeX command as string is the most flexible one. x>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~7Drawing function that expects some gnuplot attributes. 7Drawing function that expects some gnuplot attributes. g$>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~gx~}|{zyuwvrtslqponmikjPhgfedcba`_^]\[ZYXWVUTSRQLMNO$IKJAHGFEDCB>@?/>@?AHGFEDCBIKJLMNOPhgfedcba`_^]\[ZYXWVUTSRQikjlqponmrtsuwvx~}|{zy 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M2NOPQ#RS%T%U&2&V&W&X&!'2YZ[O\]^_`abcdefghijklmnopqrstuvwxyz{|}~(R 2 2 2 2 2E2ER2NR)))))8*R+2,22E...................................../2/////// /E0 020   1 121 5E6<=>GHIF !BCD4"#$%&'(2)*+2,-./01234356789:;4<=>>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstubevwxyz{|}~' N              " # $    "R"Q############$$%%%%%%&&&N&&&'''z''''((2(N(((( N      }   N               N         N  NN)2)N))***+++++++N+++++++++++ ,N, ,,-2-N- N  .2.N../N////////000N00000000011N1111118111 !"#$%,&'()*+,-./01234567 gnuplot-0.5.4Graphics.Gnuplot.Frame.OptionGraphics.Gnuplot.FileGraphics.Gnuplot.DisplayGraphics.Gnuplot.Time&Graphics.Gnuplot.Plot.ThreeDimensional Graphics.Gnuplot.Frame.OptionSet#Graphics.Gnuplot.ColorSpecificationGraphics.Gnuplot.Terminal!Graphics.Gnuplot.Terminal.DefaultGraphics.Gnuplot.Advanced$Graphics.Gnuplot.Terminal.PostScriptGraphics.Gnuplot.Terminal.PNGGraphics.Gnuplot.Terminal.SVGGraphics.Gnuplot.Terminal.WXTGraphics.Gnuplot.Terminal.X11Graphics.Gnuplot.Value.Atom Graphics.Gnuplot.Value.ColumnSetGraphics.Gnuplot.Value.Tuple'Graphics.Gnuplot.Graph.ThreeDimensionalGraphics.Gnuplot.GraphGraphics.Gnuplot.PlotGraphics.Gnuplot.Frame&Graphics.Gnuplot.Frame.OptionSet.StyleGraphics.Gnuplot.MultiPlot%Graphics.Gnuplot.Graph.TwoDimensional"Graphics.Gnuplot.LineSpecification*Graphics.Gnuplot.Frame.OptionSet.Histogram$Graphics.Gnuplot.Plot.TwoDimensionalGraphics.Gnuplot.SimpleGraphics.Gnuplot.Private.OSGraphics.Gnuplot.Execute$Graphics.Gnuplot.Private.FrameOptionaddBoolGraphics.Gnuplot.Private.File Graphics.Gnuplot.Private.Display Graphics.Gnuplot.Private.CommandGraphics.Gnuplot.Utility'Graphics.Gnuplot.Private.FrameOptionSet+Graphics.Gnuplot.Private.ColorSpecification!Graphics.Gnuplot.Private.Terminal$Graphics.Gnuplot.Private.Graph3DTypeGraphics.Gnuplot.Private.GraphGraphics.Gnuplot.Private.PlotGraphics.Gnuplot.Private.Frame#Graphics.Gnuplot.Private.GraphEmpty$Graphics.Gnuplot.Private.Graph2DType*Graphics.Gnuplot.Private.LineSpecification Graphics.Gnuplot.Private.Graph2D Graphics.Gnuplot.Private.Graph3DTcustomgridsizekeyborderpm3dxRangeyRangezRangexLabelyLabelzLabelxTicksyTickszTicks xLogScale yLogScale zLogScaletitleviewxFormatyFormatzFormattimeFmtxDatayDatazDataConsnamecontentwriteC prepXTimefunctionToGraph linearScaleaddremovebooleanrgbrgb8 paletteFracwhiteblackgray0grey0gray10grey10gray20grey20gray30grey30gray40grey40gray50grey50gray60grey60gray70grey70gray80grey80gray90grey90gray100grey100graygrey lightGray lightGreydarkGraydarkGreyredlightReddarkRedyellow lightYellow darkYellowgreen lightGreen darkGreen springGreen forestGreenseaGreenblue lightBluedarkBlue midnightBluenavy mediumBlue royalblueskybluecyan lightCyandarkCyanmagenta lightMagenta darkMagenta turquoiselightTurquoise darkTurquoisepink lightPinkdarkPinkcoral lightCoral orangeRedsalmon lightSalmon darkSalmon aquamarinekhaki darkKhaki goldenrodlightGoldenrod darkGoldenrodgoldbeigebrownorange darkOrangeviolet darkVioletplumpurpleconsplot plotAsyncplotSync fileContents plotDefault landscapeportraitepscolor monochromefont embedFont transparent noTransparent interlace noInterlace trueColor noTrueColorfontTiny fontSmall fontMedium fontLarge fontGiantnoTitlepersist noPersistoptions OptionSetoptData optFormat optOthersatompairtriple quadruple ColumnCounttext columnCountlinespointsimpulsesvectors fillSolid fillBorderfillBorderLineTypePart partFromFrame partFromPlotsimpleFromFrameArraysimpleFromPartArray listLines listPointslistLinesPoints listImpulseslistDots histogramsxErrorBarsRelativeyErrorBarsRelativexyErrorBarsRelativexErrorBarsAbsoluteyErrorBarsAbsolutexyErrorBarsAbsolutexErrorLinesRelativeyErrorLinesRelativexyErrorLinesRelativexErrorLinesAbsoluteyErrorLinesAbsolutexyErrorLinesAbsolute linesPointsdotsstepsfStepshiSteps errorBars errorLinesboxes filledCurves financeBars candleSticksimage filledStripefilledStripeAbovefilledStripeBelowdeflt lineStylelineType lineWidth lineColor pointType pointSizeTypelineSpec clustered clusteredGap errorbars errorbarsGaperrorbarsGapLineWidth rowstacked columnstacked sizeRatio sizeSquare keyInside keyOutsidexRange2dyRange2dxRange3dyRange3dzRange3dviewMapxTicks2dyTicks2dxTicks3dyTicks3dzTicks3d gridXTicks gridYTicks gridZTicksboxwidthRelativeboxwidthAbsolutesimpleemptycloudmeshsurfacelistfunction functionsparameterFunction listFromFile pathFromFile Attribute3dCornersToColor Plot3dTypeCorner4Corner3Corner2Corner1Median GeometricMeanMeanColorMapSurface PlotStyleplotTypePlotTypePM3dVectors CandleSticks FinanceBarsBoxXYErrorBars BoxErrorBars FilledCurvesBoxes XYErrorLines YErrorLines XErrorLines ErrorLines XYErrorBars YErrorBars XErrorBars ErrorBarsHiStepsFStepsStepsDotsImpulses LinesPointsPointsLinesLineSpec CustomStyle DefaultStyleLineAttr LineTitle PointSize PointType LineWidthLineTypeAspectNoRatioRatioSizeSepScaleScale AttributeXFormatXTimeColorBoxPaletteZRangeYRangeXRangeZLabelYLabelXLabelTitle LineStyle BoxAspectYTicksXTicksBorderKeyGridTerminalPNGEPSCustom defaultStyleterminalplotList plotListStyle plotListsplotListsStyleplotFunc plotFuncsplotPath plotPaths plotPathStyleplotPathsStyle plotParamFuncplotParamFuncsplotDots plotMesh3d plotFunc3d epspdfPlotinclPlot gnuplotName tmpScript sizeScalekeyShow keyPosition xRangeBounds yRangeBounds zRangeBounds xLabelText yLabelText zLabelText xTickLabels yTickLabels zTickLabelsboxwidthstyleFillSolidstyleFillBorderstyleHistogram$fCTtoScriptBodyfilescommandsScript runScriptpure $fMonoidBody$fMonoidScriptrunasyncIfInteractive showTriplet commaConcatsemiColonConcatquote assembleCells formatBool diffToStringghc-prim GHC.TypesBooldeconsPlaininitial PaletteFracRGB8NametoStringword8FromDouble makeColor canonical interactiveformatbaseGHC.IO.ExceptionExitCodeplotCorerender _haddockDummyModePortrait Landscape filename_mode_color_ embedFont_font_ formatModesetModeFontSize FontGiant FontLarge FontMedium FontSmallFontTiny transparent_ interlace_ trueColor_ fontSize_formatFontSize setFontSizetitle_persist_ timeOptions $fCUTCTime$fCDay $fCWord64 $fCWord32 $fCWord16$fCWord8$fCInt64$fCInt32$fCInt16$fCInt8$fCRatio $fCInteger$fCInt $fCDouble$fCFloat<*> singleton$fC(,,,)$fC(,,)$fC(,) tupleSizecommand defltOptions Data.MonoidmappendFilecontent_graphs_withUniqueFile fromGraphs tmpFileStemoptionsToScript defltOptsplotCmd $fFunctorT$fCFile $fMonoidToptionscriptFromPartnumRows numColumnsparts lineStyle_ lineType_ lineWidth_ lineColor_ pointType_ pointSize_GHC.Basefmap AxisOptionColumnscolumn_type_ lineSpec_columnToStringtyprangeatomTextlabelticksfromFileInt System.IOputStr attrToProgxRangeFromAttryRangeFromAttrzRangeFromAttr extractRangesinteractiveTermplotTypeToGraphplot3dTypeToStringcornersToColorToStringattribute3dToStringplot2d setPlotStyleplot3dlineSpecRecordlineAttrRecord runGnuplotplotFileStatements