亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

D3數據連接之“更新”和“退出”

發布時間:2020-07-21 06:51:36 來源:網絡 閱讀:293 作者:博文視點 欄目:數據庫

摘要: 昨天的推送中,我們闡述了數據連接的進入階段。本文中,我們學習一下其更新和退出機制。 本文選自《圖說D3:數據可視化利器從入門到進階》。

  讓我們回到之前那個“怪咖”Frank那里,重新審視一下他的那些小報封面數據,看一下Frank手頭前3個月的數據,以及我們之前做過的事情。
  到目前為止,我們只讓1月的數據“進入”頁面,并渲染出一系列文本元素。
  讓文本進入頁面。
        D3數據連接之“更新”和“退出”
  頁面上有文本元素,每個都表示janData中的一個數據點。現在我們要更新頁面,顯示2月的數據。就像“進入”一樣,我們選中頁面上的文本元素,并用data()方法調用數據連接。區別在于,這次頁面上已經有文本元素了。所以,我們要將數據綁定到已經存在的數據上,而不是創建新的元素。
        D3數據連接之“更新”和“退出”

  這就是“更新”。我們使用新的數據更新元素。現在,由于新數據被綁定到元素上,我們可以通知頁面頂部的文本讀取“Jennifer Aniston”,而不是“Angelina Jolie”(將在后面的章節描述具體細節)。
  注意,此處并沒有update()的方法。通過enter()方法調用,你創建了一個特殊的對象占位集,每一個占位表示數據集中一個尚未綁定的數據點。但是,為了更新頁面上已有的元素,你并不需要這么做。只要創建這些元素的選擇集,就可以通知它們基于最新綁定的數據進行渲染了。
  你可能會很好奇,上圖中那個很醒目的問號是什么?其存在的理由是:2月的數據有5個點,而1月只有4個。那么,這第5個數據點該如何操作?它還沒有綁定任何元素啊!
  如果你猜這時它會自動“進入”頁面,那就錯了。我們可以像以前那樣使用enter()方法調用。
D3數據連接之“更新”和“退出”

  但是,這次該方法只會創建一個沒有元素關聯的數據點,而會不像以前那樣創建5個全新的占位元素。D3這時可以很好地滿足你的要求。
  現在,我們像往常一樣調用就可以新建一個文本元素,數據和元素又再次全部匹配了。
D3數據連接之“更新”和“退出”
  很好,我們將目光移到3月。我們要做的還是選中頁面上的所有文本元素,然后將3月的數據連接上去。
D3數據連接之“更新”和“退出”

  但是,由于3月只有4條數據,所以數據點實際上比待綁定的元素還要少。有數據進來的元素可以很簡單地得到更新,但是那些沒有匹配到數據的元素呢?現在就是“退出”出場的時候了。我們需要刪掉第5個文本元素(就像離開舞臺的演員一樣),exit()方法就能派上用場了。一般而言,執行完數據連接后,我們可以使用exit()方法來選中所有不再有數據綁定的元素。然后,我們可以利用另外一個方法remove()來移除它。
D3數據連接之“更新”和“退出”

  就這樣,我們介紹了數據連接的整個生命過程——進入、更新和退出。數據連接的基礎概念非常簡單:圖形總是出現在頁面上,不斷變換,最終離開頁面,就像劇場舞臺上的演員,登臺,表演,退場。D3通過將數據點和元素進行連接、綁定、比較來處理這3種狀態的輪換 。其只可能出現以下3種結果。

  1. 數據點比元素多。這將觸發“進入”狀態(也有可能是“更新”狀態)。

  2. 數據點和元素一樣多。這將觸發“更新”狀態。

  3. 元素比數據點多。這將觸發“退出”狀態(也可能是“更新”狀態)。

但是,也有和劇場這個比喻不一樣的地方:在一場表演中,演員必須遵循登臺、表演、退場這樣的節奏,但是在D3中,你不一定要全部經歷這3種狀態的變遷。有時候,你會用D3制作一個靜態的圖形,只需要調用enter()即可。在其他場景下,數據點和元素保持一致,所以你永遠不需要調用(實際上,我們的條形圖就是這種情況)。

  本文選自《圖說D3:數據可視化利器從入門到進階》,點此鏈接可在博文視點官網查看此書。
                   D3數據連接之“更新”和“退出”
  想及時獲得更多精彩文章,可在微信中搜索“博文視點”或者掃描下方二維碼并關注。
                      D3數據連接之“更新”和“退出”


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

娱乐| 香河县| 林州市| 兴业县| 浮山县| 枣强县| 邮箱| 万山特区| 贵阳市| 广河县| 武定县| 芜湖县| 连城县| 琼中| 乌什县| 汉沽区| 黑山县| 巴中市| 新密市| 泽普县| 彭阳县| 营口市| 扶余县| 巴青县| 兴文县| 礼泉县| 富源县| 罗甸县| 灵山县| 长葛市| 藁城市| 仁布县| 潢川县| 辽阳县| 赞皇县| 五华县| 长泰县| 承德县| 台江县| 庆城县| 闽清县|