<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          前端可視化的四種方式

          共 1628字,需瀏覽 4分鐘

           ·

          2021-04-14 20:43

          簡(jiǎn)介:

          可視化用一句話來說,本質(zhì)上就是將數(shù)據(jù)信息組織起來后,以圖形的方式進(jìn)行呈現(xiàn)。在web上,圖像通常是利用瀏覽器來進(jìn)行繪制的。大體的方向上有4種。


          第一種是傳統(tǒng)的html+CSS,這種方式通常是普通網(wǎng)頁用來實(shí)現(xiàn)頁面的。


          第二種是使用SVG繪制矢量圖。SVG和傳統(tǒng)的HTML+CSS的繪制方式差別不大,只不過,HTML在繪制矢量圖形方面的能力有些不足,而SVG恰好彌補(bǔ)了這方面的缺陷。


          第三種則是Canvas2D。這是瀏覽器提供的Canvas API其中的一張上下文,使用它,我們可以非常方便的繪制出基礎(chǔ)的幾何圖形。在可視化中,canvas是非常常用的一種方法。


          第四種則是WebGL。這是瀏覽器提供的canvas API的另外一種上下文,它是OpenGL ES規(guī)范在Web端的實(shí)現(xiàn)。我們可以通過它,用Gpu渲染各種復(fù)雜的2D和3D圖形。WebGL利用了GPU并行處理的特性,這讓他在處理大量數(shù)據(jù)展現(xiàn)的時(shí)候,性能要遠(yuǎn)遠(yuǎn)大于前面3種繪圖方式。因此,在可視化的應(yīng)用中,一些數(shù)據(jù)量大、視覺效果要求高的特殊場(chǎng)景,使用WebGL渲染是一種比較合適的選擇。


          圖形系統(tǒng)表示顏色的幾種方式,以及他們的優(yōu)缺點(diǎn)。


          在可視化中,圖形的形狀和顏色信息都非常重要。那么我們?cè)趙eb中都有哪些方法可以表示顏色。這里可以簡(jiǎn)單的劃分為4類分別是RGB、RGBA顏色表示法,HSL和HSV顏色表示法,CIE Lab 和Cie Lch顏色表示法以及CubeHelix色盤。


          這里我們就對(duì)前面兩種方法來進(jìn)行一個(gè)詳細(xì)的講解,對(duì)后面兩種方法來一個(gè)簡(jiǎn)單介紹。


          RGB和RGBA

          RGB是顏色的16進(jìn)制表示,其中RR、GG、BB分別是兩位16進(jìn)制數(shù)字,表示紅綠藍(lán)三種通道的色階。色階可以表示某個(gè)通道的強(qiáng)弱。理論上一共能表示2^24,也就是16777216種不同的顏色。事實(shí)上RGB并不能表示肉眼所見的所有顏色,但實(shí)際上,它已經(jīng)非常豐富了。一般的顯示器、彩色打印機(jī)、掃描儀等都是支持它。而RGBA則是在他的基礎(chǔ)上添加了一個(gè)alpha的通道。


          他的優(yōu)點(diǎn)就是使用起來非常的簡(jiǎn)單。但是它有一定的缺陷。


          RGB表示顏色的時(shí)候,我們只能大致的判斷出他大概處于三種色階的位置,判斷它更偏向于哪種顏色,除此之外,我們就幾乎得不到其他任何有用的信息。


          也就是說,我們?cè)谶x擇一組顏色給圖標(biāo)時(shí),我們并不知道需要用到什么樣的規(guī)則來配置顏色,才能讓不同數(shù)據(jù)對(duì)應(yīng)的圖形顏色變得更鮮明。


          HSL和HSV

          與RGB顏色以色階表示顏色不同,HSL和HSV用色相(Hue)、飽和度(Saturation)和亮度(Lightness)或明度(Value)來表示顏色。其中Hue是角度,取值范圍是0-360,飽和度和亮度/明度的值都是從0-100%,實(shí)際上他是可以取值到-100%-0。以明度/亮度來說,當(dāng)我們的趨向于-100%時(shí),圖片會(huì)逐漸變黑,而趨向于100%時(shí),則會(huì)逐漸變白。rgb和HSL直接的轉(zhuǎn)換是非常復(fù)雜的,我們會(huì)在下一章,在深入的講解他們之間的轉(zhuǎn)換規(guī)則以及js實(shí)現(xiàn)方式。


          CIE Lab 和 CIE Lch 顏色

          CIE Lab 顏色空間簡(jiǎn)稱 Lab,它其實(shí)就是一種符合人類感覺的色彩空間,它用 L 表示亮度,a 和 b 表示顏色對(duì)立度。RGB 值也可以 Lab 轉(zhuǎn)換,但是轉(zhuǎn)換規(guī)則比較復(fù)雜。就不做描述,這是一種針對(duì)人類感覺的顏色描述方式。


          Cubehelix 色盤

          最后,我們?cè)賮碚f一種特殊的顏色表示法,Cubehelix 色盤(立方螺旋色盤)。簡(jiǎn)單來說,它的原理就是在 RGB 的立方中構(gòu)建一段螺旋線,讓色相隨著亮度增加螺旋變換。也不做過多描述。下一章我們主要講解RGB和HSL直接互相轉(zhuǎn)換的規(guī)則以及js的簡(jiǎn)單實(shí)現(xiàn)。


          瀏覽 46
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲插穴 | 成人欧美一区二区三区牛牛影视 | 中文字幕日韩电影无码 | 亚洲视频在线观看高清无码 | 日韩中文字幕有码 |