Skip to end of banner
Go to start of banner

Display date/time statistics and charts on your dashboard

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

In this article, you will explore the usage of date and datetime fields in rich filter statistics and /wiki/spaces/RFCDOC2/pages/782271596 gadgets. After you are done with the basics, you will then learn about the rich filter Time Series feature. Time series are based on date/datetime fields and allow you to efficiently compare trends and hint at correlations. Once defined, time series can be reused across different gadgets — including statistics and chart gadgets and the Rich Filter Time Series Chart gadget. Finally, you'll take a look at the Rich Filter Created vs Resolved Chart gadget.

Prerequisites

Final result for this tutorial

Once you've worked through the steps in this tutorial, you should have a dashboard that contains examples of all the rich filter gadget types that can display statistics and charts based on date and datetime fields:

  • Rich Filter Statistics gadget
  • Rich Filter Two Dimensional Statistics gadget
  • Rich Filter Flexi Charts gadget
  • Rich Filter Time Series Chart gadget
  • Rich Filter Created vs Resolved Chart gadget


A dashboard showing a Rich Filter controller, three statistics gadgets, two flexi charts, a time series chart, and a created vs resolved chart, all showing datetime statistics.

Rich filter and dashboard basic setup

In this section, you'll set up a basic rich filter and dashboard to work with.

  1. If you've already worked through other tutorials in our Learning Center, you can base any gadgets you create while following this article on a previously-created rich filter. Check that you have one available to use (find existing rich filters linked at Apps > Rich Filters). If not, follow the instructions in Get started with Rich Filters for Jira Dashboards to create a new rich filter before continuing.
  2. Create a new dashboard (Dashboards > Create dashboard).
  3. Make sure it is using the Left sidebar layout. You can set this using the Change layout menu at the top of the dashboard.

    Dashboard edit screen showing a new dashboard set to the Left sidebar layout, with the Left sidebar layout option highlighted

  4. Add a Rich Filter Controller gadget to your dashboard, based on your rich filter (Create a simple dashboard explains how to do this).
  5. After saving the configuration of your gadget, make sure the controller is in the left-hand column; drag and drop it if required.


If you want a more detailed explanation of creating a new dashboard, see Create a simple dashboard.

Recap: Use "option-based fields" in gadgets

When you configure a Rich Filter Statistics or Flexi Charts gadget to display statistics based on an "option-based field" (meaning a field with a specific finite number of options, such as Assignee, Status, or Labels) or a smart filter, the config options specific to those field types are pretty straightforward, including Sort By (e.g. Alphabetical) and Maximum rows/columns to display. You can find many examples of statistics and chart gadgets using "option-based fields" in Display statistics and quick charts on your dashboard and Display custom charts and quick tables on your dashboard.

Use dates in statistics and charts

Statistics and charts based on date and datetime fields (e.g. Created, Resolved, or custom date and datetime fields) work differently from those using "option-based" fields.

In all gadgets displaying statistics and charts based on dates, rich filters provides a powerful, flexible, and intuitive configuration mechanism that allows you to easily pick the aggregation periods (days, weeks, months, etc.), the time range to be displayed as a fixed or relative time window, and rules for displaying and aggregating data over time.

Let's walk through a demo to show you how this works.

  1. Add a Rich Filter Statistics gadget to your dashboard (Create a simple dashboard explains how to add gadgets), and position it underneath your controller.
  2. Set your new gadget's Rich filter field to the same rich filter that your controller is based on.
  3. In the Statistic type dropdown, choose Created. Since this is a date field, you are given the following options to configure.

    The date config fields displayed when you choose a datetime-based field for the breakdown type. These allow you to specify aggregation period type, number, direction, and sort order, and whether to display percentage bars and totals

  4. Let's explore each option in turn:
    1. Aggregation periods: This allows you to choose whether you want to show value totals per day, week, month, quarter, or year. There is also a special value, Auto, which leaves it up to the rich filters app to choose the most suitable Aggregation periods and Time range values to show a granular-but-complete statistic set for your data.
    2. Time range: This allows you to set the time range over which you want to show your aggregation periods. The options are as follows:
      1. Number of <aggregation-period>: Choose a set number of aggregation periods to display, for example the option will be Number of days if your chosen Aggregation period is Days. When this option is selected two additional fields appear, which also need to be configured:
        • Number: The number of aggregation periods you want to display. You can choose to display up to 100 periods at once.
        • Direction: Whether you want to show aggregation periods in the past (from the present date backward), future (from the present date forward), or past and future (backward and forward, with the present date in the middle).
      2. Between dates: Choose a specific start and end date for the time range you wish to display. When this option is selected two additional fields appear, which also need to be configured:
        • From: The start date.
        • To: The end date.
      3. All dates: Dynamically display aggregation periods of the chosen type that span a time range covering all the existing values in the date/datetime field used as the breakdown (i.e. the Statistic type; Created in this example). This is particularly powerful when combined with a dynamic filter based on the same date field in the controller; it allows you to change the displayed time range dynamically.
      4. This <aggregation-period> and Last <aggregation-period>: For convenience, you can also choose to display data over contextual predefined time ranges. For example, when Months is chosen as the Aggregation period, the options provided in the Time range dropdown are This quarter, This year, Last quarter, and Last year.
    3. Reverse sort order: This checkbox controls whether you want to display the data going forwards with the oldest date at the start (unchecked, the default), or going backwards with the newest date at the start (checked).
    4. Show percentage bars: This checkbox controls whether percentage bars are shown in the resulting statistics gadget, alongside the values for each aggregation period.
    5. Show totals: This checkbox controls whether a Total row is shown at the bottom of the statistics table.
  5. For now, choose an Aggregation periods value of Weeks and a Time range of Number of weeks. Choose a Number of 6 and a Direction of Past. This will cause the statistics gadget to display the last 6 weeks of data.
  6. Check the Reverse sort order checkbox — this results in the data being shown in reverse chronological order, with the most recent week in the top row.
  7. In the Values section, choose Issue Count and Story Points from the Pick a value... dropdown.
  8. Click Submit. Your gadget should look like this:

    Rich filter statistics gadget showing created issue count and story points values for each week over a period of six weeks


This looks good so far — you've generated a table of created issue count and story point values for each of the last 6 weeks.

Use dates in two-dimensional statistics

Date and datetime fields can be used in Rich Filter Two Dimensional Statistics gadgets in much the same way as above, to provide a useful breakdown of your data across a specified time range. Let's look at an example.

  1. Add a Rich Filter Two Dimensional Statistics gadget to your dashboard and place it at the top of the right-hand column.
  2. Base it on the same rich filter as your other gadgets.
  3. For the Horizontal breakdown, select a Statistic type of Assignee.
  4. For the Vertical breakdown, choose Resolved (the resolution time of the issues) as the Statistic type.
  5. For Resolved's Aggregation periods value, choose Months.
    1. Choose a Time range of Between dates, and select the last three months using your From and To inputs.
  6. Again check the Reverse sort order checkbox.
  7. For Value, choose Story Points.
  8. Click Submit. Your gadget should look like this:

    Rich filter two dimensional statistics gadget showing resolved story points values for each assignee in three different months


This is a useful follow-on from the previous example. You are able to review the resolved story points for each different team member during a specific time period — Q1 2023 in our example screenshot. The Between dates time range is useful for selecting a very specific fixed time period to show data for.

Use dates in flexi charts

You can use date/datetime fields in Rich Filter Flexi Charts gadgets in much the same way as in statistics gadgets, to provide informative visual summaries of trends over time. Let's take a look.

  1. Add a Rich Filter Flexi Charts gadget to your dashboard and place it in the left-hand column of your dashboard, at the bottom.
  2. Base it on the same rich filter as your other gadgets.
  3. For the Chart type, select Stacked bar.
  4. Select Due date for Primary breakdown > Statistic type.
  5. The date-related settings are mostly the same as for the statistics gadget types. Select the following:
    1. Aggregation periods: Months
    2. Time range: All dates.
  6. There is one setting that is particular to chart gadget types, hence you've not seen it before: Aggregation type. Let's explain the possible values:

    • Period value: The default — for each aggregation period, show the individual value.
    • Cumulative trend: For each aggregation period, show the total value from the start of the time range displayed in your gadget up until the end of the period.
    • Cumulative total: For each aggregation period, show the total value from the start of your data up until the end of the period.
  7. Choose Cumulative total for the Aggregation type.
  8. Select Status Category for Secondary breakdown > Statistic type.
  9. Select Issue Count for the Value.
  10. Click Submit. Your gadget should look like this:

    Rich filter flexi charts gadget showing a stacked bar graph of due to do, in progress, and done issues for each of 10 months


The chart displays issues based on their Due date; for each aggregation period, you can see the number of issues in each status category — To Do, In Progress, and Done. The above screenshot was taken in April 2023 — you can see how many of the issues due in April were done, in progress, or still in the backlog at that time. If you look at the previous aggregation period — March 2023 — you'll see issues still not done that were due in March, hence they are overdue. The target is always to complete all the due issues so that nothing remains overdue by the end of each month.

The gadget uses the Cumulative total setting, hence the total displayed for April contains the issues due in all previous periods. Similarly, if you look at May, you'll see all the issues that are due until the end of May, including those from previous months. 

You can use any static, dynamic, or smart filters present in your controller to filter other gadgets based on the same rich filter as the controller. In this case, you could filter by team or assignee, for example, to pinpoint the source of the overdue issues.

Create time series

Rich filters provides the Time Series feature, which allows you to predefine custom time series that can then be used in multiple relevant gadgets as desired, and also provide some useful customization options such as custom color and per-time series JQL filter.

Time series can be used in Rich Filter Statistics, Rich Filter Two Dimensional Statistics, Rich Filter Flexi Charts, and Rich Filter Time Series Chart gadgets.

You'll start by creating "Due features", "Resolved features", and "Created bugs" time series — these will provide interesting tracking data for different types of work you are interested in and their evolution over time. Later on, you'll use them to create a chart to study potential correlations between them.

  1. Open your rich filter config (as described in Easier configuration with the Rich filter menu).
  2. Select the Time Series tab, and click the Create time series button.
  3. In the resulting dialog box, you'll see a series of settings:
    1. Name: An identifying name for your time series. Enter "Due features".
    2. Color: A custom color. Choose one that suits you. We chose a light blue color.
    3. Series: A date/datetime field that the time series will be based on. Choose Due date.
    4. Base value: The value that will be counted for this time series in each aggregation period. Choose Issue Count.
    5. JQL: A specific JQL query that filters the data for this time series. Enter "type = "New Feature"".
  4. Click the Create button.
  5. Create two more time series:
    1. "Resolved features"
      1. Color: Choose a nice safe green color.
      2. Series: Choose Resolved.
      3. Base value: Choose Issue Count.
      4. JQL: Enter "type = "New Feature"".
    2. "Created bugs"
      1. Color: Choose red.
      2. Series: Choose Created.
      3. Base value: Choose Issue Count.
      4. JQL: Enter "type = Bug".
  6. Your Time Series tab should now look like this. Check it before you move on.

    Rich filter config time series tab showing three time series created - Due features, Resolved features, and Created bugs


You can also base your time series on date/datetime custom fields or define computed time series such as Unresolved (computed as the difference between two time series: Created and Resolved). If you are using Jira Service Management, you can also use the completion date of SLA fields such as Time to first response. Your base value can be Issue Count, a Numeric or Time Tracking field, or a custom value.

Display time series in a Rich Filter Time Series Chart gadget

To display our time series, as a first example, you will use a new type of gadget — the Rich Filter Time Series Chart gadget. This gadget allows you to compare time series based on multiple date/datetime fields, each time series potentially with its own JQL query applied; the results are displayed as (multi-)line graphs.

This demonstrates that the time series feature is an effective and convenient way to pre-package your configuration for date/datetime statistics and charts, which can then be reused in multiple places. Comparing time series is a very commonly-requested use case, and we wanted to make it as quick and easy as possible.


Let's create a chart comparing the cumulative trend of Due features, Resolved features, and Created bugs over a 12-week period.

  1. Go back to your dashboard.
  2. Add a Rich Filter Time Series Chart gadget and place it at the bottom of the left-hand column of your dashboard.
  3. Base it on the same rich filter as your other gadgets.
  4. Choose Aggregation periods of Weeks, Time range of Number of weeks, and Number 12.
  5. Select Cumulative trend from the Aggregation type dropdown.
  6. Choose your Due features, Resolved features, and Created bugs time series from the Pick a time series... dropdown.
  7. Click Submit. Your time series chart should look like this:

    Rich filter time series gadget showing trend of due features, resolved features, and created bugs over a 12 week period


That was quick and easy, and you ended up with a chart that allows you to study the correlation between the different time series. For example, you can look for points where the number of resolved features became less than the number of due features and think about potential causes. One possible cause is that more work was done on fixing bugs in those periods, taking time away from developing new features. Maybe the created bugs time series can provide some answers?

As with other types of rich filter chart gadgets, you can hover over data points to get tooltips providing more details.


Rich filter time series chart gadget with pointer hovering over data point to reveal tooltip of data for that aggregation period - week 3 to week 8 2023, Created bugs 19


And Rich Filter Time Series Chart gadgets also have a Show table button:


Rich filter time series chart gadget with Show table button highlighted in bottom-right corner

Clicking this generates a quick table showing the chart data in detail, displayed at the bottom of the same gadget:


Rich filter time series chart gadget quick table, showing exact numbers for Due features, Resolved features, and Created bugs, for 12 separate weeks


The Rich Filter Time Series Chart gadget allows you to compare time series which return the same type of value — such as Issue Count or numeric, time tracking, or duration values.

Use time series in statistics gadgets

Using time series is not limited to Rich Filter Time Series Chart gadgets; you can use them in other gadget types too. In this section, you'll create a Rich Filter Statistics gadget showing a number of time series indicating the count of created and unresolved issues each month over a four-month period, along with the story point value of the unresolved issues, the average resolution time, and the average resolution time of bugs specifically.

A major advantage of using time series in Rich Filter Statistics gadgets is that you can display time series with different base values together in the same gadget. You can pretty much compare anything against anything in the same aggregation periods.


To begin this section, you will create a custom value that will later be used as a base value for two of the time series you will create.

  1. Open your rich filter config (as described in Easier configuration with the Rich filter menu).
  2. Select the Custom values tab, and click the Create custom value button.
  3. In the resulting dialog box, enter the following values:
    1. Name: Enter "Resolution time".
    2. Color: Choose a green color.
    3. Base value: Choose Issue age / resolution time.
    4. Total formula: Choose Average value.
    5. Duration display format: choose Days.
    6. JQL: Enter "resolution is not EMPTY".
  4. Click Submit. Your Custom values tab should now look like this:

    Rich filter config custom values tab showing one custom value created - Resolution time

    Next, you'll create some more time series to use in your statistics. Note how the Res time (avg) and Bug res time (avg) time series are based on the Resolution time custom value created above.

  1. Go to your rich filter config Time series tab.
  2. Create the following five time series:
    1. "Created"
      1. Color: Orange.
      2. Series: Created.
      3. Base value: Issue Count.
      4. JQL: Leave blank.
    2. "Unresolved"
      1. Color: Red.
      2. Series: Unresolved (created minus resolved issues).
      3. Base value: Issue Count.
      4. JQL: Leave blank
    3. "Unresolved SP"
      1. Color: Red.
      2. Series: Unresolved (created minus resolved issues).
      3. Base value: Story Points.
      4. JQL: Leave blank
    4. "Res time (avg)"
      1. Color: Green.
      2. Series: Resolved.
      3. Base value: Choose your Resolution time custom value.
      4. JQL: Leave blank
    5. "Bug res time (avg)"
      1. Color: Blue.
      2. Series: Resolved.
      3. Base value: Choose your Resolution time custom value.
      4. JQL: Enter "type = Bug".
  3. Your Time Series tab should now look like this.

    Rich filter config time series tab showing eight time series created - Due features, Resolved features, Created bugs, Created, Unresolved, Unresolved SP, Res time avg, and Bug res time avg


Now you'll use your new time series in a statistics gadget.

  1. Go back to your dashboard.
  2. Add a Rich Filter Statistics gadget to your dashboard, and position it at the bottom of the right-hand column.
  3. Set your new gadget's Rich filter field to the same rich filter that your controller is based on.
  4. In the Statistic type dropdown, choose the new Time series option, which appears when you have time series available to use.
  5. You need to select what Aggregation periods you are going to show your time series over. Enter the following:
    1. Aggregation periods: Months.
    2. Time range: Number of months.
    3. Number: 4.
  6. Check the Reverse sort order checkbox.
  7. Instead of the Pick a value... dropdown at the bottom of the form, you'll now see a Pick a time series... dropdown. Select Created, Unresolved, Unresolved SP, Res time (avg), and Bug res time (avg).
  8. Click Submit. Your gadget should now look like this:

    Rich filter statistics gadget showing data for five time series - Created, Unresolved, Unresolved SP, Rest time (avg), Bug res time (avg)


The custom time series names are being used as column headings, and your chosen colors are being used in the percentage bars.


It is also worth looking at how these custom time series are used in the associated quick chart view (click the Switch to quick chart view button in the bottom-right of the gadget).

Use time series in flexi charts

You can also use time series in Rich Filter Flexi Charts gadgets. In this example, you will use a clustered bar graph to split the Unresolved SP time series, showing the number of unresolved story points over time for multiple teams separately.

  1. First of all, create a Teams smart filter as shown in Create a Teams smart filter.
  2. Add a Rich Filter Flexi Charts gadget to your dashboard and position it at the bottom of the right-hand column.
  3. Set your new gadget's Rich filter field to the same rich filter that your controller is based on.
  4. Choose Clustered bar in the Chart type dropdown.
  5. In the Primary breakdown > Statistic type dropdown, select the Unresolved SP time series.

    Both Rich Filter Flexi Charts and Rich Filter Two Dimensional Statistics gadgets allow you to select a time series as a breakdown and then use a second breakdown to split that time series. 

  6. Select the following values for the Aggregation periods fields:
    1. Aggregation periods: Weeks.
    2. Time range: Last quarter. Choosing this predefined value is a useful way of making sure that you will always see the last quarter of data, even as time moves forward.
  7. Choose Cumulative total for the Aggregation type.
  8. In the Secondary breakdown > Statistic type dropdown, select the Teams smart filter.
  9. Click Submit. Your gadget should now look like this:

    Rich filter flexi gadget with clustered bar chart showing Unresolved SP time series split by orange team and green team


This shows the power of flexi charts in this context — you can create a single time series and then easily split it by another dimension, enabling it to do the job of many different time series.

You can also use time series in Rich Filter Two Dimensional Statistics gadgets, in which the configuration is fairly similar to that of two-dimensional flexi charts.

Rich Filter Created vs Resolved Chart gadgets

To finish, you are going to look at another gadget type — the Rich Filter Created vs Resolved Chart gadget. This gadget displays a very specific type of time series chart, to fulfill another common use case in reporting — showing created issues versus resolved issues over time. For this gadget, the time series are already built in.

Let's explore this to see how it works.

  1. Add a Rich Filter Created vs Resolved Chart gadget to your dashboard and place it at the bottom of the right-hand column.
  2. Base it on the same rich filter as your other gadgets.
  3. Choose Aggregation periods of Weeks, a Time range of Number of weeks, and Number 12.
  4. Choose Cumulative total for the Aggregation type.
  5. Choose Issue Count for the Value.
  6. Check the Unresolved trend checkbox. This causes an additional line graph to display underneath the main graph, showing the difference between created and resolved for each aggregation period.
  7. Click Submit. Your created vs resolved chart should look like this:

    Rich filter created vs resolved gadget showing created, resolved, and unresolved trend time series over 12 weeks


The Rich Filter Created vs Resolved Chart has other useful features. Most notably, the sections of the graph where Created > Resolved are colored red, and the sections where Resolved > Created are colored green, making it easy to analyze the trends.

  • No labels