反饋已提交

網絡繁忙

如何獲取圖表物件

一、獲取圖表塊物件

1
用法:可透過【FR.Chart.WebUtils.getChart(chartID)】獲取圖表塊物件 chartWidget 。

注:chartID 為字串型別,表示當前圖表所在圖表塊的唯一標識 ID,在 JS 中書寫時需區分大小寫,與實際組件名稱保持完全一緻。

方法型別 說明
FR.Chart.WebUtils.getChart("chartID")儲存格chartID 為儲存格名稱,如:A1
FR.Chart.WebUtils.getChart("chartID")懸浮元素chartID 為懸浮元素的名稱,選中懸浮元素,右擊可查看或設定懸浮元素名稱
FR.Chart.WebUtils.getChart("chartID")決策報表決策報表內新增的圖儲存格件,chartID 為組件名稱
FR.Chart.WebUtils.getChart("chartId","reportName")決策報表策報表內有多個報表塊時,獲取報表塊中的圖表

注:行動端支援部分 JS 呼叫該方法。

2
範例:獲取 A1 儲存格內圖表塊物件的寫法如下。
FR.Chart.WebUtils.getChart("A1")

3
注意。
  1. 該API不支援擴展圖表。

  2. 上述所有獲取物件的方法在行動端的實現方式跟 PC 端是有差異的,行動端只支援部分 JS 呼叫這些方法。

  3. 行動端決策報表的報表塊內圖表不支援呼叫上述所有的方法。

二、獲取圖表物件

1
用法。
  1. 獲取圖表塊物件 chartWidget 後,便可以使用【chartWidget.getChartWithIndex(chartIndex)】來獲取圖表物件,預設圖表塊裏面只有一個圖表,這時的 chartIndex 為 0。

  2. 而當設定了圖表切換,即一個圖表塊內有多個圖表時,需要傳入具體的 chartIndex 來獲取具體的圖表物件。

  3. chartIndex 從 0 開始計數,這就意味着如果想獲取第 n 個圖表,那麼傳入的 chartIndex 應該為 n-1。

注:chartIndex 為數字體。

方法
FR.Chart.WebUtils.getChart(chartID).getChartWithIndex(chartIndex)

注:行動端支援部分 JS 呼叫該方法。

2
範例:圖表切換設定了 3 個圖表,獲取第 3 個圖表物件的寫法如下。
FR.Chart.WebUtils.getChart("A1").getChartWithIndex(2)

三、獲取系列物件

1
用法。
  1. 預設 chart 物件有一個 series 屬性,該物件儲存的是圖表內系列相關的資料資訊,是一個物件陣列。

  2. 如果想要獲得圖表中某一個具體的系列物件,則需要指定對應的索引 seriesIndex,seriesIndex 從 0 開始計數。

注:對於餅圖來說,一個系列就是一個餅圖,例如:chart.series[0].points 表示第一個餅圖的所有扇形的資料點。

方法
chart.series[seriesIndex]

注:行動端支援部分 JS 呼叫該方法。

2
範例
  1. 假設已獲取到圖表物件 PieChart,現在想要獲取裏面的第 1 個系列物件,那麼使用【PieChart.series[0]】即可得到。

  2. 可以在瀏覽器中【列印】。

var PieChart=FR.Chart.WebUtils.getChart("A1").getChartWithIndex(2);
console.log(PieChart.series[0]);

四、獲取資料點物件

1
用法。
  1. 每個 series 物件裏面又有一個 points 的屬性,也是一個物件陣列,這個 points 陣列裏面存放的就是我們想要的 point 資料點物件。

  2. 如果需要獲取某個具體的資料點物件,則需要指明該資料點的索引 pointIndex,pointIndex 從 0 開始計數。

方法
series.points[pointIndex]

2
範例
  1. 【chart.series[0].points】,可獲取第一個系列下的所有資料點集合。那麼如果想拿到圖表下所有資料點的集合該怎麼做呢?只需要一個簡單的遍曆操作便可以完成。

var PieChart=FR.Chart.WebUtils.getChart("A1").getChartWithIndex(2);
var points = [];
PieChart.series.forEach(function (ser){    
points = points.concat(ser.points);
})
console.log(points);

五、資料點物件中的屬性

1
用法。
  1. 某些場景下,需要的可能只是滿足某一特定條件下的一類資料點集合,這時可以透過 Array.filter 來指定過濾條件,進而篩選出想要的資料點集合。

  2. 這裏對資料點物件中的某些屬性做一下介紹,編寫過濾條件的時候需要使用。

屬性    含義
point.name資料點的名稱
point.seriesName資料點對應的系列名稱
point.category資料點對應的分類名
point.value資料點的值
point.isVisible判斷資料點是否可見
chart.showTooltip(point)觸發資料點提示

2
範例:篩選值大於 0.1 的資料點的集合,寫法如下。
var PieChart=FR.Chart.WebUtils.getChart("A1").getChartWithIndex(2);
var points = [];
PieChart.series.forEach(function (ser){
    points = points.concat(ser.points);
})
points = points.filter(function (p)return p.value > 0.1; })

六、圖表參數指派

  1. FR.Chart.WebUtils.changeParameter() 可用於改變圖表參數重新請求資料,呼叫API方法如下。

FR.Chart.WebUtils.changeParameter({
chartID: chartID,
para: {
    參數名: 參數值
    }
})
  1. 例如要將「華東」作為 area 參數的值傳遞給 chart1 ,寫法如下。

FR.Chart.WebUtils.changeParameter({
chartID: 'chart1',
para: {
    area: '華東'
    }
})



附件列表


主題: 圖表應用
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙