Each axis should be independent of the others. Is that possible with TAChart?
Yes, but slightly more complicated. See attached fixes to your demo
and
http://wiki.lazarus.freepascal.org/TAChart_documentation#Auto-scaling_transformationBasically, all axis ranges are projected onto a common graph space.
Their graph coordinates are determined by the transformations.
Chart extent is then calculated as the common
bounding box for all axises and series.
Thus, to create "independently scaled" axises a transformation is required
that would project any range of actual values into a fixed interval.
Such transformation exists and is named "AutoScaleTransform".
As usual, additional complexity is (hopefully) payed off by additional
power: in this case, you can control the interplay between
automatic scaling and other transformations (logarithm in your example).
Additionally, by changing MinValue and MaxValue property of
AutoScaleTransform, you can control the location of your auto-scaled series
inside the chart, and create different kinds of "paned" or
"oscilloscope-like" views.
See "Group flow and power" checkbox in the attached demo.
Note that axis grouping is used to support this feature (Axis.Group property).
While demonstrating it, I have found a bug/missing feature in axis grouping --
it blindly overlaps axis titles. I'll think what to do about this.
Also note that while all this features are included in axis/axistransf demoes,
your demo is less abstract, and so easier understandable.
I shall think about incorporating it.
Is there a way to increase the spacing between the title of one axis and the vertical line and tick marks of the next axis?
Another missing feature. I will fix that in a few days.