本發(fā)明涉及數據分析技術領域,具體地說是一種基于階梯瀑布圖的數據計算方法。
背景技術:
echarts是一個純javascript的圖表庫,可以流暢的運行在pc和移動設備上,兼容當前絕大部分瀏覽器(ie8/9/10/11,chrome,firefox,safari等),底層依賴輕量級的canvas類庫zrender,提供直觀,生動,可交互,可高度個性化定制的數據可視化圖表。
echarts提供了常規(guī)的折線圖,柱狀圖,散點圖,餅圖,k線圖,用于統計的盒形圖,用于地理數據可視化的地圖,熱力圖,線圖,用于關系數據可視化的關系圖,treemap,多維數據可視化的平行坐標,還有用于bi的漏斗圖,儀表盤,并且支持圖與圖之間的混搭。
echarts由數據驅動,數據的改變驅動圖表展現的改變。因此動態(tài)數據的實現也變得異常簡單,只需要獲取數據,填入數據,echarts會找到兩組數據之間的差異然后通過合適的動畫去表現數據的變化。配合timeline組件能夠在更高的時間維度上去表現數據的信息。
技術實現要素:
本發(fā)明的技術任務是針對以上不足之處,提供一種基于階梯瀑布圖的數據計算方法,能夠計算出echarts工具正確展示的數據,清晰的展示出資產、銷售額等數據的變化情況和累計數據和的情況,對數據的處理和推算做出比較詳細的介紹。
本發(fā)明解決其技術問題所采用的技術方案是:
一種基于階梯瀑布圖的數據計算方法,階梯瀑布圖可以展示出某個時間線上累計值和變化值的增減情況;如11月1日的初始成本值為0、變化值為增加值、增加量為900、累計值為900,11月2日成本值為900、變化值為增加值、增加量為345、累計值為900+345……但到了11月4日,成本值為900+345+393、變化值為減少值、減少量為108、累計值為900+345+393-108;根據圖的高度,可以清晰了解累計值的變化趨勢;根據增減類型區(qū)分,可以清晰了解每個時間區(qū)間的增減值;
階梯瀑布圖的生成方式,首先,圖的option中包含的legend屬性設置為包含data:['支出','收入']的對象;其次option中包含的xaxis屬性的data屬性設置為變化的時間線組成的數組;最后option中包含的series屬性設置為包含三個元素的數組,分別為輔助、支出和收入;
階梯瀑布圖的三組數據,收入數據為:[900,345,393,'-','-',135,178,286,'-','-','-'],支出數據為:['-','-','-',108,154,'-','-','-',119,361,203];支出和收入數據中包含的'-'為占位符,在echarts的后臺中,占位符被解析為0,后面有詳細說明;其中,所有數據皆為正值而且除去所有占位符,時間點數=支出數據數+收入數據數;另外還有一組輔助數據,可以簡單理解為累計值,但卻不是真實累計值:[0,900,1245,1530,1376,1376,1511,1689,1856,1495,1292],這組累計值對階梯瀑布圖的正確顯示起著決定性作用;
輔助值的計算方法,首先要明確成本值,即為整個時間線之前的成本數據,其次要明確真?zhèn)€時間線上的變化值,假設一組時間線為[2016/1/1,2016/2/1,2016/3/1,2016/4/1,2016/5/1,2016/6/1,2016/7/1,2016/8/1,2016/9/1,2016/10/1],一組變化值為[-0.05,-0.02,0.17,-0.14,0.07,-0.11,0.11,-0.03,0.05,-0.12],成本值為4.09。計算階梯瀑布圖中所需要的三組數據時,首先要將變化值拆分成兩組值,增加值和減少值,通過增加值和減少值歸遞求解,經過九次計算將輔助值計算完成,將變化值根據正負拆分成兩組變化值,并賦給option的series和option的series,階梯瀑布圖就能夠正確的顯示出來。
進一步的,支出和收入為legend中包含的兩個元素。
進一步的,整個時間線為成本值發(fā)生變化之前的成本數據。
本發(fā)明的一種基于階梯瀑布圖的數據計算方法和現有技術相比,具有以下有益效果:
提出一種用階梯瀑布圖分析數據累計值和變化值的方案,為清晰展示變化值和累計值的數據分析方案;根據階梯瀑布圖的展示原理,推算出階梯瀑布圖的增減值和輔助值的計算方法:a1=a0+b0+c1。
具體實施方式
下面結合具體實施例對本發(fā)明作進一步說明。
一種基于階梯瀑布圖的數據計算方法,階梯瀑布圖可以展示出某個時間線上累計值和變化值的增減情況;如11月1日的初始成本值為0、變化值為增加值、增加量為900、累計值為900,11月2日成本值為900、變化值為增加值、增加量為345、累計值為900+345……但到了11月4日,成本值為900+345+393、變化值為減少值、減少量為108、累計值為900+345+393-108;根據圖的高度,可以清晰了解累計值的變化趨勢;根據增減類型區(qū)分,可以清晰了解每個時間區(qū)間的增減值;
階梯瀑布圖的生成方式,首先,圖的option中包含的legend屬性設置為包含data:['支出','收入']的對象;其次option中包含的xaxis屬性的data屬性設置為變化的時間線組成的數組;最后option中包含的series屬性設置為包含三個元素的數組,分別為輔助、支出和收入;后面兩個元素為legend中包含的兩個元素;
階梯瀑布圖的三組數據,收入數據為:[900,345,393,'-','-',135,178,286,'-','-','-'],支出數據為:['-','-','-',108,154,'-','-','-',119,361,203];支出和收入數據中包含的'-'為占位符,在echarts的后臺中,占位符被解析為0,后面有詳細說明;其中,所有數據皆為正值而且除去所有占位符,時間點數=支出數據數+收入數據數;另外還有一組輔助數據,可以簡單理解為累計值,但卻不是真實累計值:[0,900,1245,1530,1376,1376,1511,1689,1856,1495,1292],這組累計值對階梯瀑布圖的正確顯示起著決定性作用;
輔助值的計算方法,首先要明確成本值,即為整個時間線(成本值發(fā)生變化)之前的成本數據,其次要明確真?zhèn)€時間線上的變化值,假設一組時間線為[2016/1/1,2016/2/1,2016/3/1,2016/4/1,2016/5/1,2016/6/1,2016/7/1,2016/8/1,2016/9/1,2016/10/1],一組變化值為[-0.05,-0.02,0.17,-0.14,0.07,-0.11,0.11,-0.03,0.05,-0.12],成本值為4.09。計算階梯瀑布圖中所需要的三組數據時,首先要將變化值拆分成兩組值,增加值和減少值,通過增加值和減少值歸遞求解,經過九次計算將輔助值計算完成,將變化值根據正負拆分成兩組變化值,并賦給option的series和option的series,階梯瀑布圖就能夠正確的顯示出來。如b列為增加值、c列為減少值。a列可以通過a、b、c列的值遞歸求解,公式為a1=a0+b0+c1,經過九次計算即可將輔助值計算完成,如下:[4.09,4.07,4.07,4.1,4.1,4.06,4.06,4.14,4.14,4.07],并將其賦值給option的series[0]。
然后將變化值根據正負拆分成兩組變化值,并賦給option的series[1]和option的series[2],階梯瀑布圖就能夠正確的顯示出來。
通過上面具體實施方式,所述技術領域的技術人員可容易的實現本發(fā)明。但是應當理解,本發(fā)明并不限于上述的具體實施方式。在公開的實施方式的基礎上,所述技術領域的技術人員可任意組合不同的技術特征,從而實現不同的技術方案。
除說明書所述的技術特征外,均為本專業(yè)技術人員的已知技術。