2015-01-13 31 views
2

我正在使用amCharts创建一个漏斗图表。 Amcharts提供的默认演示是一个垂直漏斗。如何在AmCharts中将漏斗图旋转90度?

如果我想使用Amcharts获取水平漏斗图,该怎么办?

请在此处查看代码。 http://jsfiddle.net/us8hgp6k/

var chart = AmCharts.makeChart("chartdiv", { 
    "type": "funnel", 
    "theme": "none", 
    "dataProvider": [{ 
     "title": "Website visits", 
     "value": 300 
    }, { 
     "title": "Downloads", 
     "value": 123 
    }, { 
     "title": "Requested prices", 
     "value": 98 
    }, { 
     "title": "Contaced", 
     "value": 72 
    }, { 
     "title": "Purchased", 
     "value": 35 
    }, { 
     "title": "Asked for support", 
     "value": 25 
    }, { 
     "title": "Purchased more", 
     "value": 18 
    }], 
    "titleField": "title", 
    "marginRight": 160, 
    "marginLeft": 15, 
    "labelPosition": "right", 
    "funnelAlpha": 0.9, 
    "valueField": "value", 
    "startX": 0, 
    "neckWidth": "40%", 
    "startAlpha": 0, 
    "outlineThickness":1, 
    "neckHeight": "30%", 
    "balloonText": "[[title]]:<b>[[value]]</b>"  
}); 

回答

2

没有方法来创建从funnel型图表的水平漏斗。 (rotate属性仅颠倒图表。)

但是,您可以通过使用条形图并在图表的下半部分(“否定”)上覆盖背景来模拟水平漏斗。

参见this JSFiddle

注意这些部件来重新创建:

  1. typeserial。这将创建一个条形图。
  2. dataProvider中的每个数据值也具有否定的值。
  3. 还有两个图正在绘制。第一个图使用否定值绘制否定(图下面的空白)。第二个图形使用正值绘制漏斗。通知fillToGraph设置为fromGraph;这是另一个图的id属性。

根据该文件,在fillToGraph属性:

你可以在这里设置其他图形,如果fillAlpha> 0,从这个图表fillToGraph的区域将被填充(而不是填充区域到X轴)。