FEATURES * square plot (tie x and y shapes) (lockAspectRatio) * tick values * ticks selectable inside/outside * better tick value formatting and selection algorithm -> add (tickpos),(labelpos,labelvalue) * logarithmic minor tick positions * columns * adjustable elements ((x,y) adjustments/offsets) * settable plot sizes (so we can have same plot areas with only bottom one with x axis) * Simple interface: nice bars, histograms (see next line) * 3d plots * recycle Cairo context between invocations of renderFigure * ticks separate x axis groups for bar plots (rather than centre) * alternating shaded/transparent by major tick BUGS * Log range crashing * no ticks for greyscale? * scale (log/linear) attached to range? * logarithmic tick label width adjustment? * should scale be in setRange*? * draw axes and ticks separately so we get nice joins (refactor) actually draw tick labels separately, but not an issue any more * tick lengths too small for large axis line width? * export Data.Colour.Names * use error series for min/max for ranges REFACTOR * using padding functions not raw data structure: pdFoo, pdBar * directly to impulse, step, area, not via line (performance) * refactor Legend (LegendLocation) * replace with utility functions common code in Render/Data.hs * check Render/Data.hs, Render/Axis.hs * rationalise passing of xscale/yscale * re-refactor renderSeries for slight optimisation * re-factor Axis.hs tickPositions and renderAxisTicks * MVar data series for continuous update * autorefresh (plot-gtk?) COMPLETE | * area | * impulses | * steps | * matrix (greyscale) | * legend | * pad side opposite of axis label only if there is no label on that side | * simple interface | * option to use upper ranges | * fix linewidths (as per cairo FAQ) by adding 0.5 to rectangle start / line (borders/axes) | * expand Simple interface: xlabel, ylabel, etc... | * bars | * histogram (variable width bars) | * Graphics.Plot replacement | * log/semilog plots | * candlestick | * axis and tick joins are ugly | * annotations | * move monotone increasing check to creation of dataseries | * formattable grid lines | * cairo in device coordinates not user to avoid tiny linewidths | * getOrdData only returns lower series in MinMax series | * Candle and Whisker plots use bad sizes (remove xscale/yscale) | * fix error bars for non-points (esp. bars, hist) | * 0 in log plots should be ignored | * candle and whisker use bad width for candle part | * text labels for major ticks | * fixed rendering TickValues | * log tick label values | * bars/columns adjust for multiple data series (data creation) | * configurable plot and figure background colour