用于數(shù)據(jù)更新的圖表的分階段的動(dòng)畫化的制作方法
【專利說明】
【背景技術(shù)】
[0001]背景和相關(guān)技術(shù)
[0002]計(jì)算機(jī)和計(jì)算系統(tǒng)影響了現(xiàn)代生活的幾乎每一個(gè)方面。計(jì)算機(jī)一般涉及工作、消遣、保健、運(yùn)輸、娛樂、家政管理等等。
[0003]許多計(jì)算機(jī)旨在通過與計(jì)算機(jī)的直接用戶交互來使用。如此,計(jì)算機(jī)具有輸入硬件和軟件用戶界面以促進(jìn)用戶交互。例如,現(xiàn)代的通用計(jì)算機(jī)可包括用于允許用戶向計(jì)算機(jī)輸入數(shù)據(jù)的鍵盤、鼠標(biāo)、觸摸墊、相機(jī)等等。另外,也可以有各種軟件用戶界面可用,包括提供豐富顯示的圖形用戶界面。某些圖形用戶界面提供動(dòng)畫化以指示數(shù)據(jù)的變化。
[0004]圖形用戶界面顯示數(shù)據(jù)。然而,隨著時(shí)間的推移數(shù)據(jù)會(huì)因?yàn)閿?shù)據(jù)被添加到用戶界面中、數(shù)據(jù)被從用戶界面中移除、或數(shù)據(jù)在用戶界面中被更改而變化,用戶界面中不斷變化的表示可能會(huì)導(dǎo)致人類用戶的混淆或不準(zhǔn)確的解釋。例如,考慮示出了正在被使用的網(wǎng)絡(luò)資源量的資源跟蹤器的情況。當(dāng)網(wǎng)絡(luò)硬件處于帶有最小流量的安靜狀態(tài)時(shí),資源跟蹤器可能以放大的視圖示出網(wǎng)絡(luò)使用,諸如通過在帶有具有最大值1Mbs的軸的圖上示出使用。當(dāng)用戶連接到視頻流傳輸站點(diǎn)時(shí),網(wǎng)絡(luò)使用可能會(huì)超出1Mbs的限制,并且因此比例被更改為lOOMbs。然而,對(duì)用戶而言,觀看流傳輸視頻的網(wǎng)絡(luò)使用由于比例變化可能看起來與安靜狀態(tài)的情況相同。這會(huì)混淆或誤導(dǎo)用戶。
[0005]此處所要求保護(hù)的主題不僅限于解決任何缺點(diǎn)的實(shí)施例或只在諸如上文所描述的那些環(huán)境的環(huán)境中操作的實(shí)施例。相反,提供此背景只是示出了其中可以實(shí)施此處所描述的一些實(shí)施例的一個(gè)示例性技術(shù)領(lǐng)域。
【發(fā)明內(nèi)容】
[0006]此處所示出的一個(gè)實(shí)施例包括一種以能夠處理正被添加到用戶界面中的數(shù)據(jù)、正從用戶界面移除的數(shù)據(jù)或在用戶界面中正被修改的數(shù)據(jù)的方式更新圖形用戶界面元素的方法。該方法包括訪問圖形用戶界面。圖形用戶界面顯示包括圖形元素的初始視圖。該方法進(jìn)一步包括,對(duì)于下列各項(xiàng)中的每一項(xiàng),確定是否執(zhí)行每一動(dòng)作,并按順序執(zhí)行適用于給定視圖情況的下列各項(xiàng)中的任何一項(xiàng):(I)在圖形用戶界面中更新,添加在初始視圖外的任何平移(pan)元素;(2)動(dòng)畫化圖形用戶界面的軸中的任何變化,以設(shè)置數(shù)據(jù)修改的階段;(3)在圖形用戶界面中執(zhí)行任何數(shù)據(jù)元素動(dòng)畫化,包括全部更新的任何移動(dòng)、任何添加、任何移除以及任何改變,除了當(dāng)更新在初始視圖外的任何平移元素時(shí)已經(jīng)添加的那些以及將不會(huì)在最后視圖中可見的平移元素移除之外;(4)將軸中的任何變化動(dòng)畫化到最終視圖;以及,(5)更新現(xiàn)在在視圖外的任何剩余元素。
[0007]提供本
【發(fā)明內(nèi)容】
是為了以精簡(jiǎn)的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念。本
【發(fā)明內(nèi)容】
并不旨在標(biāo)識(shí)出所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
[0008]本發(fā)明的附加特征和優(yōu)點(diǎn)將在以下描述中敘述,且其一部分根據(jù)本描述將是顯而易見的,或可通過對(duì)此處的原理的實(shí)踐來獲知。本發(fā)明的特征和優(yōu)點(diǎn)可通過在所附權(quán)利要求書中特別指出的工具和組合來實(shí)現(xiàn)和獲得。本發(fā)明的特征將通過以下描述和所附權(quán)利要求書變得更加顯而易見,或可通過對(duì)下文中所述的本發(fā)明的實(shí)踐來領(lǐng)會(huì)。
[0009]附圖簡(jiǎn)述
[0010]為了描述可獲得本主題的上述和其它優(yōu)點(diǎn)和特征的方式,將通過參考附圖中示出的具體實(shí)施例來呈現(xiàn)以上簡(jiǎn)要描述的本主題的更具體描述。可以理解,這些附圖只描繪了典型實(shí)施例,并且因此不被認(rèn)為是對(duì)其范圍的限制,將通過使用附圖并利用附加特征和細(xì)節(jié)來描述和解釋各實(shí)施例,在附圖中:
[0011]圖1示出了線時(shí)間序列;
[0012]圖2示出了帶有垂直比例變化的線時(shí)間序列;
[0013]圖3示出了添加了一個(gè)序列的線時(shí)間序列;
[0014]圖4示出了添加、移除以及移動(dòng)各點(diǎn)的散點(diǎn)圖;
[0015]圖5不出了一個(gè)柱正在升高的柱狀圖;
[0016]圖6示出了一個(gè)柱正在降低的柱狀圖;
[0017]圖7示出了改變、添加以及移除各柱的柱狀圖;
[0018]圖8示出了更新圖形用戶界面元素的方法。
【具體實(shí)施方式】
[0019]各實(shí)施例實(shí)現(xiàn)了以下功能:該功能允許圖表被動(dòng)畫化以對(duì)新數(shù)據(jù)作出反應(yīng),以便人類觀察者能夠跟蹤經(jīng)更新的值移動(dòng)到哪里以及它們?nèi)绾巫兓?,而不?huì)被值變化誤導(dǎo)。各實(shí)施例可以按能被一般化為幾乎全部圖表類型的方式實(shí)現(xiàn)并可以使動(dòng)畫化分階段,以避免被誤導(dǎo)。各實(shí)施例可以被實(shí)現(xiàn)為通過動(dòng)畫化過渡而并非迅移(snap)到新視圖來對(duì)圖表中示出的數(shù)據(jù)進(jìn)行更改,從而允許用戶可以看到不斷變化的顯示條件。
[0020]下面示出了可以在此處所描述的各實(shí)施例的上下文中考慮的指導(dǎo)原理。
[0021]各實(shí)施例可以實(shí)現(xiàn)跟蹤功能。具體而言,使用動(dòng)畫化以在用戶觀察變化時(shí)使與元素被移動(dòng)到哪里有關(guān)的用戶混淆最小化。人類一般十分擅長(zhǎng)跟蹤移動(dòng),而不太擅長(zhǎng)識(shí)別當(dāng)事物迅移到新布局時(shí)去了哪里。這會(huì)使非動(dòng)畫化的行為不和諧。
[0022]各實(shí)施例可以被實(shí)現(xiàn)為使誤導(dǎo)行為最小化。用戶不應(yīng)該被他們正在顯示的數(shù)據(jù)誤導(dǎo)。例如,如果一個(gè)值相對(duì)于其他值正在上升,則應(yīng)該清楚它正在上升。
[0023]各實(shí)施例可以被實(shí)現(xiàn)為以動(dòng)畫化性能作為一個(gè)因素。具體而言,動(dòng)畫化應(yīng)該快速運(yùn)行,但是仍保留知道元素去了哪里的感覺。從用戶角度來看,這會(huì)導(dǎo)致UI感覺響應(yīng)快。這還降低了同時(shí)運(yùn)行多個(gè)動(dòng)畫化的問題的機(jī)會(huì)。
[0024]盡管在大多數(shù)情況下并且特別是在常見的情況下,過渡以及動(dòng)畫化應(yīng)該在視覺上有吸引力,某些“離奇的”罕見的動(dòng)畫化是可以接受的。
[0025]各實(shí)施例可以實(shí)現(xiàn)允許處理一大片圖表和可視化的統(tǒng)一的單個(gè)方法或算法。如此,并非對(duì)于每一種特殊化情況實(shí)現(xiàn)特殊化算法,單個(gè)方法或算法允許一種方法被用于許多圖表類型或圖表元素類型。
[0026]下面示出了該功能特別有用的若干個(gè)常見示例:
[0027]考慮在一端添加了新數(shù)據(jù)并且從另一端(常常是另一軸的相同部分)移除舊數(shù)據(jù)的線圖。這樣的圖表的示例可以是實(shí)時(shí)股票行情的圖表。此圖表應(yīng)該表現(xiàn)為從左(或右)平穩(wěn)地滾動(dòng)的線,其中新數(shù)據(jù)點(diǎn)滑入視圖且舊數(shù)據(jù)點(diǎn)滑出視圖。這不應(yīng)該通過首先在圖表上創(chuàng)建空間并隨后使數(shù)據(jù)點(diǎn)出現(xiàn)來執(zhí)行,也不應(yīng)該通過使數(shù)據(jù)點(diǎn)消失并隨后使其中消失了數(shù)據(jù)點(diǎn)的空間被刪除來執(zhí)行。相反,數(shù)據(jù)點(diǎn)應(yīng)該滑入視圖并滑出視圖。進(jìn)一步,也不應(yīng)該有這樣的連鎖反應(yīng):添加和移除的部分一個(gè)接一個(gè)地被動(dòng)畫化,從而使另一軸在返回到其原始值之前比例變化。
[0028]在另一個(gè)示例中,考慮如上所述的在一端添加了新數(shù)據(jù)并且從另一端移除舊數(shù)據(jù)的行圖表,但是現(xiàn)在添加了全新的線。全新的線(即,新序列)不應(yīng)該被部分地平移進(jìn)入并隨后使其余部分淡入。
[0029]在再一個(gè)示例中,考慮散點(diǎn)圖:其中,點(diǎn)移動(dòng)并且新項(xiàng)目出現(xiàn)在舊范圍之外,并且在新視圖內(nèi)部和外部的項(xiàng)目消失。應(yīng)當(dāng)清楚的,通過使散點(diǎn)出現(xiàn)/消失來添加和移除它們。使添加的散點(diǎn)平移入視圖或移除的散點(diǎn)平移出視圖同時(shí)使其它散點(diǎn)在眼前出現(xiàn)和消失會(huì)使用戶混淆。他們會(huì)覺得被平移開的點(diǎn)仍存在,而他們看見消失的那些點(diǎn)不再存在。類似于被平移入視圖的那些對(duì)他們看見出現(xiàn)的那些;用戶可能不知道那些被平移入視圖的點(diǎn)之前是否存在。如果視圖移動(dòng)以及出現(xiàn)和消失在時(shí)間上分離,會(huì)使此效果更差。
[0030]在再一個(gè)示例中,考慮柱狀圖:其中一個(gè)柱的值上升,導(dǎo)致y軸比例變化。柱應(yīng)該看起來生長(zhǎng),而不是讓所有其他的柱縮小(在比例和柱一起動(dòng)畫化的情況下所發(fā)生的)。應(yīng)該首先發(fā)生比例變化,并隨后發(fā)生數(shù)據(jù)值變化,以防止用戶被誤導(dǎo)。
[0031]在再一個(gè)示例中,考慮柱狀圖:其中最高的柱的值下降,導(dǎo)致y軸比例變化。柱應(yīng)該看起來下降,不是讓所有其他的柱生長(zhǎng)(比例以及柱一起動(dòng)畫化的情況下所發(fā)生的)。請(qǐng)注意,這需要與數(shù)據(jù)變化在比例變化之前發(fā)生的柱增長(zhǎng)情況不同的動(dòng)畫化順序。
[0032]在再一個(gè)示例中,考慮新類別出現(xiàn)在現(xiàn)有類別集合中間。當(dāng)創(chuàng)建空間并且新元素出現(xiàn)時(shí),現(xiàn)有元素應(yīng)該平穩(wěn)地移動(dòng)。這是通過將變化分階段作為移除元素、移動(dòng)元素并隨后添加元素。
[0033]各實(shí)施例如下實(shí)現(xiàn)所需功能:使圖表元素被分類成當(dāng)創(chuàng)建或者移除時(shí)平移入以及平移出視圖是可接受的類型(平移元素)以及這將產(chǎn)生混淆并且全部創(chuàng)建以及移除應(yīng)該被用戶看見的類型(非平移元素)。線以及柱是平移元素而散點(diǎn)圖點(diǎn)是非平移元素是公知的,且這確實(shí)