數據可視化之Processing【1】


說Processing之前得先說一下數據可視化。

數據可視化--顧名思義。是關於數據之視覺表現形式的研究,將數據用其它方式表現出來,使之更直觀,
更清晰,更easy分析和處理。常見的表達方式如word中使用廣泛的直方圖、樹狀圖、折線圖、餅狀圖等。


數據可視化技術的基本思想是將數據庫中每個數據項作為單個圖元元素表示,大量的數據集構成數據
圖像。同一時候將數據的各個屬性值以多維數據的形式表示,能夠從不同的維度觀察數據,從而對數據進行
更深入的觀察和分析。

我們知道,單純的一連串數字擺在人們眼前非常難分析其特點且easy使人感覺鼓噪。長時間分析更easy產
生視覺疲勞。為了解決這樣的困擾,使用Processing對數據分析,讓數據“說話”是一種非常好的選擇。


Processing是一門語言,是一種工具。數據可視化的工具。

Processing是一種具有革命前瞻性的新興計算機語言。它的概念是在電子藝術的環境下介紹程序語言。
並將電子藝術的概念介紹給程序設計師。

它是 Java 語言的延伸。並支持很多現有的 Java 語言架構,不
過在語法 (syntax) 上簡易很多。並具有很多貼心及人性化的設計。

Processing 能夠在 Windows、MAC
OS X、MAC OS 9 、Linux 等操作系統上使用。

Processing的特點是簡單易學,入門非常easy,不須要非常強的編程經驗,能夠和單片機(比如 Arduino)通
信(基於串口),然后將串口獲得數據進行畫圖,也能夠繪制3D圖形,實現絢麗的效果。它是由麻省理工
學院(MIT)媒體實驗室 (M.I.T. Media Laboratory) 旗下美學與運算小組 (Aesthetics & Computation Group)
成員Casey Reas與Ben Fry編寫,編程語言靈感來自Arduino(不知道Arduino能夠看我的Blog)。和Arduino
非常相似,有圖有真相:


左邊這張圖是Processing IDE,右邊為Arduino IDE,不難發現,十分相似。
介紹一個基於Processing的小作品圖:


將鼠標放在黑色區域內。立方體能夠捕捉鼠標移動的動作並解析成數據然后隨之移動,上圖僅僅是Processing
的冰山一角,僅僅要你有創意,有idea ,就能夠實現各種奇妙的效果 。

奉上代碼:

/**
 * Mixture
 * by Simon Greenwold. 
 * 
 * Display a box with three different kinds of lights. 
 */

void setup() {
  size(640, 360, P3D);
  noStroke();
}

void draw() {
  background(0);
  translate(width / 2, height / 2);
  
  // Orange point light on the right
  pointLight(150, 100, 0, // Color
             200, -150, 0); // Position

  // Blue directional light from the left
  directionalLight(0, 102, 255, // Color
                   1, 0, 0); // The x-, y-, z-axis direction

  // Yellow spotlight from the front
  spotLight(255, 255, 109, // Color
            0, 40, 200, // Position
            0, -0.5, -0.5, // Direction
            PI / 2, 2); // Angle, concentration
  
  rotateY(map(mouseX, 0, width, 0, PI));
  rotateX(map(mouseY, 0, height, 0, PI));
  box(150);
}


興許再更。

Processing 官網 :http://processing.org/

分享一篇Processing入門指南,非常適合剛開始學習的人:http://pan.baidu.com/s/1qW17mB6


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM