# Building a Dynamic Heatmap of OCM Epics with Project Columns in eazyBI

**URL:** <https://community.eazybi.com/t/building-a-dynamic-heatmap-of-ocm-epics-with-project-columns-in-eazybi/20104>\
**Category:** Questions & Answers\
**Created:** [June 9, 2025, 1:42pm UTC](https://community.eazybi.com/t/building-a-dynamic-heatmap-of-ocm-epics-with-project-columns-in-eazybi/20104 "2025-06-09T13:42:28Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Behzad\_Nazarbakhsh](https://community.eazybi.com/user_avatar/community.eazybi.com/behzad_nazarbakhsh/32/7434_2.png) [@Behzad\_Nazarbakhsh](https://community.eazybi.com/u/Behzad_Nazarbakhsh)\
**Post date:** [June 9, 2025, 1:42pm UTC](https://community.eazybi.com/t/building-a-dynamic-heatmap-of-ocm-epics-with-project-columns-in-eazybi/20104/1 "2025-06-09T13:42:28Z")

</div>

Hi eazyBI community,

I’m trying to create a **heatmap** in eazyBI where:

- **Rows = Individual OCM Epic issue types** , labeled like `OCM-101 Name`, `OCM-102 Name`, etc.
- **Columns = Project Names**
- **Cells = Metric value** , such as progress (percentage of completion of each OCM Epic)
- **Color intensity = visualizes that metric for each epic-project combination**

Each OCM Epic is associated with a specific project. I want to show each **OCM Epic** as its own row and see how it relates to different projects across the columns — all visualized using heatmap colors.

Could someone help me build this? Below is an example of the final result I’m aiming for:

 ![Screenshot 2025-06-10 090312](https://community.eazybi.com/uploads/default/original/2X/e/e0c22608b00520def2ec1c10fa076bd8660f3dd8.png)

\*\*Note:

1. My eazyBI is for Jira Server/Data Center, and it does not have a Heatmap chart, as it is the old version of eazyBI. Therefore I should use **table with conditional formatting**.\*\*
2. An OCM Epic is an issue type that has a different key prefix for each project but shares the same summary/title. For example, we have `BAL-400 Stakeholder Analysis` for Project BAL and `TMS-102 Stakeholder Analysis` for Project TMS. The goal is to group all these similarly named epics under a single entry called **‘Stakeholder Analysis’** by creating a new calculated member in the Issue dimension, which will be used as a row in the report."

Any guidance or suggestions would be greatly appreciated!

Thanks in advance.

Best regards,  
Behzad

---

<div class="post-metadata">

**Author:** ![gerda.grantina](https://community.eazybi.com/user_avatar/community.eazybi.com/gerda.grantina/32/1994_2.png) [@gerda.grantina](https://community.eazybi.com/u/gerda.grantina)\
**Post date:** [June 12, 2025, 9:38am UTC](https://community.eazybi.com/t/building-a-dynamic-heatmap-of-ocm-epics-with-project-columns-in-eazybi/20104/2 "2025-06-12T09:38:20Z")

</div>

Hi @Behzad_Nazarbakhsh

**Conditional formatting heatmap** is the perfect solution for your reporting requirements. This functionality was introduced in eazyBI version 6.2, released in 2021.  
We always recommend users to use the latest eazyBI version that includes new features and improvements: [Changelog - eazyBI for Jira](https://docs.eazybi.com/eazybi/set-up-and-administer/atlassian-data-center/changelog-eazybi-for-jira)

Regarding grouping issues by a similar text in the issue summary, I suggest checking this community post about the [JavaScript calculated custom field](https://community.eazybi.com/t/filter-open-issue-by-summary/6046/2) solution:

> [@Filter open issue by summary](https://community.eazybi.com/t/filter-open-issue-by-summary/6046/2):
>
> Hi @karim , I don’t recommend defining such calculated members in the Issue dimension. They are a performance risk. If you don’t have the option to create a new custom field in Jira, define a new JavaScript calculated custom field in eazyBI. See more details on how to do that here - [Global calculated fields](https://docs.eazybi.com/eazybi/data-import/data-from-jira/javascript-calculated-custom-fields/global-calculated-fields). Add parameters similar to the one below to your eazyBI advanced settings: [jira.customfield\_developer\_issue] name = "Issue summary Developer" data\_type = "string" dimension = true javasc…

Kind regards,  
Gerda // [support@eazybi.com](mailto:support@eazybi.com)

---

<div class="post-metadata">

**Author:** ![Behzad\_Nazarbakhsh](https://community.eazybi.com/user_avatar/community.eazybi.com/behzad_nazarbakhsh/32/7434_2.png) [@Behzad\_Nazarbakhsh](https://community.eazybi.com/u/Behzad_Nazarbakhsh)\
**Post date:** [June 12, 2025, 1:35pm UTC](https://community.eazybi.com/t/building-a-dynamic-heatmap-of-ocm-epics-with-project-columns-in-eazybi/20104/3 "2025-06-12T13:35:37Z")

</div>

@gerda.grantina, thanks for sharing the link. I want to handle it using an MXD query.  
The OCM Epic Name represents the issue type. The percentage in each cell indicates the proportion of completed OCM tasks relative to the total number of OCM tasks (where OCM tasks refer to child issues within the OCM Epic). Below is the expected output:

 ![Screenshot 2025-06-12 121505](https://community.eazybi.com/uploads/default/original/2X/7/7a32e1ff4172632005aa9bad79bbf012e8503a4f.png)
