News archive

01/08/2022

SVGGraph 3.16

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_x and 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.

Double axes, axis padding and multiple Gantt entries

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_left, axis_pad_top, axis_pad_right and 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: axis_extend_left, axis_extend_top, axis_extend_right and axis_extend_bottom. In the example they are left at the default values, which extend the axis lines to fill in the gap between the axes.

Read more . . .

16/06/2022

SVGGraph 3.15

Version 3.14 added support for Gantt charts, but I didn't include all the features I had been meaning to add because I didn't want to delay the release while I added things that would be less useful. Version 3.15 adds in the things that I didn't get around to last time.

Gantt charts revisited

The example below is mostly the same as the last time, but with the addition of dependency lines. These link tasks, groups or milestones to display when previous tasks (or groups or milestones) must be completed or initiated before the current task can begin or complete.

A Gantt chart with dependencies

Setting up dependency lines is a little bit complicated and there are a few options for how they behave, so I've added a new page that covers them and a few of the other Gantt chart options here.

Read more . . .

18/05/2022

JPEG Saver 5.20

This new version of JPEG Saver doesn't add much, but it does complete my plan to add support for presets in all the places that it makes sense.

Item presets

This is it, the last preset thing that was missing, the ability to load and save preset lists of items. You could argue that style presets are missing too, but I didn't come here for an argument. In fact I would argue that style presets are also in this update, because each item preset also contains whatever styles are required to make it work.

I have included a few simple built-in presets for displaying clocks, borders, EXIF, IPTC and GPS data, but I couldn't think of anything else that would be really useful. Email me with suggestions if you want anything added in the next version.

Read more . . .

02/05/2022

SVGGraph 3.14

Gantt charts have been on the to-do list for a very long time, so when someone asked me about them recently I went through all the things I needed to get them working and realised I already had most of it. So here they are.

Gantt charts

These are a type of horizontal floating bar chart where the bars represent lengths of time. They are used for project management, showing how long various tasks are expected to take and how far they have progressed. Here is an example:

A Gantt chart

In this version I have support for task bars with internal percentage completion gauges, project group bars and milestones. Task dependencies are not supported in this version, but I expect to get around to implementing them before too long.

Read more . . .

11/03/2022

SVGGraph 3.13.1

This is just a quick update to SVGGraph, fixing a whole load of warning messages that appear when you use PHP 8.1 with SVGGraph. The warnings are almost all about things that will break in PHP 9 (whenever that is going to arrive) but that work fine at the moment.

Of course, the warning messages themselves break things quite horribly, so most of the changes in this version are adding short attributes that mean "I know this is going to break in PHP 9, I'll fix it then." The reason I didn't fix all of these things properly now is that it would require PHP 8.x - and I'd like to at least keep PHP 7.x supported for now.

The updated version is available from the downloads page or from GitHub, etc.

« Previous old newsNext old news »

This site uses cookies - details here.