Visualize the evolution of an issue tracker backlog.
Two types of plots are available:
"historic": displays the distribution of open issues by age.
"created-closed": displays backlog size together with the
numbers of newly created and newly closed issues.
Invisibly returns x.
When type = "historic", a stacked area chart is produced showing
the number of open issues by age over time. This visualization highlights
the evolution and aging of the backlog.
The first classes correspond to one-year intervals (0-1y,
1-2y, ..., (n-1)-ny) and the last class groups all issues
older than n years.
When type = "author", the same graph as type = "historic" but
this time with the number of open issues by author over time.
When type = "created-closed", the total number of open issues is
displayed together with the monthly numbers of newly created and newly
closed issues. This visualization helps assess whether issue creation
and resolution rates are balanced over time.
All statistics are aggregated monthly, from the month of the first issue creation to the current date.
When type = "resolution-time", the resolution times are computed and
displayed in two forms:
bar plot with categories from time
ECDF to show the cumulative distribution of issues resolution times on a log scale
all_issues <- rbind(
get_issues(
source = "local",
dataset_dir = system.file("data_issues", package = "IssueTrackeR"),
dataset_name = "open_issues.yaml"
),
get_issues(
source = "local",
dataset_dir = system.file("data_issues", package = "IssueTrackeR"),
dataset_name = "closed_issues.yaml"
)
)
#> Looking into open_issues.yaml ...
#> The issues will be read from /home/runner/work/_temp/Library/IssueTrackeR/data_issues/open_issues.yaml.
#> Looking into closed_issues.yaml ...
#> The issues will be read from /home/runner/work/_temp/Library/IssueTrackeR/data_issues/closed_issues.yaml.
plot(all_issues, type = "historic")
plot(all_issues, type = "author")
plot(all_issues, type = "created-closed")
plot(all_issues, type = "resolution-time")