翻譯|使用教程|編輯:楊鵬連|2021-07-27 11:28:33.450|閱讀 198 次
概述:在這篇博文中,我們將借助示例銷售數(shù)據(jù)集討論 DataStore、DataTable 的用法以及 DataTable 支持的多種操作。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
FusionCharts Suite XT是全面的跨平臺、跨瀏覽器JavaScript圖表套包,其中包括FusionCharts XT、PowerCharts XT 、FusionWidgets XT、FusionMaps XT。支持 ASP、 ASP.NET、 PHP、 JSP、 ColdFusion、 Ruby on Rails、 JavaScript、甚至簡單的HTML頁面。它是你值得信賴的JavaScript圖表解決方案,目前在全球有45萬用戶選擇Fusioncharts來制作專業(yè)的JavaScript圖表。
數(shù)據(jù)預(yù)處理、數(shù)據(jù)過濾和數(shù)據(jù)操作是創(chuàng)建分析報告的先決過程的組成部分。在處理大量數(shù)據(jù)時,尋找簡化方法使您能夠在盡可能短的時間內(nèi)正確處理數(shù)據(jù)通常會變得麻煩和乏味。但現(xiàn)在不是了。FusionCharts 具有內(nèi)存中的 DataStore,可讓您高效地處理大量數(shù)據(jù)。
在這篇博文中,我們將借助示例銷售數(shù)據(jù)集討論 DataStore、DataTable 的用法以及 DataTable 支持的多種操作。
為什么 DataStore 和 DataTable 是創(chuàng)建報告的理想選擇?
FusionCharts 的DataStore是一種表格數(shù)據(jù)的內(nèi)存存儲,有助于簡化數(shù)據(jù)預(yù)處理和操作過程。它包含一個DataTable來表示可以對其執(zhí)行操作的數(shù)據(jù)。它還擁有多種操作符,主要負責(zé)提供易于使用的接口來處理數(shù)據(jù)。
如何輕松地為我的數(shù)據(jù)集定義模式?
在 FusionCharts 中,為DataTable定義數(shù)據(jù)架構(gòu)非常容易。您只需要聲明一個對象數(shù)組,其中每個對象代表實際DataTable中的一列。例如,在我們的銷售報告示例中,我們可能需要針對地區(qū)或國家/地區(qū)跟蹤每天的銷售數(shù)量。這種場景的架構(gòu)如下所示。
let schema = [
{
name: "Country",
type: "string"
},
{
name: "Time",
type: "date",
format: "%-m/%-d/%Y"
},
{
name: "Sales",
type: "number"
}
];
與定義的模式匹配的相應(yīng)數(shù)據(jù)集可能如下所示。
let data = [
["United States", "1/4/2011", 16.448],
["United States", "1/5/2011", 272.736],
["United States", "1/5/2011", 11.784],
["United States", "12/31/2014", 20.72],
["United States", "12/31/2014", 13.904],
["United States", "12/31/2014", 3.024]
];
如何僅查看 DataTable 的特定列?
要僅查看數(shù)據(jù)集中的特定列,您可以使用選擇操作。您可以使用此操作根據(jù)您的要求使用不同的標(biāo)準(zhǔn)從數(shù)據(jù)表中選擇一個或多個列。
以下是僅選擇我們數(shù)據(jù)集的Country和Sales列的示例代碼。
let fusionDataStore = new FusionCharts.DataStore(); let fusionTable = fusionDataStore.createDataTable(data, schema); let selectedData = fusionTable.query(FusionCharts.DataStore.Operators.select(['Country', 'Sales']));對 DataTable 的數(shù)據(jù)進行排序的簡單方法是什么?
您可以根據(jù)自己的喜好輕松地對DataTable 中的數(shù)據(jù)進行排序。例如,您可能需要按降序繪制公司多年來賺取的收入,以便您可以快速找出公司創(chuàng)收方面最成功和最不成功的時間段。
示例代碼如下所示。
var sortQuery = sort([ {column: 'Sales', order: 'desc'} ]); var sortedData = dataTable.query(customSortQuery);DataStore還允許您進行自定義排序。
我可以根據(jù)我的喜好過濾數(shù)據(jù)嗎?
該數(shù)據(jù)存儲提供了一組操作,你可以用它來過濾數(shù)據(jù)值從一個大的數(shù)據(jù)集,基于一個或多個條件。如果對DataTable應(yīng)用這些操作之一,它會生成一個包含過濾數(shù)據(jù)的新子表。
在下面的代碼示例中,想法是過濾在Country列中具有United States值的所有列。
var filter1 = FusionCharts.DataStore.Operators.equals('Country', 'United States'); var dataTable = dataT.query(filter1);如何在我的數(shù)據(jù)集上應(yīng)用數(shù)據(jù)透視操作?
該數(shù)據(jù)存儲的樞軸功能是一個表格表達轉(zhuǎn)換成另一操作者; 更具體地說,從行到列級別。
FusionCharts.DataStore.Operators.pivot(groupConfigArr, pivotColumn, aggrConfigArr);從上面的代碼我們可以看出,pivot操作總共需要三個參數(shù);按配置分組的數(shù)組、樞軸列的名稱和聚合配置數(shù)組。
是否可以同時對 DataTable 中的數(shù)據(jù)應(yīng)用多個過濾器?
該管道是,可以讓你在一個序列運行兩個或多個數(shù)據(jù)操作的操作。您可以使用管道在一個步驟中將它們組合在一起并將它們應(yīng)用到DataTable,而不是一個一個地將多個過濾器應(yīng)用于創(chuàng)建多個 DataTable的DataTable。這只會創(chuàng)建一個 DataTable。
假設(shè)您要過濾關(guān)于兩列(即Country和Sales )的數(shù)據(jù)。您可以使用管道函數(shù)立即生成過濾結(jié)果,如下所示。
filter1 = FusionCharts.DataStore.Operators.equals('Country', 'India'); filter2 = FusionCharts.DataStore.Operators.greater('Sales', 3); pipeDataTable = fusionTable.query(FusionCharts.DataStore.Operators.pipe(filter1, filter2));所以,我們來了!內(nèi)存FusionCharts的數(shù)據(jù)存儲取得了它很容易和輕松做到的創(chuàng)造高品質(zhì)的報告的先決條件設(shè)置。數(shù)據(jù)預(yù)處理、過濾和操作;一切都只是幾個函數(shù)調(diào)用。該數(shù)據(jù)存儲防止你提供幫助的功能是做引擎蓋下所有的辛勤工作重新創(chuàng)建輪。
此外,F(xiàn)usionCharts 支持 Javascript、Angular、React、jQuery、Vue.js、Ember、React Native、AngularJS、Svelte、ASP.NET、PHP、Java、Ruby on Rails 和 Django 的各種開箱即用的綁定。
想要購買FusionCharts Suite XT正版授權(quán),或了解更多產(chǎn)品信息請點擊
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: