99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀深度解析大數(shù)據可視化設計案例分析
深度解析大數(shù)據可視化設計案例分析
2015-10-29
收藏

深度解析大數(shù)據可視化設計案例分析


數(shù)據可視化是個熱門話題,在信息安全領域,也由于很多企業(yè)希望將大數(shù)據轉化為信息可視化呈現(xiàn)的各種形式,以便獲得更深的洞察力、更好的決策力以及更強的自動化處理能力,數(shù)據可視化已經成為網絡安全技術的一個重要趨勢。
  一、什么是網絡安全可視化

  攻擊從哪里開始?目的是哪里?哪些地方遭受的攻擊最頻繁……通過大數(shù)據網絡安全可視化圖,我們可以在幾秒鐘內回答這些問題,這就是可視化帶給我們的效率。大數(shù)據網絡安全的可視化不僅能讓我們更容易地感知網絡數(shù)據信息,快速識別風險,還能對事件進行分類,甚至對攻擊趨勢做出預測??墒牵撛趺醋瞿?

  1.1 故事+數(shù)據+設計 =可視化

  做可視化之前,最好從一個問題開始,你為什么要做可視化,希望從中了解什么?是否在找周期性的模式?或者多個變量之間的聯(lián)系?異常值?空間關系?比如政府機構,想了解全國各個行業(yè)漏洞的分布概況,以及哪個行業(yè)、哪個地區(qū)的漏洞數(shù)量最多;又如企業(yè),想了解內部的訪問情況,是否存在惡意行為,或者企業(yè)的資產情況怎么樣??傊宄氵M行可視化設計的目的是什么,你想講什么樣的故事,以及你打算跟誰講。

  有了故事,還需要找到數(shù)據,并且具有對數(shù)據進行處理的能力,上圖是一個可視化參考模型,它反映的是一系列的數(shù)據的轉換過程:

  我們有原始數(shù)據,通過對原始數(shù)據進行標準化、結構化的處理,把它們整理成數(shù)據表。

  將這些數(shù)值轉換成視覺結構(包括形狀、位置、尺寸、值、方向、色彩、紋理等),通過視覺的方式把它表現(xiàn)出來。例如將高中低的風險轉換成紅黃藍等色彩,數(shù)值轉換成大小。

  將視覺結構進行組合,把它轉換成圖形傳遞給用戶,用戶通過人機交互的方式進行反向轉換,去更好地了解數(shù)據背后有什么問題和規(guī)律。

  最后,我們還得選擇一些好的可視化的方法。比如要了解關系,建議選擇網狀的圖,或者通過距離,關系近的距離近,關系遠的距離也遠。

  總之,有個好的故事,并且有大量的數(shù)據進行處理,加上一些設計的方法,就構成了可視化。

  1.2 可視化設計流程

  一個好的流程可以讓我們事半功倍,可視化的設計流程主要有分析數(shù)據、匹配圖形、優(yōu)化圖形、檢查測試。首先,在了解需求的基礎上分析我們要展示哪些數(shù)據,包含元數(shù)據、數(shù)據維度、查看的視角等;其次,我們利用可視化工具,根據一些已固化的圖表類型快速做出各種圖表;然后優(yōu)化細節(jié);最后檢查測試。

  具體我們通過兩個案例來進行分析。

  二、案例一:大規(guī)模漏洞感知可視化設計

上圖是全國范圍內,各個行業(yè)漏洞的分布和趨勢,橙黃藍分別代表了漏洞數(shù)量的高中低。

  2.1 整體項目分析

  我們在拿到項目策劃時,既不要被大量的信息資料所迷惑而感到茫然失措,也不要急于完成項目,不經思考就盲目進行設計。首先,讓我們認真了解客戶需求,并對整體內容進行關鍵詞的提煉。可視化的核心在于對內容的提煉,內容提煉得越精確,設計出來的圖形結構就越緊湊,傳達的效率就越高。反之,會導致圖形結構臃腫散亂,關鍵信息無法高效地傳達給讀者。

  對于大規(guī)模漏洞感知的可視化項目,客戶的主要需求是查看全國范圍內,各個行業(yè)的漏洞分布和趨勢。我們可以概括為三個關鍵詞:漏洞量、漏洞變化、漏洞級別,這三個關鍵詞就是我們進行數(shù)據可視化設計的核心點,整體的圖形結構將圍繞這三個核心點來展開布局。

  2.2 分析數(shù)據

  想要清楚地展現(xiàn)數(shù)據,就要先了解所要繪制的數(shù)據,如元數(shù)據、維度、元數(shù)據間關系、數(shù)據規(guī)模等。根據需求,我們需要展現(xiàn)的元數(shù)據是漏洞事件,維度有地理位置、漏洞數(shù)量、時間、漏洞類別和級別,查看的視角主要是宏觀和關聯(lián)。涉及到的視覺元素有形狀、色彩、尺寸、位置、方向,如圖所示。

  2.3 匹配圖形

  分析清楚數(shù)據后,就要找個合適的箱子把這些“蘋果”裝進去。上一步,或許還可以靠自身的邏輯能力,采集到的現(xiàn)成數(shù)據分析得到,而這一步更多地需要經驗和閱歷。幸運的是,現(xiàn)在已經有很多成熟的圖形可以借鑒了。從和業(yè)務的溝通了解到,需要匹配的圖形有中國地圖、餅圖、top圖、數(shù)字、趨勢等。

  2.4 確定風格

  匹配圖形的同時,還要考慮展示的平臺。由于客戶是投放在大屏幕上查看,我們對大屏幕的特點進行了分析,比如面積巨大、深色背景、不可操作等。依據大屏幕的特點,我們對設計風格進行了頭腦風暴:它是實時的,有緊張感;需要新穎的圖標和動效,有科技感;信息層次是豐富的;展示的數(shù)據是權威的。

  最后根據設計風格進一步確定了深藍為標準色,代表科技與創(chuàng)新;橙紅藍分別代表漏洞數(shù)量的高中低,為輔助色;整體的視覺風格與目前主流的扁平化一致。

  2.5 優(yōu)化圖形

  有了圖形后,嘗試把數(shù)據按屬性繪制到各維度上,不斷調整直到合理。雖然這里說的很簡單,但這是最耗時耗力的階段。維度過多時,在信息架構上廣而淺或窄而深都是需要琢磨的,而后再加上交互導航,使圖形更“可視”。

  在這個任務中,圖形經過很多次修改,上圖是我們設計的過程稿,深底,高亮的地圖,多顏色的攻擊動畫特效,營造緊張感;地圖中用紅、黃、藍來呈現(xiàn)高、中、低危的漏洞數(shù)量分布情況;心理學認為上方和左方易重視,“從上到下”“從左至右”的“Z”字型的視覺呈現(xiàn),簡潔清晰,重點突出。

  完成初稿后,我們進一步優(yōu)化了維度、動效和數(shù)量。維度:每個維度,只用一種表現(xiàn),清晰易懂;動效:考慮時間和情感的把控,從原來的1.5ms改為3.5ms;數(shù)量:考慮了太密或太疏時用戶的感受,對圓的半徑做了統(tǒng)一大小的處理。

  2.6 檢查測試

  最后還需要檢查測試,從頭到尾過一遍是否滿足需求;實地投放大屏幕后,用戶是否方便閱讀;動效能否達到預期,色差是否能接受;最后我們用一句話描述大屏,用戶能否理解。

  三、案例二:白環(huán)境蟲圖可視化設計

  如果手上只有單純的電子表格(左),要想找到其中IP、應用和端口的訪問模式就會很花時間,而用蟲圖(右)呈現(xiàn)之后,雖然增加了很多數(shù)據,但讀者的理解程度反而提高了。

  3.1 整體項目分析

  當前,企業(yè)內部IT系統(tǒng)復雜多變,存在一些無法精細化控制的、非法惡意的行為,如何精準地處理安全管理問題呢?我們的主要目標是幫助用戶監(jiān)測訪問內網核心服務器的異常流量,概括為2個關鍵詞:內網資產和訪問關系,整體的圖形結構將圍繞這兩個核心點來展開布局。

  3.2 分析數(shù)據

  接下來分析數(shù)據,案例中的元數(shù)據是事件,維度有時間、源IP、目的IP和應用,查看的視角主要是關聯(lián)和微觀。

  3.3 匹配圖形

  根據以往的經驗,帶有關系的數(shù)據一般使用和弦圖和力導向布局圖。最初我們采用的是和弦圖,圓點內部是主機,用戶要通過3個維度去尋找事件的關聯(lián)。通過測試發(fā)現(xiàn),用戶很難理解,因此選擇了力導向布局圖(蟲圖)。第一層級展示全局關系,第二層級通過對IP或端口的鉆取進一步展現(xiàn)相關性。

  3.4 優(yōu)化圖形

  優(yōu)化圖形時,我們對很多細節(jié)進行了調整:

  – 考慮太密或太疏時用戶的感受,只展示了TOP N。

  – 弧度、配色的優(yōu)化,與我們UI界面風格相一致。

  – IP名稱超長時省略處理。

  – 微觀視角中,源和目的分別以藍色和紫色區(qū)分,同時在線上增加箭頭,箭頭向內為源,向外是目的,方便用戶理解。

  – 交互上,通過單擊鉆取到單個端口和IP的信息;鼠標滑過時相關信息高亮展示,這樣既能讓畫面更加炫酷,又能讓人方便地識別。

  3.5 檢查測試

  通過調研,用戶對企業(yè)內部的流向非常清楚,視覺導向清晰,鉆取信息方便,色彩、動效等細節(jié)的優(yōu)化幫助用戶快速定位問題,提升了安全運維效率。

  四、總結

  總之,借助大數(shù)據網絡安全的可視化設計,人們能夠更加智能地洞悉信息與網絡安全的態(tài)勢,更加主動、彈性地去應對新型復雜的威脅和未知多變的風險。

  可視化設計的過程中,我們還需要注意:1、整體考慮、顧全大局;2、細節(jié)的匹配、一致性;3、充滿美感,對稱和諧。

數(shù)據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調,回調的第一個參數(shù)驗證碼對象,之后可以使用它調用相應的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }