專利名稱:圖表推薦的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)領(lǐng)域,更具體地,涉及圖表推薦。
背景技術(shù):
圖表是數(shù)據(jù)的圖形表示,在圖表中,數(shù)據(jù)通過符號來表示,諸如柱狀圖中的柱、折線圖中的線、或餅 狀圖中的塊。圖表可表示表格式的數(shù)字?jǐn)?shù)據(jù)、函數(shù)、或某些類型的定量結(jié)構(gòu)。圖表常被用于使大量數(shù)據(jù)和數(shù)據(jù)的各部分間的關(guān)系便于理解。與用來生成圖表的原始數(shù)據(jù)相比,圖表通??杀桓焖俚亻喿x。
發(fā)明內(nèi)容
提供了圖表推薦。提供本發(fā)明內(nèi)容以便以簡化形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念。此發(fā)明內(nèi)容既不旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征。本發(fā)明內(nèi)容也不旨在用于限制所要求保護(hù)的主題的范圍。提供了圖表推薦。首先,可確定數(shù)據(jù)集的匯總,并且基于該匯總,可將數(shù)據(jù)集中的每個列和行歸類到各類別中。接著,基于數(shù)據(jù)集中的每個列和行的類別,數(shù)據(jù)集可被映射到多個圖表類型。隨后可對多個圖表類型中的每一個進(jìn)行排序。以上概括描述和以下詳細(xì)描述兩者都提供了示例,并且只是說明性的。因此,以上概括描述和以下詳細(xì)描述不應(yīng)當(dāng)被認(rèn)為是限制性的。此外,除了本文中所闡述的那些特征或變體以外,還可以提供其他特征或變體。例如,實施例可涉及具體實施方式
中所描述的各種特征組合和子組合。
合并在本公開中并構(gòu)成其一部分的附圖示出本發(fā)明的實施例。在附圖中圖I是操作環(huán)境的框圖;圖2是用于提供圖表推薦的方法的流程圖;圖3是示出第一用戶界面的示圖;圖4是示出第二用戶界面的示圖;以及圖5是包括計算設(shè)備的系統(tǒng)的框圖。
具體實施例方式以下詳細(xì)描述參考各個附圖。只要可能,就在附圖和以下描述中使用相同的附圖標(biāo)記來指示相同或相似的元件。盡管可能描述了本發(fā)明的實施例,但修改、改編、以及其他實現(xiàn)是可能的。例如,可對附圖中所示的元素進(jìn)行置換、添加、或修改,并且可通過對所公開的方法置換、重新排序、或添加階段來修改本文中所描述的方法。因此,以下詳細(xì)描述并不限制本發(fā)明。相反,本發(fā)明的正確范圍由所附權(quán)利要求書定義。圖I是操作環(huán)境100的框圖。操作系統(tǒng)100可包括用戶105和計算設(shè)備110。通過與計算設(shè)備110交互,用戶105可創(chuàng)建包括用戶數(shù)據(jù)集的匯總表。在創(chuàng)建匯總表之后,用戶105可能希望在計算設(shè)備110上創(chuàng)建顯示用戶數(shù)據(jù)集的可視化。不幸的是,用戶105可能不理解數(shù)據(jù)可視化的可用選擇之間的區(qū)別,并且難以得到正確顯示數(shù)據(jù)的可視化。與本發(fā)明的各實施例一致,可使用例如一種用于提供圖表推薦的方法來提供圖表推薦。用于提供圖表推薦的方法可接收由用戶105提供的用戶數(shù)據(jù)集。然后,用于提供圖表推薦的方法可基于給定的用戶數(shù)據(jù)集、考慮不同圖表類型、數(shù)據(jù)映射以及圖表布局來試探地確定一組適當(dāng)?shù)膱D表建議。與傳統(tǒng)系統(tǒng)相比,這可顯著地簡化用戶105的圖表創(chuàng)建。為了提供圖表推薦,用于提供圖表推薦的方法可主動分析用戶數(shù)據(jù)集。通過主動分析用戶數(shù)據(jù)集并理解其內(nèi)容以及其如何布局,用于提供圖表推薦的方法可幫助用戶快速標(biāo)識合適的圖表類型以及合適的將其數(shù)據(jù)映射到圖表的方法,從而簡化了圖表創(chuàng)建過程。圖2是闡明根據(jù)本發(fā)明的一實施例的用于提供圖表推薦的方法200中所涉及的各概略階段的流程圖。方法200可以使用計算設(shè)備110來實現(xiàn),如下面參考圖5及以上參考圖I更詳細(xì)地描述的。在下文中將更詳細(xì)地描述實現(xiàn)方法200的各階段的方式。
方法200可開始于起始框205并繼續(xù)至階段210,在那里計算設(shè)備110可接收數(shù)據(jù)集。例如,用戶105可與計算設(shè)備110交互以創(chuàng)建包括數(shù)據(jù)集的匯總表。匯總表可由用戶105在例如電子表格應(yīng)用程序內(nèi)創(chuàng)建。匯總表可用任何方式創(chuàng)建并且不限于電子表格應(yīng)用程序。方法可從階段210 (其中計算設(shè)備110接收數(shù)據(jù)集)前進(jìn)至階段220,在階段220,計算設(shè)備110可確定數(shù)據(jù)集的定向。例如,計算設(shè)備110可試探地確定數(shù)據(jù)集是例如以“列狀”定向還是“行狀”定向布局的。一種定向隨后可被排序為比另一種高。換言之,計算設(shè)備110可確定數(shù)據(jù)集中的數(shù)據(jù)的定向,其可影響數(shù)據(jù)集中的數(shù)據(jù)之后被如何查看(例如,垂直地或水平地)。一旦在階段220計算設(shè)備110確定數(shù)據(jù)集的定向,方法200可繼續(xù)到階段230,其中計算設(shè)備110可創(chuàng)建數(shù)據(jù)集的匯總。例如,通過查看數(shù)據(jù)集,計算設(shè)備110可將圖表選擇規(guī)則稍后可基于的一組屬性編譯在一起。這可對每個定向進(jìn)行(例如,可對數(shù)據(jù)集中的每一行和每一列編譯屬性)。在確定屬性時,計算設(shè)備110可為數(shù)據(jù)集屬性的每一單行和每一單列確定以下,例如i)特定行或列中的所有值的平均數(shù);ii)特定行或列中的最大值是什么;iii)特定行或列中的最小值是什么;iv)特定行或列中的所有內(nèi)容是否是字符串;以及V)特定行或列中的所有內(nèi)容是否是日期。在階段230計算設(shè)備110創(chuàng)建數(shù)據(jù)集的匯總之后,方法200可前進(jìn)到階段240,其中計算設(shè)備110可執(zhí)行數(shù)據(jù)集的自動過濾。在某些具有更復(fù)雜數(shù)據(jù)集的情況下,計算設(shè)備110可試探地確定例如哪些類別和值數(shù)列是重要的需要包括,而哪些應(yīng)當(dāng)被濾除。例如,在階段210,用戶105可通過選擇匯總表的整個數(shù)據(jù)范圍來創(chuàng)建包括數(shù)據(jù)集的匯總表,或者用戶105可選擇包括單個單元格的匯總表。在后一種情況下,計算設(shè)備110可找出單個單元格的范圍中的數(shù)據(jù)的結(jié)余(balance)以創(chuàng)建數(shù)據(jù)集。在這種情況下,計算設(shè)備110可確定該范圍內(nèi)的數(shù)據(jù)的值。另外,計算設(shè)備110可濾除那些可能最終不會促成好的圖表的列。例如,計算設(shè)備110可濾除匯總表中的那些最終不會促成好的圖表的散置的列。方法可從階段240(其中計算設(shè)備110執(zhí)行數(shù)據(jù)集的自動過濾)前進(jìn)至階段250,在階段250,計算設(shè)備110可對數(shù)據(jù)集中的數(shù)列(series)進(jìn)行歸類。使用階段230中創(chuàng)建的數(shù)據(jù)集匯總(例如,每個定向一個匯總),計算設(shè)備110可對數(shù)據(jù)集中的每個數(shù)列進(jìn)行走查,以確定每個數(shù)列的類別(例如,類別數(shù)列、值數(shù)列、或頭部)。換言之,在每行和每列的屬性被確定之后,計算設(shè)備110瀏覽一組規(guī)則以確定特定行或列是作為值數(shù)列較好還是作為類別數(shù)列較好。類別數(shù)列可以是數(shù)列的標(biāo)題,而值數(shù)列可保存具體的數(shù)字。例如,對于所支持的每個圖表類型,可存在定義應(yīng)如何標(biāo)識類別、值數(shù)列、以及頭部的一組規(guī)則。從數(shù)據(jù)集匯總中產(chǎn)生的屬性中,計算設(shè)備110可為數(shù)據(jù)集中的每個數(shù)列產(chǎn)生關(guān)于該數(shù)列有多少可能是類別還是值數(shù)列還是頭部的分?jǐn)?shù)。對所有的圖表類型在行狀定向以及列狀定向上都重復(fù)這一過程。如果至少一個值數(shù)列沒有被找到,計算設(shè)備110可不返回任何結(jié)果。被用來對數(shù)列歸類的分?jǐn)?shù)可不促成用來建議圖表的最終分?jǐn)?shù)。被用來對數(shù)列歸類的規(guī)則可以基于屬性的邏輯函數(shù)。例如,如果因為特定列的值是字符串導(dǎo)致列的數(shù)據(jù)類型是字符串,則該列更可能是用來表示標(biāo)題而不是圖表中的數(shù)字值的類別。此外,如果整個行包括日期,則這透露出什么類型的圖表將是行得通的,因為它 們?nèi)侨掌?。以下是列圖表和柱狀圖表的用于確定某列是類別數(shù)列還是值數(shù)列的規(guī)則的示例類別數(shù)列如果數(shù)列是最左邊的列,則類別數(shù)列分?jǐn)?shù)+ I如果數(shù)列沒有空值,則類別數(shù)列分?jǐn)?shù)+ I如果數(shù)列是由字符串值組成的如果不同值的數(shù)量在2和5之間,則類別數(shù)列分?jǐn)?shù)+ 7如果不同值的數(shù)量在6和16之間,則類別數(shù)列分?jǐn)?shù)+ 9如果不同值的數(shù)量在17和32之間,則類別數(shù)列分?jǐn)?shù)+ 8如果不同值的數(shù)量在33和50之間,則類別數(shù)列分?jǐn)?shù)+ 2值數(shù)列如果數(shù)列是由數(shù)字組成的如果值的總和是I或100,則值數(shù)列分?jǐn)?shù)一 I如果不存在空值,則值數(shù)列分?jǐn)?shù)+ 6如果不同值的數(shù)量除以值的數(shù)量大于或等于O. 5,則值數(shù)列分?jǐn)?shù)+ I如果不同值的數(shù)量除以值的數(shù)量小于O. 5,則值數(shù)列分?jǐn)?shù)一 I一旦在階段250計算設(shè)備110對數(shù)據(jù)集中的數(shù)列進(jìn)行歸類之后,方法200可繼續(xù)到階段260,在階段260,計算設(shè)備110可執(zhí)行數(shù)據(jù)集的映射。具體來說,計算設(shè)備110可對類別和值數(shù)列運行用于將那些數(shù)列映射到給定圖表類型上的特定軸的一組預(yù)定條件。例如,計算設(shè)備110可運行每一個所支持的圖表大小,并對階段250中所確定的內(nèi)容進(jìn)行映射。因此,對于具有一個全部是字符串的列以及之后的兩個具有數(shù)字的列的數(shù)據(jù)集來說,計算設(shè)備110可將字符串列映射成例如列圖表的類別數(shù)列,而將兩個數(shù)字列映射成例如列圖表的值數(shù)列。對于餅狀圖表,計算設(shè)備110可僅對第一值數(shù)列列進(jìn)行映射,因為你只能有單個值數(shù)列被映射成餅圖。對于例如點狀圖,計算設(shè)備110可對兩個值數(shù)列進(jìn)行映射以表示點狀圖中的X和Y屬性。圖表類型可包括但不限于以下類型柱形
簇狀柱形圖堆積柱形圖百分比堆積柱形圖折線折線圖百分比堆積折線圖餅·餅圖復(fù)合餅圖復(fù)合條餅圖條形簇狀條形圖堆積條形圖百分比堆積條形圖面積堆積面積圖百分比堆積面積圖散點僅帶數(shù)據(jù)標(biāo)記的散點圖股票盤高-盤低-收盤圖開盤-盤高-盤低-收盤圖成交量-盤高-盤低-收盤圖成交量-開盤-盤高-盤低-收盤圖曲面3D曲面圖框架圖圓環(huán)圓環(huán)圖氣泡氣泡圖雷達(dá)雷達(dá)圖組合圖簇狀柱形圖+折線圖在階段260計算設(shè)備110執(zhí)行映射之后,方法200可前進(jìn)到階段270,在階段270,計算設(shè)備110可應(yīng)用圖表規(guī)則。例如,計算設(shè)備110可對圖表選擇規(guī)則運行階段260中的映射以得到關(guān)于特定圖表是多么合適的分?jǐn)?shù)。換言之,計算設(shè)備110可查看階段260中創(chuàng)建的圖表映射,并通過使用圖表規(guī)則對來自階段260的每個映射排序來確定每個圖表有多好。最終圖表建議可由內(nèi)部的基于規(guī)則的評分系統(tǒng)中的計算設(shè)備110來排序。評分系統(tǒng)可包括兩種類型的值i)靜態(tài)分?jǐn)?shù);ii)分?jǐn)?shù)倍數(shù)??舍槍γ總€個別的圖表選擇規(guī)則來映射靜態(tài)分?jǐn)?shù),圖表選擇規(guī)則可確定特定圖表類型和映射的一組類別和值數(shù)列有多合適??舍槍?shù)據(jù)定向、數(shù)列軸映射、以及結(jié)果過濾規(guī)則來映射分?jǐn)?shù)倍數(shù),以提供一種更廣泛的用于增加或減少一組建議的分?jǐn)?shù)的方法。靜態(tài)分?jǐn)?shù)和分?jǐn)?shù)倍數(shù)都可被組合成對于每個圖表建議的總分。對于每個圖表建議的分?jǐn)?shù)可針對特定圖表類型的總的可能分?jǐn)?shù)進(jìn)行歸一化,以得到100中的一個分?jǐn)?shù),其中100代表被排序為最高可能的建議,而O代表被排序為最低可能的建議。規(guī)則和分?jǐn)?shù)倍數(shù)可將這些分?jǐn)?shù)變?yōu)楦哂?00或低于O。以下是用于確定圖表的使用的規(guī)則的示例。
折線圖如果類別數(shù)列由日期、年、星期中的天或月名中的任一組成,則圖表分?jǐn)?shù)+ 25如果類別數(shù)列由字符串組成,并且存在3-8之間個值,則圖表分?jǐn)?shù)+ 359-16之間個值,則圖表分?jǐn)?shù)+ 2517 — 32之間個值,則圖表分?jǐn)?shù)+ 2033 - 50之間個值,則圖表分?jǐn)?shù)+ 5大于50個值,什么都不做如果值數(shù)列由數(shù)字組成,則圖表分?jǐn)?shù)+ 5+如果空比非空值在圖表中的比率是大于或等于O. 7,則圖表分?jǐn)?shù)一 40O. 5 - O. 7之間,則圖表分?jǐn)?shù)一20O. 3 - O. 5之間,則圖表分?jǐn)?shù)一10小于O. 3,則圖表分?jǐn)?shù)+ 15簇狀條形圖如果類別數(shù)列是字符串類型并且其全部值小于16個字符長度,則圖表分?jǐn)?shù)一 5如果類別數(shù)列是字符串類型并且其某些值大于16個字符長度,則圖表分?jǐn)?shù)+ 10餅圖如果存在不止I個值數(shù)列,則不推薦餅圖一旦在階段270計算設(shè)備110應(yīng)用了圖表規(guī)則,則方法200可繼續(xù)到階段280,在階段280,計算設(shè)備110可輸出推薦。例如,計算設(shè)備110可輸出對于給定數(shù)據(jù)集的圖表建議的堆積排序的列表。換言之,對于數(shù)據(jù)集,以階段270中的圖表規(guī)則應(yīng)用所排序的順序來提供階段260中映射的全部圖表類型的列表。計算設(shè)備110可將這一排序提供給用戶界面,用戶界面可直接將該列表顯示給用戶105。或者,計算設(shè)備110可通過如圖3和圖4中所示的用戶界面提供移動視覺呈現(xiàn)。圖3顯示了第一用戶界面300。如圖3中所示,第一用戶界面300可包括主顯示窗格305和側(cè)窗格310。當(dāng)用戶105選擇推薦的圖表按鈕315時,接收階段270中接收最高排名的圖表可被顯示在主窗格305中。隨后,接收其后的較低分?jǐn)?shù)的圖表可被顯示在側(cè)窗格310中。換言之,第一圖表320可接收到最高排名,第二圖表325可接收到第二高排名,第三圖表330可接收到第三高排名,而第四圖表335可接收到第四高排名。通過將用戶輸入提供給計算設(shè)備110 (例如,通過滑動滑動條340),用戶105可使之后的較低排名的圖表的連續(xù)子集被顯示在側(cè)窗格310中。圖4顯示了第二用戶界面400。通過從第一用戶界面300中選擇全部圖表按鍵345,用戶105可使計算設(shè)備110顯示第二用戶界面400。如圖4所示,第二用戶界面400可包括中央顯不窗格405、第一區(qū)域窗格410、以及第二區(qū)域窗格415。第一區(qū)域窗格410可包括所支持的可用圖表的全部類型(例如,階段260中所映射的全部圖表類型)的列表。對于從第一區(qū)域窗格410中選擇的給定圖表類型,第二區(qū)域窗格415可顯示所選擇的可用圖表的任何子類型。例如,用戶105可從第一區(qū)域窗格410中選擇柱形按鈕420。這可使得柱狀圖的可用子類型的所有不同類型被顯示在第二區(qū)域窗格415。如圖4中所示,用戶105可通過選擇簇狀柱形圖按鈕425來選擇將簇狀柱形圖顯示在中央顯示窗格405中。通過從第二區(qū)域窗格415中選擇堆積柱形圖按鈕430,用戶105可使計算設(shè)備110將堆積柱形圖顯示在中央顯示窗格405中。用戶105可通過從第二用戶界面400中選擇推薦的圖表按鈕 315來切換回第一用戶界面300。一旦設(shè)備110在階段280中輸出了推薦之后,方法200然后可在階段290處結(jié)束。根據(jù)本發(fā)明的一實施例可包括用于圖表推薦的系統(tǒng)。該系統(tǒng)可包括存儲器存儲和耦合到該存儲器存儲的處理單元。該處理單元可用于確定數(shù)據(jù)集的匯總并基于該匯總將數(shù)據(jù)集中的每一列和行歸類到各個類別。此外,該處理單元可用于基于數(shù)據(jù)集中的每一列和行的類別將數(shù)據(jù)集映射成多個圖表類型。處理單元可被進(jìn)一步用于對多個圖表類型的每一個進(jìn)行排序。根據(jù)本發(fā)明的另一實施例可包括用于圖表推薦的系統(tǒng)。該系統(tǒng)可包括存儲器存儲和耦合到該存儲器存儲的處理單元。該處理單元可被用于基于匯總將數(shù)據(jù)集中的每一列和行歸類到各類別中,并且基于數(shù)據(jù)集中的每一列和行的類別將數(shù)據(jù)集映射成多個圖表類型。此外,處理單元可用于對多個圖表類型的每一個進(jìn)行排序,并基于多個圖表類型的每一個的排名顯示圖表推薦。圖5是包括計算設(shè)備110的系統(tǒng)的框圖。根據(jù)本發(fā)明的一個實施例,上述存儲器存儲和處理單元可在諸如圖5的計算設(shè)備110之類的計算設(shè)備中實現(xiàn)??墒褂糜布?、軟件或固件的任何合適的組合來實現(xiàn)存儲器存儲和處理單元。例如,存儲器存儲和處理單元可用計算設(shè)備110或結(jié)合計算設(shè)備110的其他計算設(shè)備518中的任一個來實現(xiàn)。根據(jù)本發(fā)明的實施例,上述系統(tǒng)、設(shè)備和處理器是示例,而其他系統(tǒng)、設(shè)備和處理器可包括上述存儲器存儲和處理單元。參考圖5,根據(jù)本發(fā)明的一實施例的系統(tǒng)可包括計算設(shè)備,諸如計算設(shè)備110。在基本配置中,計算設(shè)備110可包括至少一個處理單元502和系統(tǒng)存儲器504。取決于計算設(shè)備的配置和類型,系統(tǒng)存儲器504可包括,但不限于,易失性存儲器(例如,隨機(jī)存取存儲器(RAM))、非易失性存儲器(例如,只讀存儲器(ROM))、閃存、或任何組合。系統(tǒng)存儲器504可以包括操作系統(tǒng)505、一個或多個編程模塊506,且可以包括程序數(shù)據(jù)507。例如,操作系統(tǒng)505可適用于控制計算設(shè)備110的操作。在一個實施方式中,編程模塊506可包括例如,圖表推薦應(yīng)用520。此外,本發(fā)明的實施例可結(jié)合圖形庫、其他操作系統(tǒng)、或任何其他應(yīng)用程序來實踐,并且不限于任何特定應(yīng)用或系統(tǒng)。該基本配置在圖5中由虛線508內(nèi)的那些組件示出。計算設(shè)備110可具有附加特征或功能。例如,計算設(shè)備110還可包括附加數(shù)據(jù)存儲設(shè)備(可移動和/或不可移動),諸如例如,磁盤、光盤、或磁帶。這些附加存儲在圖5中由可移動存儲509和不可移動存儲510示出。計算設(shè)備110還可包含可允許計算設(shè)備110如通過分布式計算環(huán)境中的網(wǎng)絡(luò),例如,內(nèi)聯(lián)網(wǎng)或因特網(wǎng)來與其它計算設(shè)備518進(jìn)行通信的通信連接516。通信連接516是通信介質(zhì)的一個示例。本文所使用的術(shù)語計算機(jī)可讀介質(zhì)可包括計算機(jī)存儲介質(zhì)。計算機(jī)存儲介質(zhì)可包括以用于存儲諸如計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或其他數(shù)據(jù)等信息的任何方法或技術(shù)實現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。系統(tǒng)存儲器504、可移動存儲509和不可移動存儲510都是計算機(jī)存儲介質(zhì)的示例(即,存儲器存儲)。計算機(jī)存儲介質(zhì)可包括,但不限于,RAM、ROM、電可擦除只讀存儲器(EEPR0M)、閃存或其他存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD )或其他光存儲、磁帶盒、磁帶、磁盤存儲或其他磁性存儲設(shè)備、或者可用于 存儲信息且可由計算設(shè)備110訪問的任何其他介質(zhì)。任何這樣的計算機(jī)存儲介質(zhì)都可以是設(shè)備500的一部分。計算設(shè)備110還可以具有輸入設(shè)備512,如鍵盤、鼠標(biāo)、筆、聲音輸入設(shè)備、觸摸輸入設(shè)備等。還可包括諸如顯示器、揚聲器、打印機(jī)等輸出設(shè)備514。上述設(shè)備是示例,并且可使用其他設(shè)備。本文所使用的術(shù)語計算機(jī)可讀介質(zhì)還可包括通信介質(zhì)。通信媒介可由諸如載波或其他傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號中的計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或其他數(shù)據(jù)來體現(xiàn),并且包括任何信息傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”可以描述以對該信號中的信息進(jìn)行編碼的方式設(shè)定或者改變其一個或多個特征的信號。作為示例而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線連接等有線介質(zhì),以及諸如聲學(xué)、射頻(RF)、紅外線和其他無線介質(zhì)等無線介質(zhì)。如上所述,可在系統(tǒng)存儲器504中存儲包括操作系統(tǒng)505在內(nèi)的多個程序模塊和數(shù)據(jù)文件。當(dāng)在處理單元502上執(zhí)行時,編程模塊506 (例如,圖表推薦應(yīng)用520)可執(zhí)行各過程,包括例如,如上所述的方法200的一個或多個階段。上述過程是一個示例,且處理單元502可執(zhí)行其他過程。根據(jù)本發(fā)明的實施例可使用的其他編程模塊可包括電子郵件和聯(lián)系人應(yīng)用、文字處理應(yīng)用、電子表格應(yīng)用、數(shù)據(jù)庫應(yīng)用、幻燈片演示應(yīng)用、繪圖或計算機(jī)輔助應(yīng)用等??梢酝ㄟ^片上系統(tǒng)(SOC)來實踐本發(fā)明的實施例,其中,可以將圖5中示出的每個或許多組件集成到單個集成電路上。這樣的SOC設(shè)備可包括一個或多個處理單元、圖形單元、通信單元、系統(tǒng)虛擬化單元以及各種應(yīng)用功能,所有這些都被集成到(或“燒錄到”)芯片基板上作為單個集成電路。當(dāng)通過SOC操作時,在此所述的關(guān)于本發(fā)明的各實施方式的功能可以通過在單個集成電路(芯片)上集成有計算設(shè)備110的其它組件的專用邏輯來操作。此外,圖5中示出的組件可被實現(xiàn)在例如移動設(shè)備中或云計算系統(tǒng)中。一般而言,根據(jù)本發(fā)明的實施例,程序模塊可包括可執(zhí)行特定任務(wù)或可實現(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其他類型的結(jié)構(gòu)。此外,本發(fā)明的實施例可用其他計算機(jī)系統(tǒng)配置來實踐,包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)或可編程消費電子產(chǎn)品、小型機(jī)、大型計算機(jī)等。本發(fā)明的實施例還可在其中任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計算環(huán)境中實踐。在分布式計算環(huán)境中,程序模塊可位于本地和遠(yuǎn)程存儲器存儲設(shè)備兩者中。此外,本發(fā)明的實施例可在包括分立電子元件的電路、包含邏輯門的封裝或集成電子芯片、利用微處理器的電路、或在包含電子元件或微處理器的單個芯片上實踐。本發(fā)明的實施例還可使用能夠執(zhí)行諸如例如,AND (與)、0R (或)和NOT (非)的邏輯運算的其他技術(shù)來實踐,包括但不限于,機(jī)械、光學(xué)、流體和量子技術(shù)。另外,本發(fā)明的實施例可在通用計算機(jī)或任何其他電路或系統(tǒng)中實踐。例如,本發(fā)明的實施例可被實現(xiàn)為計算機(jī)過程(方法)、計算系統(tǒng)、或諸如計算機(jī)程序產(chǎn)品或計算機(jī)可讀介質(zhì)之類的制品。計算機(jī)程序產(chǎn)品可以是計算機(jī)系統(tǒng)可讀并對用于執(zhí) 行計算機(jī)過程的指令的計算機(jī)程序編碼的計算機(jī)存儲介質(zhì)。計算機(jī)程序產(chǎn)品還可以是計算系統(tǒng)可讀并對用于執(zhí)行計算機(jī)過程的指令的計算機(jī)程序編碼的載體上的傳播信號。因此,本發(fā)明可以硬件和/或軟件(包括固件、常駐軟件、微碼等)來體現(xiàn)。換言之,本發(fā)明的實施例可采用其上包含有供指令執(zhí)行系統(tǒng)使用或結(jié)合其使用的計算機(jī)可使用或計算機(jī)可讀程序代碼的計算機(jī)可使用或計算機(jī)可讀存儲介質(zhì)上的計算機(jī)程序產(chǎn)品的形式。計算機(jī)可使用或計算機(jī)可讀介質(zhì)可以是可包含、存儲、通信、傳播、或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或結(jié)合其使用的任何介質(zhì)。計算機(jī)可使用或計算機(jī)可讀介質(zhì)例如可以是、但不限于電、磁、光、電磁、紅外、或半導(dǎo)體系統(tǒng)、裝置、設(shè)備或傳播介質(zhì)。更具體的計算機(jī)可讀介質(zhì)示例(非窮盡列表),計算機(jī)可讀介質(zhì)可包括以下具有一條或多條導(dǎo)線的電連接、便攜式計算機(jī)盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPR0M或閃存)、光纖、以及便攜式壓縮盤只讀存儲器(CD-ROM)。注意,計算機(jī)可使用或計算機(jī)可讀介質(zhì)甚至可以是其上打印有程序的紙張或另一合適的介質(zhì),因為程序可經(jīng)由例如對紙張或其他介質(zhì)的光學(xué)掃描而電子地捕獲,隨后如有必要被編譯、解釋、或以其他合適的方式處理,并且隨后存儲在計算機(jī)存儲器中。以上參考例如根據(jù)本發(fā)明的實施例的方法、系統(tǒng)和計算機(jī)程序產(chǎn)品的框圖和/或操作示圖描述了本發(fā)明的實施例??蛑兴⒚鞯母鞴δ?動作可按不同于任何流程圖所示的次序出現(xiàn)。例如,取決于所涉及的功能/動作,連續(xù)示出的兩個框?qū)嶋H上可基本同時執(zhí)行,或者這些框有時可按相反的次序執(zhí)行。盡管已描述了本發(fā)明的特定實施例,但也可能存在其他實施例。此外,雖然本發(fā)明的實施例被描述為與存儲在存儲器和其他存儲介質(zhì)中的數(shù)據(jù)相關(guān)聯(lián),但是數(shù)據(jù)還可被存儲在其他類型的計算機(jī)可讀介質(zhì)上或從其讀取,諸如輔助存儲設(shè)備(像硬盤、軟盤、或CD-ROM)、來自因特網(wǎng)的載波、或其他形式的RAM或ROM。此外,所公開的方法的各步驟可以任何方式修改,包括通過對各步驟重新排序和/或插入或刪除步驟,而不背離本發(fā)明。包括此處所包括的代碼中的版權(quán)在內(nèi)的所有權(quán)利都?xì)w屬于申請人并且是本申請人的財產(chǎn)。本申請人保持并保留此處所包括的代碼中的所有權(quán)利,并且授予僅關(guān)于所授權(quán)專利的再現(xiàn)且未出于其他目的再現(xiàn)該材料的許可。盡管本說明書包括示例,但本發(fā)明的范圍由所附權(quán)利要求書來指示。此外,盡管用對結(jié)構(gòu)特征和/或方法動作專用的語言描述了本說明書,但權(quán)利要求書并不限于以上所描述的特征或動作。相反,以上所描述的特定特征和動作是作為本發(fā)明的實施例的示例來公開的。
權(quán)利要求
1.一種用于提供圖表推薦的方法,所述方法包括 確定數(shù)據(jù)集的匯總; 基于所述匯總將所述數(shù)據(jù)集中的每一列和行歸類到各類別中; 基于所述數(shù)據(jù)集中的每個列和行的類別,將所述數(shù)據(jù)集映射到多個圖表類型;以及 對所述多個圖表類型的每一個進(jìn)行排序。
2.如權(quán)利要求I所述的方法,其特征在于,確定所述數(shù)據(jù)集的匯總包括為所述數(shù)據(jù)集的每一列以及每一行確定多個屬性,所述多個屬性包括以下內(nèi)容中的任何行中所有值的平均值;列中所有值的平均值;行中的最大值;列中的最大值;行中的最小值;列中的最小值;確定行中的所有值都是字符串;確定列中的所有值都是字符串;確定行中的所有值都是日期;以及確定列中的所有值都是日期。
3.如權(quán)利要求I所述的方法,其特征在于,基于所述匯總將所述數(shù)據(jù)集中的每一列和行歸類到各類別中包括將述數(shù)據(jù)集中的每一列和行歸類到包括以下中的任何的類別類別數(shù)列、值數(shù)列、以及頭部。
4.如權(quán)利要求I所述的方法,其特征在于,對所述多個圖表類型的每一個進(jìn)行排名包括使用包括靜態(tài)分?jǐn)?shù)的評分系統(tǒng),其中針對每個單獨的圖表選擇規(guī)則來映射靜態(tài)分?jǐn)?shù),以確定特定圖表類型和映射的一組類別和值數(shù)列有多合適。
5.如權(quán)利要求I所述的方法,其特征在于,對所述多個圖表類型的每一個進(jìn)行排名包括使用包括分?jǐn)?shù)倍數(shù)的評分系統(tǒng),其中針對數(shù)據(jù)定向、數(shù)列軸映射、以及結(jié)果過濾規(guī)則來映射分?jǐn)?shù)倍數(shù),以增加或減少一組建議的分?jǐn)?shù)。
6.如權(quán)利要求I所述的方法,其特征在于,還包括對所述數(shù)據(jù)集進(jìn)行過濾,其中對所述數(shù)據(jù)集進(jìn)行過濾包括 確定以下的至少一個不會促成好的圖表至少一個列和至少一個行;以及 從所述數(shù)據(jù)集中排除以下的至少一個所確定的至少一個列和所確定的至少一個行。
7.一種存儲一組指令的計算機(jī)可讀介質(zhì),所述一組指令在被執(zhí)行時執(zhí)行一種用于提供圖表推薦的方法,由所述一組指令執(zhí)行的方法包括 基于匯總將數(shù)據(jù)集中的每一列和行歸類到各類別中; 基于所述數(shù)據(jù)集中的每個列和行的類別,將所述數(shù)據(jù)集映射到多個圖表類型; 對所述多個圖表類型的每一個進(jìn)行排序;以及 基于所述多個圖表類型的每一個的排名顯示圖表推薦。
8.如權(quán)利要求7所述的計算機(jī)可讀介質(zhì),其特征在于,顯示圖表推薦包括 在主窗格(305)中顯不最聞排名的圖表; 在側(cè)窗格(310)中顯不排名在其后的圖表的子集中的各個圖表;以及 響應(yīng)于用戶輸入在側(cè)窗格(310)中顯示排名在其后的圖表的另一子集中的各個圖表。
9.如權(quán)利要求7所述的計算機(jī)可讀介質(zhì),其特征在于,顯示圖表推薦包括 在第一區(qū)域窗格(410)中顯示所支持的可用圖表類型的列表; 在第二區(qū)域窗格(415)中顯示子類型的列表,所述子類型的列表對應(yīng)于在所述第一區(qū)域窗格(410)中的所支持的可用圖表類型中的所選的一個;以及 顯示對應(yīng)于所述第一區(qū)域窗格(410)中的所支持的可用圖表類型中的所選的一個以及所述第二區(qū)域窗格(415)中的子類型中的所選的一個的圖表。
10.一種用于提供圖表推薦的系統(tǒng),所述系統(tǒng)包括 存儲器存儲;以及 耦合到所述存儲器存儲的處理單元,其中所述處理單元用于 接收數(shù)據(jù)集; 確定所述數(shù)據(jù)集的定向,所述定向包括以下中的一個列狀定向和行狀定向; 至少基于所確定的定向來確定所述數(shù)據(jù)集的匯總,其中確定所述數(shù)據(jù)集的匯總包括為數(shù)據(jù)集的每個列和每個行確定多個屬性; 對數(shù)據(jù)集進(jìn)行過濾,其中所述處理單元用于對數(shù)據(jù)集進(jìn)行過濾包括所述處理單元用于確定以下的至少一個不會促成好的圖表至少一個列和至少一個行,以及從所述數(shù)據(jù)集中排除以下的至少一個所確定的至少一個列和所確定的至少一個行;基于所述匯總將經(jīng)過濾的數(shù)據(jù)集中的每個列和行歸類到各類別,其中所述處理單元用于對經(jīng)過濾的數(shù)據(jù)集中的每個列和行歸類包括處理單元用于基于所述匯總將經(jīng)過濾的數(shù)據(jù)集中的每個列和行歸類到各類別,其中包括將經(jīng)過濾的數(shù)據(jù)集中的每個列和行歸類到包括以下的任何各類別類別數(shù)列、值數(shù)列、以及頭部; 基于經(jīng)過濾的數(shù)據(jù)集中的每個列和行的類別,將所述經(jīng)過濾的數(shù)據(jù)集映射到多個圖表類型; 對所述多個圖表類型的每一個進(jìn)行排序,其中所述處理單元被用于對所述多個圖表類型的每一個進(jìn)行排序包括所述處理單元被用于使用包括至少一種類型的值的評分系統(tǒng),所述至少一種類型的值包括以下中的一個靜態(tài)分?jǐn)?shù)和分?jǐn)?shù)倍數(shù);以及 基于所述多個圖表類型的每一個的排名顯示圖表推薦,其中所述處理單元被用于顯示圖表推薦包括所述處理單元被用于 在主窗格(305)中顯不最聞排名的圖表,以及 在側(cè)窗格(310)中顯不排名在其后的圖表的子集中的各個圖表。
全文摘要
提供了圖表推薦。首先,可確定數(shù)據(jù)集的匯總,并且基于匯總,可將數(shù)據(jù)集中的每個列和行歸類到各類別中。接著,基于數(shù)據(jù)集中的每個列和行的類別,數(shù)據(jù)集可被映射到多個圖表類型。隨后可對多個圖表類型中的每一個進(jìn)行排序。
文檔編號G06F17/30GK102968436SQ20121036278
公開日2013年3月13日 申請日期2012年9月25日 優(yōu)先權(quán)日2011年9月26日
發(fā)明者R·維基菲爾德, N·江 申請人:微軟公司