2016-09-27 81 views
2

我正在实现一个窗口小部件专业版(在Jaspersoft Studio Professional 6.1中),特别是甘特图,它基本上列出了公司运行的所有项目。数据是正确的,图表按预期工作,但我似乎找不到根据“项目”数量动态调整图表对象的方法,例如,现在我有5个项目,甘特图看起来很好,w = 802px h = 183px。但是如果我有10个项目,组件不会调整大小,这意味着它不会在其高度上“增长”,以适应新项目导致的不可读图表。Resize Widgets Pro(甘特)

是否可以根据我要显示的项目数量自动调整组件大小,可能会增加到报告的另一页?

我需要执行哪些步骤,类等以使其正常工作?此组件没有定制程序类选项。

这可能吗?

谢谢你的帮助:)

回答

4

@Synamoon!我从你的问题陈述中了解到,当存在大量数据时,你的甘特图变得笨拙。图表的大小是固定的,根据它的数据内容,但使用但是,图表大小是可以改变的API不调整自身 -

yourChartObj.resizeTo(width, height); 

但在你的情况我建议你使用甘特的滚动功能FusionCharts的图表可以解决您的问题。

这里是具有甘特图滚动功能的一个例子 -

FusionCharts.ready(function() { 
 
    var smoPlan = new FusionCharts({ 
 
     type: 'gantt', 
 
     renderAt: 'chart-container', 
 
     width: '650', 
 
     height: '300', 
 
     dataFormat: 'json', 
 
     dataSource: { 
 
      "chart": { 
 
       "dateformat": "mm/dd/yyyy", 
 
       "caption": "Project Gantt", 
 
       "subcaption": "From 1st Feb 2007 - 31st Aug 2007", 
 
       "ganttpaneduration": "3", 
 
       "ganttpanedurationunit": "m", 
 
       "showborder": "0" 
 
      }, 
 
      "categories": [ 
 
       { 
 
        "category": [ 
 
         { 
 
          "start": "02/01/2007", 
 
          "end": "04/01/2007", 
 
          "label": "Q1" 
 
         }, 
 
         { 
 
          "start": "04/01/2007", 
 
          "end": "07/01/2007", 
 
          "label": "Q2" 
 
         }, 
 
         { 
 
          "start": "07/01/2007", 
 
          "end": "09/01/2007", 
 
          "label": "Q3" 
 
         } 
 
        ] 
 
       }, 
 
       { 
 
        "category": [ 
 
         { 
 
          "start": "02/01/2007", 
 
          "end": "03/01/2007", 
 
          "label": "Feb" 
 
         }, 
 
         { 
 
          "start": "03/01/2007", 
 
          "end": "04/01/2007", 
 
          "label": "Mar" 
 
         }, 
 
         { 
 
          "start": "04/01/2007", 
 
          "end": "05/01/2007", 
 
          "label": "Apr" 
 
         }, 
 
         { 
 
          "start": "05/01/2007", 
 
          "end": "06/01/2007", 
 
          "label": "May" 
 
         }, 
 
         { 
 
          "start": "06/01/2007", 
 
          "end": "07/01/2007", 
 
          "label": "Jun" 
 
         }, 
 
         { 
 
          "start": "07/01/2007", 
 
          "end": "08/01/2007", 
 
          "label": "Jul" 
 
         }, 
 
         { 
 
          "start": "08/01/2007", 
 
          "end": "09/01/2007", 
 
          "label": "Aug" 
 
         } 
 
        ] 
 
       } 
 
      ], 
 
      "processes": { 
 
       "fontsize": "12", 
 
       "isbold": "1", 
 
       "align": "right", 
 
       "headertext": "What to do?", 
 
       "headerfontsize": "18", 
 
       "headervalign": "bottom", 
 
       "headeralign": "right", 
 
       "process": [ 
 
        { 
 
         "label": "Identify Customers" 
 
        }, 
 
        { 
 
         "label": "Survey 50 Customers" 
 
        }, 
 
        { 
 
         "label": "Interpret Requirements" 
 
        }, 
 
        { 
 
         "label": "Study Competition" 
 
        }, 
 
        { 
 
         "label": "Documentation of features" 
 
        }, 
 
        { 
 
         "label": "Brainstorm concepts" 
 
        }, 
 
        { 
 
         "label": "Design & Code" 
 
        }, 
 
        { 
 
         "label": "Testing/QA" 
 
        }, 
 
        { 
 
         "label": "Documentation of product" 
 
        }, 
 
        { 
 
         "label": "Global Release" 
 
        } 
 
       ] 
 
      }, 
 
      "datatable": { 
 
       "headervalign": "bottom", 
 
       "datacolumn": [ 
 
        { 
 
         "headertext": "Who does?", 
 
         "headerfontsize": "18", 
 
         "headervalign": "bottom", 
 
         "headeralign": "right", 
 
         "align": "left", 
 
         "fontsize": "12", 
 
         "text": [ 
 
          { 
 
           "label": "John" 
 
          }, 
 
          { 
 
           "label": "David" 
 
          }, 
 
          { 
 
           "label": "Mary" 
 
          }, 
 
          { 
 
           "label": "Andrew" 
 
          }, 
 
          { 
 
           "label": "Tiger" 
 
          }, 
 
          { 
 
           "label": "Sharon" 
 
          }, 
 
          { 
 
           "label": "Neil" 
 
          }, 
 
          { 
 
           "label": "Harry" 
 
          }, 
 
          { 
 
           "label": "Chris" 
 
          }, 
 
          { 
 
           "label": "Richard" 
 
          } 
 
         ] 
 
        } 
 
       ] 
 
      }, 
 
      "tasks": { 
 
       "task": [ 
 
        { 
 
         "start": "02/04/2007", 
 
         "end": "02/10/2007" 
 
        }, 
 
        { 
 
         "start": "02/08/2007", 
 
         "end": "02/19/2007" 
 
        }, 
 
        { 
 
         "start": "02/19/2007", 
 
         "end": "03/02/2007" 
 
        }, 
 
        { 
 
         "start": "02/24/2007", 
 
         "end": "03/02/2007" 
 
        }, 
 
        { 
 
         "start": "03/02/2007", 
 
         "end": "03/21/2007" 
 
        }, 
 
        { 
 
         "start": "03/21/2007", 
 
         "end": "04/06/2007" 
 
        }, 
 
        { 
 
         "start": "04/06/2007", 
 
         "end": "07/21/2007" 
 
        }, 
 
        { 
 
         "start": "07/21/2007", 
 
         "end": "08/19/2007" 
 
        }, 
 
        { 
 
         "start": "07/28/2007", 
 
         "end": "08/24/2007" 
 
        }, 
 
        { 
 
         "start": "08/24/2007", 
 
         "end": "08/27/2007" 
 
        } 
 
       ] 
 
      } 
 
     } 
 
    }).render(); 
 
});
<script src="http://static.fusioncharts.com/code/latest/fusioncharts.js"></script> 
 
<div id="chart-container">FusionCharts will render here</div>

您可以探索更多有关herehere甘特图属性和设置和各种甘特图的实施方式。

如果您有任何其他问题,请让我知道。

谢谢!

+0

感谢您的回复Arnab003,我会尽快测试这个,只要我有一个更稳定的报告。现在,由于任务分组功能,我在甘特图的另一个问题上遇到了一些麻烦。 – Synamoon

+0

当然!随时分享您的问题...谢谢! :) – Arnab003