Tim Docker
Tim Docker
Without code changes you have two alternatives: - You can plot items of type `PlotAnnotation` to position text in viewport coordinates. However, you'll want to fix the axis ranges, otherwise...
Any suggestions as to what the default behaviour could be to avoid this? ie how much padding would be added? presumably you'd want it on the y axis as well?
It has always been intended that the axes start and end on marked values. As per your examples I can see that this can have unintended consequences, but assumed that...
You can take complete control of the axis, explicitly specifying the viewport and markings. eg a custom y axis: ``` import Control.Lens import Graphics.Rendering.Chart.Easy import Graphics.Rendering.Chart.Backend.Cairo values :: [[(Double,Double)]] values...
I'm still open to the idea of adding padding by default.
I've pushed a fix to avoid the freeze in this commit: https://github.com/timbod7/haskell-chart/commit/f27955b11fbdb68c8b56984a67c1eee933f0edc9 The issue is that this expression: ``` 10 ^^ ((floor $ log10 $ delta / nsteps)::Integer ``` will...
This doesn't guarantee you'll get sensible charts with tiny values - your patch may still be necessary for this. Test it and if it is necessary, I will merge.
Those values are _very_ small :-) I think the issue is in the `scaledAxis` function. In particular the logic that searches for a nice axis scale loops forever if the...
Have you looked at [`LegendOrientation`](https://hackage.haskell.org/package/Chart-1.7.1/docs/Graphics-Rendering-Chart-Legend.html#t:LegendOrientation) ?
The [legend layout code](https://github.com/timbod7/haskell-chart/blob/master/chart/Graphics/Rendering/Chart/Legend.hs#L68) is currently simple, and doesn't take into account the size of the text. There is no reason it couldn't do so, however. Do you want to...