Диаграмма Ганта

Позволяет создавать диаграммы Ганта используя очень простые предложения (подлежащее - глагол - дополнение) на естественном английском языке.

Примечание: Для того, чтобы календарь выводился на русском языке, необходимо в начале описания диаграммы вставить команду: language ru, как на примере из следущей главы.

Здесь можно ознакомиться с полезными дополнениями, которые можно использовать в любой из поддерживаемых диаграмм:

Объявление задач

Задачи задаются при помощи квадратных скобочек [ имя задачи ].

Длительность

Длительность задач определяются при помощи английского прилагательного слова lasts (длится):

🎉 Copied!
@startgantt
language ru
[Разработка прототипа] lasts 15 days
[Тест прототипа] lasts 10 days
-- Остальные примеры --
[Задача 1 (1 день)] lasts 1 day
[T2 (5 дней)] lasts 5 days
[T3 (1 неделя)] lasts 1 week
[T4 (1 неделя и 4 дня)] lasts 1 week and 4 days
[T5 (2 недели)] lasts 2 weeks
@endgantt

Неделя засчитывается по количеству рабочих дней в ней. Таким образом, если вы укажете субботу и воскресенье как выходные, то неделя будет эквивалентна 5 дням.

Начало

Начало задач определяются при помощи английского прилагательного слова starts (начинается):

🎉 Copied!
@startgantt

language ru

[Разработка прототипа] lasts 15 days
[Тест прототипа] lasts 10 days

Project starts 2020-07-01
[Разработка прототипа] starts 2020-07-01
[Тест прототипа] starts 2020-07-16
@endgantt

Конец

Конец задач определяется при помощи английского прилагательного слова ends (заканчивается):

🎉 Copied!
@startgantt

language ru

[Разработка прототипа] lasts 15 days
[Тест прототипа] lasts 10 days

Project starts 2020-07-01
[Разработка прототипа] ends 2020-07-15
[Тест прототипа] ends 2020-07-25

@endgantt

Начало/Конец

Можно жестко задать даты начала и конца для задач:

🎉 Copied!
@startgantt

language ru

Project starts 2020-07-01
[Разработка прототипа] starts 2020-07-01
[Тест прототипа] starts 2020-07-16
[Разработка прототипа] ends 2020-07-15
[Тест прототипа] ends 2020-07-25

@endgantt

Определение даты начала и конца задачи в одной линии

Можно в одной строчке сразу указать даты начала и конца задачи при помощи объединяющего слова and (и).

🎉 Copied!
@startgantt
language ru
Project starts 2020-07-01
[Разработка прототипа] starts 2020-07-01 and ends 2020-07-15
[Тест прототипа] starts 2020-07-16 and lasts 10 days
@endgantt

Добавление зависимостей

Можно установить зависимость одной задачи от другой.

🎉 Copied!
@startgantt
[Разработка прототипа] lasts 15 days
[Тестирование прототипа] lasts 15 days
[Тестирование прототипа] starts at [Разработка прототипа]'s end
@endgantt

🎉 Copied!
@startgantt
[Разработка прототипа] lasts 10 days
[Кодирование прототипа] lasts 15 days
[Написание тестов] lasts 10 days
[Кодирование прототипа] starts at [Разработка прототипа]'s end
[Написание тестов] starts at [Кодирование прототипа]'s start
@endgantt

Короткие имена

Можно определить дополнительное короткое имя для задачи, чтобы затем ссылаться на задачу по этому короткому имени. Для этого нужно использовать ключевое слово as. Короткие имена также могут быть написаны на русском.

🎉 Copied!
@startgantt
[Разработка прототипа] as [РП] lasts 15 days
[Тест прототипа] as [Т] lasts 10 days
[Т] starts at [РП]'s end
@endgantt

Изменение цветов

Можно задавать различные цвета для задач используя ключевую фразу is colored in.

🎉 Copied!
@startgantt
[Разработка прототипа] lasts 10 days
[Тест прототипа] lasts 7 days
[Тест прототипа] starts at [Разработка прототипа]'s end
[Разработка прототипа] is colored in Fuchsia/FireBrick
[Тест прототипа] is colored in GreenYellow/Green
@endgantt

Процент выполнения

Можно задать статус выполнения задачи в процентах. Для этого нужно использовать конструкцию is значение% completed (выполнено на значение%). Это можно сделать как в отдельной строке, так и сразу вместе с остальными определениями используя ключевое слово and (и).

🎉 Copied!
@startgantt
[foo] lasts 21 days
[foo] is 40% completed
[bar] lasts 30 days and is 10% complete
@endgantt

Этапы

Можно определять этапы используя английское прилагательное слово happen (случаться).

Этап, привязанный к завершению опредленной задачи

🎉 Copied!
@startgantt
[Тест прототипа] lasts 10 days
[Прототип готов] happens at [Тест прототипа]'s end
[Настройка сборочной линии] lasts 12 days
[Настройка сборочной линии] starts at [Тест прототипа]'s end
@endgantt

Этап, привязанный к определенной дате

🎉 Copied!
@startgantt
language ru
Project starts 2020-07-01
[Тест прототипа] lasts 10 days
[Прототип готов] happens 2020-07-10
[Настройка сборочной линии] lasts 12 days
[Настройка сборочной линии] starts at [Тест прототипа]'s end
@endgantt

Этап, привязанный к завершению нескольких задач

🎉 Copied!
@startgantt
[Задача1] lasts 4 days
then [Задача1.1] lasts 5 days
[Задача1.2] starts at [Задача1]'s end and lasts 7 days

[Задача2] lasts 5 days
then [Задача2.1] lasts 5 days

[Всё выполнено] happens at [Задача1.1]'s end
[Всё выполнено] happens at [Задача1.2]'s end
[Всё выполнено] happens at [Задача2.1]'s end

@endgantt

[Ref. QA-10764]

Гиперссылки

К задаче можно добавить гиперссылку на определенный web адрес при помощи двойных вадратных скобочек [[ ссылка ]].

🎉 Copied!
@startgantt
[Задача1] lasts 10 days
[Задача1] links to [[http://plantuml.com]]
@endgantt

Календарь

Можно определить начальную дату для всей диаграммы. Тогда по умолчанию первая задача будет начинаться с этой даты.

🎉 Copied!
@startgantt
language ru
Project starts the 20th of september 2017
[Разработка прототипа] as [TASK1] lasts 13 days
[TASK1] is colored in Lavender/LightBlue
@endgantt

Coloring days

Можно задать свой цвет для определенных дней. Это делается при помощи конструкций:
  • ДАТА is colored in ЦВЕТ для какой-то конкретной даты.
или
  • ДатаНачала to ДатаКонца are colored in ЦВЕТ для диапазона дат.

🎉 Copied!
@startgantt
Project starts the 2020/09/01 
language ru

2020/09/07 is colored in salmon
2020/09/13 to 2020/09/16 are colored in lightblue

[Разработка прототипа] as [TASK1] lasts 22 days
[TASK1] is colored in Lavender/LightBlue
[Прототип готов] happens at [TASK1]'s end
@endgantt

Установка детализации диаграммы

Можно изменить детализацию (разрешение) для очень больших диаграмм, при помощи использования либого из трех ключевых слов (их действие идентичны):
  • printscale
  • ganttscale
  • projectscale
указав после такого слова один из пяти параметров:
  • daily (по дням) (по умолчанию)
  • weekly (по неделям)
  • monthly (по месяцам)
  • quarterly (по кварталам)
  • yearly (по годам)

(See QA-11272, QA-9041 and QA-10948)

Daily (по дням) (по умолчанию)

🎉 Copied!
@startuml
language ru

' указываем, что суббота выходной
saturday are closed
' указываем, что воскресенье тоже выходной
sunday are closed

Project starts the 1st of january 2021
[Разработка прототипа] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Тестирование] lasts 14 days
[TASK1]->[Тестирование]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Weekly (по неделям)

🎉 Copied!
@startuml
language ru

printscale weekly
' указываем, что суббота выходной
saturday are closed
' указываем, что воскресенье тоже выходной
sunday are closed

Project starts the 1st of september 2020
[Разработка прототипа] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Тестирование] lasts 20 days
[TASK1]->[Тестирование]

2021-01-20 to 2021-01-30 are named [Приёмка]
2021-01-20 to 2021-01-30 are colored in salmon 
@enduml

Monthly (по месяцам)

🎉 Copied!
@startgantt
language ru

projectscale monthly
Project starts the 20th of september 2020
[Разработка прототипа] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Тестирование] lasts 20 days
[TASK1]->[Тестирование]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

Quarterly (по кварталам)

🎉 Copied!
@startgantt
projectscale quarterly
Project starts the 1st of october 2020
[Разработка прототипа] as [TASK1] lasts 700 days
[TASK1] is colored in Lavender/LightBlue
[Тестирование] lasts 300 days
[TASK1]->[Тестирование]

2022-01-18 to 2022-03-22 are colored in salmon 
@endgantt

Yearly (по годам)

🎉 Copied!
@startgantt
language ru

projectscale yearly
Project starts the 1st of october 2020
[Разработка прототипа] as [TASK1] lasts 700 days
[TASK1] is colored in Lavender/LightBlue
[Тестирование] lasts 300 days
[TASK1]->[Тестирование]

2022-01-18 to 2022-03-22 are colored in salmon 
@endgantt

Увеличение (примеры для всех вариантов детализации)

Чтобы исопльзовать увеличение, нужно указать ключевое слово zoom с параметром множителем в дополнение к ключевому слову printscale:
  • printscale типДетализации zoom <число>

Увеличение для детализации по неделям

Без увеличения

🎉 Copied!
@startuml
language ru
printscale daily
saturday are closed
sunday are closed

Project starts the 1st of january 2021
[Разработка прототипа] as [TASK1] lasts 8 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 3 days
[TASK1]->[Тесты]

2021-01-08 to 2021-01-12 are named [Приёмка]
2021-01-08 to 2021-01-12 are colored in salmon 
@enduml

С увеличением

🎉 Copied!
@startuml
language ru
printscale daily zoom 2
saturday are closed
sunday are closed

Project starts the 1st of january 2021
[Разработка прототипа] as [TASK1] lasts 8 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 3 days
[TASK1]->[Тесты]

2021-01-08 to 2021-01-12 are named [Приёмка]
2021-01-08 to 2021-01-12 are colored in salmon 
@enduml

[Ref. QA-13725]

Увеличение для детализации по неделям

Без увеличения

🎉 Copied!
@startuml
language ru
printscale weekly
saturday are closed
sunday are closed

Project starts the 1st of january 2021
[Разработка прототипа] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 14 days
[TASK1]->[Тесты]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

С увеличением

🎉 Copied!
@startuml
language ru
printscale weekly zoom 4
saturday are closed
sunday are closed

Project starts the 1st of january 2021
[Разработка прототипа] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 14 days
[TASK1]->[Тесты]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Увеличение для детализации по месяцам

Без увеличения

🎉 Copied!
@startgantt
language ru
projectscale monthly
Project starts the 20th of september 2020
[Разработка прототипа] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 20 days
[TASK1]->[Тесты]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

С увеличением

🎉 Copied!
@startgantt
language ru
projectscale monthly zoom 3
Project starts the 20th of september 2020
[Разработка прототипа] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 20 days
[TASK1]->[Тесты]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

Увеличение для детализации по кварталам

Без увеличения

🎉 Copied!
@startgantt
language ru
projectscale quarterly
Project starts the 20th of september 2020
[Разработка прототипа] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 20 days
[TASK1]->[Тесты]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

С увеличением

🎉 Copied!
@startgantt
language ru
projectscale quarterly zoom 7
Project starts the 20th of september 2020
[Разработка прототипа] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 20 days
[TASK1]->[Тесты]

2021-01-18 to 2021-01-22 are named [Приёмка]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

Увеличение для детализации по годам

Без увеличения

🎉 Copied!
@startgantt
language ru
projectscale yearly
Project starts the 1st of october 2020
[Разработка прототипа] as [TASK1] lasts 700 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 200 days
[TASK1]->[Тесты]

2021-01-18 to 2021-03-22 are colored in salmon 
@endgantt

С увеличением

🎉 Copied!
@startgantt
language ru
projectscale yearly zoom 2
Project starts the 1st of october 2020
[Разработка прототипа] as [TASK1] lasts 700 days
[TASK1] is colored in Lavender/LightBlue
[Тесты] lasts 200 days
[TASK1]->[Тесты]

2021-01-18 to 2021-03-22 are colored in salmon 
@endgantt

Выходные дни

Можно обозначить некоторые дни как выходные.

🎉 Copied!
@startgantt
language ru
project starts the 2018.04.09

'указываем что суббота - выходной
saturday are closed
'указываем, что воскресенье - выходной
sunday are closed
'указываем, что дата 2018.05.01 выходной день
2018.05.01 is closed
'указываем, что все дни с 2018.04.17 по 2018.04.19 являются выходными днями
2018.04.17 to 2018.04.19 is closed

[Разработка прототипа] lasts 14 days
[Тестирование] lasts 5 days
[Тестирование] starts at [Разработка прототипа]'s end
[Разработка прототипа] is colored in Fuchsia/FireBrick
[Тестирование] is colored in GreenYellow/Green
@endgantt

Можно обратно некоторые дни специально указыать как рабочие.

🎉 Copied!
@startgantt
language ru

'указываем, что все дни с 2020.07.07 по 2020.07.17 являются выходными днями
2020-07-07 to 2020-07-17 is closed
'указываем, что один из этих дней является рабочим
2020-07-13 is open

Project starts the 2020-07-01
[Разработка прототипа] lasts 10 days
Then [Тестирование] lasts 10 days
@endgantt

Зависимость размера недели от количества выходных дней в ней

Неделя обозначается ключевым словом week и засчитывается по количеству рабочих дней в ней. По умолчанию в неделе нет выходных дней, поэтому 1 неделя ровняется 7 дням:

🎉 Copied!
@startgantt
language ru
Project starts 2021-03-29
[Ревью1] happens at 2021-03-29
[Ревью2 - 3 недели] happens on 3 weeks after [Ревью1]'s end
[Ревью2 - 21 день] happens on 21 days after [Ревью1]'s end
@endgantt

Если указать при помощи конструкции деньНедели are closed субботу и воскресенье выходными днями, тогда размер 1 недели станет ровняться 5 дням:

🎉 Copied!
@startgantt
language ru
Project starts 2021-03-29
saturday are closed
sunday are closed
[Ревью1] happens at 2021-03-29
[Ревью2 - 3 недели] happens on 3 weeks after [Ревью1]'s end
[Ревью2 - 21 день] happens on 21 days after [Ревью1]'s end
@endgantt

[Ref. QA-13434]

Упрощенный синтаксис для упорядочивания задач

Ключевое слово then можно использовать для обозначения следующих друг за другом задач.

🎉 Copied!
@startgantt
[Разработка прототипа] lasts 14 days
then [Тестирование прототипа] lasts 4 days
then [Развертывание прототипа] lasts 6 days
@endgantt

Также для этиих целей можно использовать стрелки ->.

🎉 Copied!
@startgantt
[Разработка прототипа] lasts 14 days
[Сборка прототипа] lasts 4 days
[Подготовка к тестированию] lasts 6 days
[Разработка прототипа] -> [Сборка прототипа]
[Разработка прототипа] -> [Подготовка к тестированию]
@endgantt

Работа с ресурсами

Для задач можно указывать необходимые им ресурсы. Для этого следует использовать ключевое слово on и далее указать имя необходимого ресурса в фигурных скобках. Также можно указать процент использования для каждого ресурса.

🎉 Copied!
@startgantt
[Задача 1] on {Алиса} lasts 10 days
[Задача 2] on {Боб:50%} lasts 2 days
then [Задача 3] on {Алиса:25%} lasts 1 days
@endgantt

Для задачи можно указать нессколько ресурсов, перечислив имя каждого ресурса в отдельных фигурных скобках.

🎉 Copied!
@startgantt
[Задача 1] on {Алиса} {Боб} lasts 20 days
@endgantt

Resources can be marked as off on specific days: Ресурсы могут помечаться как недоступные в определенные дни, специально указанные для этих ресурсов при помощи конструкции {имяРесурса} is off on дата1 to дата2

🎉 Copied!
@startgantt
language ru
project starts on 2020-06-19
[Задача 1] on {Алиса} lasts 10 days
{Алиса} is off on 2020-06-24 to 2020-06-26
@endgantt

Разделитель

You can use -- to separate sets of tasks. Можно отделять один набор задач от другого используя горизонтальные линии, которые задаются символами --.

🎉 Copied!
@startgantt
[Задача 1] lasts 10 days
then [Задача 2] lasts 4 days
-- Фаза два --
then [Задача 3] lasts 5 days
then [Задаа 4] lasts 6 days
@endgantt

Комплексный пример

Можно задавать несколько дополнений, объединяя их при помощи предлога and (и).

🎉 Copied!
@startgantt
printscale daily zoom 2
[Разработка прототипа] lasts 13 days and is colored in Lavender/LightBlue
[Тест прототипа] lasts 9 days and is colored in Coral/Green and starts 3 days after [Разработка прототипа]'s end
[Составление тестов] lasts 5 days and ends at [Разработка прототипа]'s end
[Найм тестировщиков] lasts 6 days and ends at [Составление тестов]'s start
[Подготовка отчета о тестировании] is colored in Coral/Green
[Подготовка отчета о тестировании] starts 1 day before [Тест прототипа]'s start and ends at [Тест прототипа]'s end
@endgantt

Комментарии

Как говорится на странице Общие для всех диаграмм команды:
Всё, что начинается с одинарной кавычки ' - это комментарий.

Также, можно размещать комментарии в несколько строчек, если использовать символы /' для обозначения начала и '/ для обозначения конца комментария.

🎉 Copied!
@startgantt
' Это комментарий

[T1] lasts 3 days

/' это коменнтарий
в несколько строчек '/

[T2] starts at [T1]'s end and lasts 1 day
@endgantt

Использование стилей

Без стилей (по умолчанию)

🎉 Copied!
@startuml
[Задача1] lasts 20 days
note bottom
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note
[Задача2] lasts 8 days
[Задача1] -> [Задача2]
-- Заголовок - разделитель --
[M1] happens on 5 days after [Задача1]'s end
-- конец --
@enduml

С использованием стилей

Можно использовать стили для изменения отображения элементов.

🎉 Copied!
@startuml
<style>
ganttDiagram {
	task {
		FontName Helvetica
		FontColor red
		FontSize 18
		FontStyle bold
		BackGroundColor GreenYellow
		LineColor blue
	}
	milestone {
		FontColor blue
		FontSize 25
		FontStyle italic
		BackGroundColor yellow
		LineColor red
	}
	note {
		FontColor DarkGreen
		FontSize 10
		LineColor OrangeRed
	}
	arrow {
		FontName Helvetica
		FontColor red
		FontSize 18
		FontStyle bold
		BackGroundColor GreenYellow
		LineColor blue
	}
	separator {
		LineColor red
		BackGroundColor green
		FontSize 16
		FontStyle bold
		FontColor purple
	}
}
</style>
[Задача1] lasts 20 days
note bottom
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note
[Задача2] lasts 8 days
[Задача1] -> [Задача2]
-- Заголовок - разделитель --
[M1] happens on 5 days after [Задача1]'s end
-- конец --
@enduml

[Ref. QA-10835, QA-12045, QA-11877 and PR-438]

С использованием стилей (полный пример)

🎉 Copied!
@startgantt
language ru
<style>
ganttDiagram {
	task {
		FontName Helvetica
		FontColor red
		FontSize 18
		FontStyle bold
		BackGroundColor GreenYellow
		LineColor blue
	}
	milestone {
		FontColor blue
		FontSize 25
		FontStyle italic
		BackGroundColor yellow
		LineColor red
	}
	note {
		FontColor DarkGreen
		FontSize 10
		LineColor OrangeRed
	}
	arrow {
		FontName Helvetica
		FontColor red
		FontSize 18
		FontStyle bold
		BackGroundColor GreenYellow
		LineColor blue
		LineStyle 8.0;13.0
		LineThickness 3.0
	}
	separator {
		BackgroundColor lightGreen
		LineStyle 8.0;3.0
		LineColor red
		LineThickness 1.0
		FontSize 16
		FontStyle bold
		FontColor purple
		Margin 5
		Padding 20
	}
	timeline {
	    BackgroundColor Bisque
	}
	closed {
		BackgroundColor pink
		FontColor red
	}
}
</style>
Project starts the 2020-12-01

[Задача1] lasts 10 days
sunday are closed

note bottom
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note

[Задача2] lasts 20 days
[Задача2] starts 10 days after [Задача1]'s end
-- Заголовок - разделитель --
[M1] happens on 5 days after [Задача1]'s end

<style>
	separator {
	    LineColor black
		Margin 0
		Padding 0
	}
</style>

-- конец --
@endgantt

[Ref. QA-13570, QA-13672]

Минимализм

Используя стили можно очистить диаграмму от всего лишнего, оставив только задачи с их относительными размерами, а также зависимости между ними:

🎉 Copied!
@startgantt
<style>
ganttDiagram {
  timeline {
    LineColor transparent
    FontColor transparent
 }
}
</style>

hide footbox
[Тест прототипа] lasts 7 days
[Прототип готов] happens at [Тест прототипа]'s end
[Настройка сборочной линии] lasts 13 days
[Настройка сборочной линии] starts at [Тест прототипа]'s end
then [Сборка] lasts 5 days
[T2] lasts 2 days and starts at [Тест прототипа]'s end
then [T3] lasts 3 days
-- следующий этап --
then [T4] lasts 2 days
@endgantt

[Ref. QA-13971]

Или другой пример:

🎉 Copied!
@startgantt
<style>
ganttDiagram {
  timeline {
    LineColor transparent
    FontColor transparent
  }
  closed {
    FontColor transparent
  }
}
</style>

hide footbox
project starts the 2018/04/09
saturday are closed
sunday are closed
2018/05/01 is closed
2018/04/17 to 2018/04/19 is closed
[Разработка прототипа] lasts 9 days
[Тест прототипа] lasts 5 days
[Тест прототипа] starts at [Разработка прототипа]'s end
[Разработка прототипа] is colored in Fuchsia/FireBrick
[Тест прототипа] is colored in GreenYellow/Green
@endgantt

[Ref. QA-13464]

Добавление заметок

🎉 Copied!
@startgantt
[Задача1] lasts 15 days
note bottom
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note

[Задача1] -> [Задача2]

@endgantt

Пример с перекрытием.

🎉 Copied!
@startgantt
[Задача1] lasts 15 days
note bottom
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note

[Задача1] -> [Задача2]
[Задача3] lasts 5 days

@endgantt

🎉 Copied!
@startgantt

-- тест 1 --

[Задача1] lasts 4 days
note bottom
'note left
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note

[Задача2] lasts 8 days
[Задача1] -> [Задача2]
note bottom
'note left
  заметка1 ...
  заметка2 ...
  пояснение1 ...
  пояснение2 ...
end note
-- тест 2 --

[Задача3] as [t3] lasts 7 days
[t3] -> [t4]
@endgantt

🎉 Copied!
@startgantt
language ru

Project starts 2020-09-01

[ЗадачаA] starts 2020-09-01 and lasts 5 days
[ЗадачаB] starts 2020-09-10 and lasts 5 days
[ЗадачаB] displays on same row as [ЗадачаA]

[Задача1] starts 2020-09-05 and lasts 4 days

then [Задача2] lasts 8 days
note bottom
  заметка для Задача2
  больше заметок!
end note

then [Задача3] lasts 7 days
note bottom
  заметка для Задача3
  больше заметок!
end note

-- разделитель --

[ЗадачаC] starts 2020-09-02 and lasts 5 days
[ЗадачаD] starts 2020-09-09 and lasts 5 days
[ЗадачаD] displays on same row as [ЗадачаC]

[Задача10] starts 2020-09-05 and lasts 5 days
then [Задача11] lasts 5 days
note bottom
  заметка для Задача11
  больше заметок!
end note
@endgantt

Приостановка задач

🎉 Copied!
@startgantt
language ru
Project starts 2018.12.05
saturday are closed
sunday are closed
2018.12.29 is opened
[Разработка прототипа] lasts 17 days
[Разработка прототипа] pauses on 2018.12.19
[Разработка прототипа] pauses on 2018.12.20
[Разработка прототипа] pauses on monday
[Тест прототипа] starts at [Разработка прототипа]'s end and lasts 2 weeks
@endgantt

Change link colors

You can change link colors:
  • with this syntax: with <color> <style> link

🎉 Copied!
@startgantt
[T1] lasts 4 days
[T2] lasts 4 days and starts 3 days after [T1]'s end with blue dotted link
[T3] lasts 4 days and starts 3 days after [T2]'s end with green bold link
[T4] lasts 4 days and starts 3 days after [T3]'s end with green dashed link
@endgantt

  • or directly by using arrow style

🎉 Copied!
@startuml
<style>
ganttDiagram {
	arrow {
		LineColor blue
	}
}
</style>
[Prototype design] lasts 7 days
[Build prototype] lasts 4 days
[Prepare test] lasts 6 days
[Prototype design] -[#FF00FF]-> [Build prototype]
[Prototype design] -[dotted]-> [Prepare test]
Then [Run test]  lasts 4 days
@enduml

[Ref. QA-13693]

Tasks or Milestones on the same line

You can put Tasks or Milestones on the same line, with this syntax:
  • [T|M] displays on same row as [T|M]

🎉 Copied!
@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
[Test prototype] displays on same row as [Prototype design]
[r1] happens on 5 days after [Prototype design]'s end
[r2] happens on 5 days after [r1]'s end
[r3] happens on 5 days after [r2]'s end
[r2] displays on same row as [r1]
[r3] displays on same row as [r1]
@endgantt

Highlight today

🎉 Copied!
@startgantt
Project starts the 20th of september 2018
sunday are close
2018/09/21 to 2018/09/23 are colored in salmon
2018/09/21 to 2018/09/30 are named [Vacation in the Bahamas] 

today is 30 days after start and is colored in #AAF
[Foo] happens 40 days after start
[Dummy] lasts 10 days and starts 10 days after start

@endgantt

Task between two milestones

🎉 Copied!
@startgantt
project starts on 2020-07-01
[P_start] happens 2020-07-03
[P_end]   happens 2020-07-13
[Prototype design] occurs from [P_start] to [P_end]
@endgantt

Grammar and verbal form

Verbal form Example
[T] starts
[M] happens

Add title, header, footer, caption or legend

🎉 Copied!
@startuml

header some header

footer some footer

title My title

[Prototype design] lasts 13 days

legend
The legend
end legend

caption This is caption

@enduml

(See also: Common commands)

Removing Foot Boxes (example for all scale)

You can use the hide footbox keywords to remove the foot boxes of the gantt diagram (as for sequence diagram).

Examples on:

  • daily scale (without project start)

🎉 Copied!
@startgantt

hide footbox
title Foot Box removed

[Prototype design] lasts 15 days
[Test prototype] lasts 10 days
@endgantt

  • daily scale

🎉 Copied!
@startgantt

Project starts the 20th of september 2017
[Prototype design] as [TASK1] lasts 13 days
[TASK1] is colored in Lavender/LightBlue

hide footbox
@endgantt

  • weekly scale

🎉 Copied!
@startgantt
hide footbox

printscale weekly
saturday are closed
sunday are closed

Project starts the 1st of january 2021
[Prototype design end] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 14 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are named [End's committee]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

  • monthly scale

🎉 Copied!
@startgantt

hide footbox

projectscale monthly
Project starts the 20th of september 2020
[Prototype design] as [TASK1] lasts 130 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 20 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are named [End's committee]
2021-01-18 to 2021-01-22 are colored in salmon 
@endgantt

  • quarterly scale

🎉 Copied!
@startgantt

hide footbox

projectscale quarterly
Project starts the 1st of october 2020
[Prototype design] as [TASK1] lasts 700 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 200 days
[TASK1]->[Testing]

2021-01-18 to 2021-03-22 are colored in salmon 
@endgantt

  • yearly scale

🎉 Copied!
@startgantt

hide footbox

projectscale yearly
Project starts the 1st of october 2020
[Prototype design] as [TASK1] lasts 700 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 200 days
[TASK1]->[Testing]

2021-01-18 to 2021-03-22 are colored in salmon 
@endgantt

Language of the calendar

You can choose the language of the Gantt calendar, with the language <xx> command where <xx> is the ISO 639 code of the language.

English (en, by default)

🎉 Copied!
@startuml
saturday are closed
sunday are closed

Project starts 2021-01-01
[Prototype design end] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 14 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Deutsch (de)

🎉 Copied!
@startuml
language de
saturday are closed
sunday are closed

Project starts 2021-01-01
[Prototype design end] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 14 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Japanese (ja)

🎉 Copied!
@startuml
language ja
saturday are closed
sunday are closed

Project starts 2021-01-01
[Prototype design end] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 14 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Chinese (zh)

🎉 Copied!
@startuml
language zh
saturday are closed
sunday are closed

Project starts 2021-01-01
[Prototype design end] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 14 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Korean (ko)

🎉 Copied!
@startuml
language ko
saturday are closed
sunday are closed

Project starts 2021-01-01
[Prototype design end] as [TASK1] lasts 19 days
[TASK1] is colored in Lavender/LightBlue
[Testing] lasts 14 days
[TASK1]->[Testing]

2021-01-18 to 2021-01-22 are colored in salmon 
@enduml

Delete Tasks or Milestones

You can mark some Tasks or Milestones as deleted instead of normally completed to distinguish tasks that may possibly have been discarded, postponed or whatever.

🎉 Copied!
@startgantt
[Prototype design] lasts 1 weeks
then [Prototype completed]  lasts 4 days
[End Prototype completed] happens at [Prototype completed]'s end
then [Test prototype] lasts 5 days
[End Test prototype] happens at [Test prototype]'s end

[Prototype completed] is deleted
[End Prototype completed] is deleted
@endgantt

[Ref. QA-9129]