4

我是 JIRA World 的新手,我的任务是开发一个显示图表(饼图、直方图等)的 JIRA 插件。用户将选择搜索条件和图表类型,并且用户应该能够保存这些图表(Word/PDF)。

我不知道我是否应该开发一个报告插件并使用JFreeChart进行图表或开发一个图表插件(我没有看到任何图表插件的例子)。我做了一些关于报告插件的研究,但我还没有找到一个例子来展示如何使用 JFreechart!我也没有找到任何示例展示如何使用 jasperReport(或其他工具)生成 word 或 PDF 报告。

用户应该从界面(管理、主页等)之类的选项卡访问插件

要显示的 KPI(关键绩效指标)示例:

  • 解决问题所花费的平均时间
  • 仍未解决的问题数量

PS:我使用的是 JIRA 4.3.3

4

6 回答 6

2

有一个 JIRA 插件可以将图表导出到 Word,它涵盖了您想要做的部分工作。 https://marketplace.atlassian.com/plugins/com.clariostechnology.officecharts.officecharts

另请参阅 Intelligent Reporter,它提供了更多用于格式化图表的选项,并允许您使用 Word 文件作为模板并填写图表和其他数据。

https://marketplace.atlassian.com/plugins/com.clariostechnology.intelligentreports

于 2012-11-17T06:11:15.577 回答
2

尝试阅读Jobin Kuruvilla的巨著“ JIRA 5.x Development Cookbook ”中的文章在 JIRA 中创建饼图。

最重要的是填充您的数据集,该数据集将用于生成所需的图表。考虑那本书中的示例,它显示了该插件的 java 方面:

public Chart generateChart(JiraAuthenticationContext authenticationContext, int width, int height) {
    try {
      final Map<String, Object> params = new HashMap<String, Object>();
      // Create Dataset
      DefaultPieDataset dataset = new DefaultPieDataset();

      dataset.setValue("One", 10L);
      dataset.setValue("Two", 15L);

      final ChartHelper helper = new PieChartGenerator(dataset, authenticationContext.getI18nHelper()).generateChart();
      helper.generate(width, height);

      params.put("chart", helper.getLocation());
      params.put("chartDataset", dataset);
      params.put("imagemap", helper.getImageMap());
      params.put("imagemapName", helper.getImageMapName());
      params.put("width", width);
      params.put("height", height);

      return new Chart(helper.getLocation(), helper.getImageMap(), helper.getImageMapName(), params);

    } catch (Exception e) {
      e.printStackTrace();
      throw new RuntimeException("Error generating chart", e);
    }
}

以及用于此目的的速度模板:

#if ($chart)
    #if ($imagemap)
        $imagemap
    #end
    <p class="report-chart">
        <img src='$baseurl/charts?filename=$chart' border='0' #if ($imagemap) usemap="\#$imagemapName" #end/>
    </p>
#end

这就是最基本的例子。此外,请查看ChartFactoryChartUtils接口,以更深入地了解如何创建各种类型的图表。

于 2013-09-17T07:35:51.590 回答
1

您不需要编写插件来执行此操作 - 这些是 JIRA 中的本机功能。如果你一心想写一个插件,我会使用 JFreeChart。请参阅 JIRA 图表插件和 JQL 过滤器以获取您列出的两个 KPI。

于 2011-08-30T16:47:56.290 回答
1

速度:

    #set($cht = $chart)
    #if ($cht)
    #if ($cht.imageMap)
    $cht.imageMap
    #end
    <p class="report-chart">
        <img src='$baseurl/charts?filename=$chart.location' border='0'
        #if ($cht.imageMap) usemap="\#$cht.imageMapName" #end/>
    </p>
    #end

网络:

@SuppressWarnings("unused")
public Chart getChart() {
    JiraAuthenticationContext authenticationContext = ComponentAccessor.getJiraAuthenticationContext();

     final int CHART_WIDTH = 300;
     final int CHART_HEIGHT = 300;

    try {
        final Map<String, Object> params = new HashMap<String, Object>();
        // Create Dataset
        DefaultPieDataset dataset = new DefaultPieDataset();

        dataset.setValue("One", 10L);
        dataset.setValue("Two", 15L);

        final I18nBean i18nBean = new I18nBean(authenticationContext.getUser().getDirectoryUser());

        final ChartHelper helper = new PieChartGenerator(dataset, i18nBean).generateChart();
        helper.generate(CHART_WIDTH, CHART_HEIGHT);

        params.put("chart", helper.getLocation());
        params.put("chartDataset", dataset);
        params.put("imagemap", helper.getImageMap());
        params.put("imagemapName", helper.getImageMapName());
        params.put("width", CHART_WIDTH);
        params.put("height", CHART_HEIGHT);

        Chart ch = new Chart(helper.getLocation(), helper.getImageMapHtml(), helper.getImageMapName(), params);
        return ch;

    } catch (Exception e) {
        e.printStackTrace();
        throw new RuntimeException("Error generating chart", e);
    }
}

结果:

在此处输入图像描述

于 2013-12-02T09:55:25.363 回答
0

节省插件编程时间的最佳选择是通过使用Better Excel Plugin导出 JIRA 数据在 Excel 中生成图表,同时为您提供令人难以置信的功能和灵活性。

它是如何工作的?

  1. 创建一个带有特殊占位符、实际数据标签的模板 XLSX 文件。
  2. 使用 Excel 中的所有图表功能定义所谓的命名范围并从中生成(空)图表。(由于 MS Excel 仍然是最通用和最广泛使用的数据可视化工具,几乎可以保证您的用例将得到支持,并且您会通过谷歌搜索网络找到大量帮助。)
  3. 当您导出此模板时,加载项将使用您的问题数据填充命名范围,并且图表“唤醒”!

最终结果可能如下所示(在它自己的工作表中):

在此处输入图像描述

于 2015-06-10T09:31:39.650 回答
-1

有关绘制各种类型的图表以可视化 JIRA 数据,请参阅本教程:http : //www.midori.hu/products/jira-pdf-view-plugin/documentation/charts

那里解释的技术依赖于在简洁的 Groovy 脚本中捕获您的自定义 KPI 计算逻辑,使用事实上的标准 JFreeChart 呈现图表,所有这些都由我们的 JIRA PDF View 插件提供支持。

在此处输入图像描述

(Discl:那里提到的插件是我们商业支持的软件。)

于 2012-11-26T10:46:08.923 回答