FVS圖表API

適用場景:安裝了「FineVis資料視覺化」插件的使用者,可參考本文了解 FineVis 範本的相關API。

版本

報表伺服器版本插件版本功能變動
11.0.16V1.15.1FVS圖表組件適配 API API

注:本文API不支援 FineVis 擴展圖表 類型的圖表組件。

duchamp.getWidgetByName

方法duchamp.getWidgetByName("widgetName")

獲取圖表組件物件,獲取後可以使用組件的方法和屬

注:暫不支援獲取表格中的圖表

     參數widgetNameFVS 圖表組件名稱
   回傳值object 當前圖表組件物件
     範例

範例:獲取「柱形圖組件」物件

duchamp.getWidgetByName("柱形圖組件")
  應用範例

-

    行動端支援行動端

getSeries

方法getSeries()獲取系列物件陣列
     參數--
   回傳值series[]當前圖表組件系列陣列
     範例

範例:獲取「柱形圖組件」物件的系列陣列

duchamp.getWidgetByName("柱形圖組件").getSeries();


  應用範例

-

    行動端支援行動端

series

方法series[seriesIndex]獲取系列物件
     參數seriesIndex預設圖表物件有一個 series 屬性,該物件儲存的是圖表內系列相關的資料資訊,是一個物件陣列。如果想要獲得圖表中某一個具體的系列物件,則需要指定對應的索引 seriesIndex,seriesIndex 從 0 開始計數
     範例範例:獲取「柱形圖組件」物件的第一個系列物件
var series=duchamp.getWidgetByName("柱形圖組件").getSeries();
console.log(series[0]);

注:寫在一起時正確寫法為 getSeries()[0] ,不支援 getSeries().series[0] 

  應用範例

-

    行動端支援行動端

series 屬性

屬性
類型說明
pointsArray當前系列的所有資料點
nameString當前系列的名稱,跟圖例顯示的系列名一致
typeString 

當前系列的圖表類型,目前包括的類型如下圖所示:

series.points

方法
series.points[pointIndex]

獲取資料點物件

需在獲取圖表系列物件之後使用

參數pointIndex

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

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

範例

範例:獲取「柱形圖組件」物件的第一個系列物件的第一個資料點

duchamp.getWidgetByName("柱形圖組件").getSeries()[0].points[0];


行動端支援行動端

points 屬性

屬性類型說明
nameString對於區域地圖來說,name 表示當前資料點的區域名,比如江蘇省,南通市等等
seriesNameString當前資料點所在的系列名
categoryString對於坐標軸圖,表示資料點所在分類的名稱
categroyArrayArray對於 多分類坐標軸圖,表示資料點所在分類陣列的名稱
valueNumber

對於坐標軸圖,表示資料點在值軸對應的數值

注:散點圖的 value 對應「值」欄位的數值

series Object當前資料點所在的系列

setSeriesVisible

方法setSeriesVisible()圖表顯示部分系列
     參數seriesIndex[]

seriesIndex:number

表示一個圖表中不同的系列,從 0 開始計數

   回傳值--
     範例

範例:顯示柱形圖組件的系列1和系列2

duchamp.getWidgetByName("柱形圖組件").setSeriesVisible([0,1]);


  應用範例

-

    行動端支援行動端

sortChart

方法sortChart(sortType)圖表排序API
     參數sortTypesortType 參數表示排序規則,1 表示升冪,-1 表示降冪,不寫參數則升冪降冪互相切換
   回傳值--
     範例

範例:

duchamp.getWidgetByName("柱形圖組件").sortChart();


  應用範例

-

    行動端支援行動端

openAutoTooltip

注:擴展圖表類型僅支援特殊形狀柱形圖。

方法openAutoTooltip([delay, initPoints])資料點提示輪播API
     參數delay, initPoints

delay 資料點提示的切換時間間隔,預設為 3s

initPoints 輪播資料點提示對應的資料點集合,預設為圖表內所有資料

注:V2.4.0 及之後版本才支援使用 initPoints

   回傳值--
     範例

範例1:

duchamp.getWidgetByName("柱形圖組件").openAutoTooltip(3000);

注:3000代表輪播時間間隔3秒,可自行調整
範例2:僅第一個系列所有資料點輪播提示

var vanchart=duchamp.getWidgetByName("圖表組件");
vanchart.openAutoTooltip(1000,vanchart.getSeries()[0].points); 
//資料點取圖表組件第一個系列所有資料點
  應用範例

FVS基礎圖表實現資料點提示輪播

    行動端支援行動端

setMapZoom

方法setMapZoom(mapZoom)設定地圖縮放等級和中心點
     參數MapZoomProps = {
  zoomLevel: number | string;
  viewCenter:  [number, number];
};
zoomLevel:縮放等級,值區間一般在0-18。數值越大,層級越高,地圖顯示越細緻,顯示的經緯度範圍越小

viewCenter:中心點,[經度,緯度]

   回傳值--
     範例

範例:

duchamp.getWidgetByName("地圖1").setMapZoom({zoomLevel: 5, viewCenter: [11040]});


  應用範例

-

    行動端支援行動端

getZoom

方法getZoom()獲取地圖縮放層級
     參數--
   回傳值number縮放等級,值區間一般在0-18。數值越大,層級越高,地圖顯示越細緻,顯示的經緯度範圍越小
     範例

範例:

duchamp.getWidgetByName("地圖1").getZoom();
  應用範例

-

    行動端支援行動端

getCenter

方法getCenter()獲取地圖中心點
     參數--
   回傳值

 [number, number]

中心點,[經度,緯度]
     範例

範例:

duchamp.getWidgetByName("地圖1").getCenter();
  應用範例

-

    行動端支援行動端

panTo

方法panTo(center)地圖轉移中心點
     參數center

center 中心點,[緯度,經度]

 注:panTo API中「緯度」在前,「經度」在後

   回傳值--
     範例

範例:

duchamp.getWidgetByName("地圖1").panTo([40,118]); //根據經緯度行動中心點
  應用範例

-

    行動端支援行動端

drillDown

方法drillDown(area)鑽取地圖向下鑽取
     參數areaarea 不是單純的區域名,而是區域名下對應的一系列資訊,可根據區域名獲取到 area
   回傳值--
     範例

範例:

var chart =duchamp.getWidgetByName("鑽取區域地圖1_頁面1");//獲取圖表
var quyu = duchamp.getWidgetByName("省份").getValue(); //獲取下拉框元件值
if (chart.getLayerIndex() > 0)
chart.drillUp(chart.getLayerIndex() - 1); //若已經下鑽,點選其他區域需傳回上一層級後再次下鑽
var areas = [];
chart.getSeries().forEach(ser => areas.push(...ser.points));
var len = areas.length;
for (var i = 0; i < len; i++) {
if (areas[i].name == quyu) {
chart.drillDown(areas[i]);
break;
}
 }
显示代码


  應用範例

-

    行動端支援行動端

drillUp

方法drillUp(index)鑽取地圖向上鑽取
     參數indexindex:自然數,表示鑽取層級,從0開始:0、1、2……
   回傳值--
     範例

範例:

var chart =duchamp.getWidgetByName("鑽取區域地圖1_頁面1");//獲取圖表
var quyu = duchamp.getWidgetByName("省份").getValue(); //獲取下拉框元件值
if (chart.getLayerIndex() > 0)
chart.drillUp(chart.getLayerIndex() - 1); //若已經下鑽,點選其他區域需傳回上一層級後再次下鑽
var areas = [];
chart.getSeries().forEach(ser => areas.push(...ser.points));
var len = areas.length;
for (var i = 0; i < len; i++) {
if (areas[i].name == quyu) {
chart.drillDown(areas[i]);
break;
}
 }
显示代码


  應用範例

-

    行動端支援行動端

getLayerIndex

方法getLayerIndex()獲取鑽取地圖當前鑽取層級,獲取的層級從0開始:0、1、2……
     參數--
   回傳值number鑽取地圖當前鑽取層級
     範例

範例:

duchamp.getWidgetByName("鑽取地圖1").getLayerIndex();


  應用範例

-

    行動端支援行動端

getLayerNames

方法getLayerNames()獲取鑽取目錄名稱,結果為陣列,例如:["中國", "湖南省", "長沙市"]
     參數--
   回傳值string[]陣列,例如:["中國", "湖南省", "長沙市"]
     範例

範例:

duchamp.getWidgetByName("鑽取地圖1").getLayerNames();


  應用範例

-

    行動端支援行動端



附件列表


主題: 二次開發
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
中文(繁體)

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

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

不再提示

7s后關閉

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

反馈已提交

网络繁忙

反饋已提交

網絡繁忙