Version 3.16 of SVGGraph continues my quest to produce a fully-featured Gantt chart class. I think I have all the important stuff done now, but please feel free to point out whatever is still missing.
Gantt charts (once more, with feeling)
The example below shows all the major changes in this version.
Probably the most obvious is that there are axes all the way around the
chart. This is enabled with the new
axis_double_y options, which duplicate the main
X or Y axis on the other side of the graph. These options should work
for all axis-based graph types, not just Gantt charts.
If you've read the caption, you'll see that there is axis padding now. Or maybe
you noticed the gap - in any case, there are now options for adding space
between the axis and the grid area,
axis_pad_bottom. Because these options move the grid and axis
apart there are also new options for what to do at the end of the axis:
In the example they are left at the default values, which extend the axis lines
to fill in the gap between the axes.
The other change visible in the example is only related to Gantt charts, and it means that multiple task bars or milestones can now be drawn on the same row. To do that you must use multiple datasets - as many datasets as there are milestones and task bars on a single row. SVGGraph will not check if any of them coincide, so you can have overlapping bars or milestones on top of bars if you like. You can have bars on top of milestones too, though I'm not sure if that is very useful.
What you still can't do is have multiple group bars on a row. I thought about it, and I'm not sure it actually makes sense. If you have a compelling argument otherwise, get in touch and I'll see what I can do.
There isn't much else in this version, but I have fixed one bug. Axes using multiple levels on the right side of horizontal graphs were not working properly. A bit obscure, but it's fixed now.
Come and get it
The new version of SVGGraph is available from the downloads page, or from GitHub / Packagist with Composer.