Practical Gantt chart improvements

0 votes
asked Jun 7, 2020 in Wanted features by chillin (180 points)
edited Jun 9, 2020 by chillin

I would like to request the following Gantt chart improvements:

1. [X] starts after <x> weeks/months ....

Currently only *days* are supported which is clumsy if the rest of the chart is in weeks (months is not even supported yet)

2. Related improvement would be to let the dependency arc not start from the beginning of the parent but from the appropriate location vertically down from the parent. That's visually much cleaner.

3. Support new feature:

    [X] starts after <global_variable> weeks ....

Which enables parameterization of some activity (e.g. depending on the number of available resources)

4. Attach the milestone diamond with a dotted line (or user-definable line-type (or empty)) to its depending parent.

5. Provide facility to change the placement of the activity text, e.g. above the activity bar. (Is there an easy way to increase the margin between the text and the activity bar border?). Right now in many cases the text just crosses the bar boundary which is visually unattractive.

See an example of points 2 and 4: https://pasteboard.co/Jch8n1g.png

Current behavior is: http://www.plantuml.com/plantuml/png/XP71IiGm443l-OgvULAIsGfxalKi2y9wM_OmRATMhMd934Z_thJfb8BWNW9vUSaBp46KahvJL7LofOu17xmRqaVKiltkexRTw5vJ_ybNXTaNq9OXY4BVm956G8_UkVFRy-d5Nw0ZoKg07-Ql0iCASQPIC1gkjdHdz75BAwFxXQwv-oTO8clC45xiIVjugA2cKO0QvMJtxgGSMybatFydk_Fnb5ij3GF7B2duFpfEEiTwSl66kpFN7V8wp-GN

1 Answer

0 votes
answered Jun 8, 2020 by plantuml (294,960 points)

About point 1, this is a good idea.

So with last beta http://beta.plantuml.net/plantuml.jar you can now have :

@startgantt
[Prototype design] lasts 13 days
[Test prototype] lasts 4 days and 1 week
[Test prototype] starts 1 week and 2 days after [Prototype design]'s end
@endgantt

The big issue with month is duration. As you know, it can be 28, 29, 30 or 31 days. So sentence like "[foo] lasts 3 months" is somehow ambiguous. That's the point that prevents us from implementing month duration.

About point 3, you can use preprocessor, like in this example. You can do many (nasty) things thanks to the preprocessor.

About point 2 and 4, it would be nice if you could post a very simple example so that we better understand your need.

Thanks!

commented Jun 9, 2020 by chillin (180 points)
edited Jun 9, 2020 by chillin
Regarding "month", you have a point. Please ignore that part of the request. It's easy enough to describe every duration in weeks (which is also more common).

Thanks for the preprocessor hint. I had completely forgotten about it, but I think it should work.

Regarding points 2 and 4, I have created a visual example, and added a link in the request.

Also I've added a new request. ;)
...