- Scala for Data Science
- Pascal Bugnion
- 299字
- 2021-07-23 14:33:05
Chapter 3. Plotting with breeze-viz
Data visualization is an integral part of data science. Visualization needs fall into two broad categories: during the development and validation of new models and, at the end of the pipeline, to distill meaning from the data and the models to provide insight to external stakeholders.
The two types of visualizations are quite different. At the data exploration and model development stage, the most important feature of a visualization library is its ease of use. It should take as few steps as possible to go from having data as arrays of numbers (or CSVs or in a database) to having data displayed on a screen. The lifetime of graphs is also quite short: once the data scientist has learned all he can from the graph or visualization, it is normally discarded. By contrast, when developing visualization widgets for external stakeholders, one is willing to tolerate increased development time for greater flexibility. The visualizations can have significant lifetime, especially if the underlying data changes over time.
The tool of choice in Scala for the first type of visualization is breeze-viz. When developing visualizations for external stakeholders, web-based visualizations (such as D3) and Tableau tend to be favored.
In this chapter, we will explore breeze-viz. In Chapter 14, Visualization with D3 and the Play Framework, we will learn how to build Scala backends for JavaScript visualizations.
Breeze-viz is (no points for guessing) Breeze's visualization library. It wraps JFreeChart, a very popular Java charting library. Breeze-viz is still very experimental. In particular, it is much less feature-rich than matplotlib in Python, or R or MATLAB. Nevertheless, breeze-viz allows access to the underlying JFreeChart objects so one can always fall back to editing these objects directly. The syntax for breeze-viz is inspired by MATLAB and matplotlib.
- Fundamentals of Linux
- Power Up Your PowToon Studio Project
- DevOps for Networking
- Practical Internet of Things Security
- Three.js開發(fā)指南:基于WebGL和HTML5在網(wǎng)頁上渲染3D圖形和動(dòng)畫(原書第3版)
- 深度強(qiáng)化學(xué)習(xí)算法與實(shí)踐:基于PyTorch的實(shí)現(xiàn)
- 精通Python自然語言處理
- Teaching with Google Classroom
- SQL Server與JSP動(dòng)態(tài)網(wǎng)站開發(fā)
- JavaScript程序設(shè)計(jì):基礎(chǔ)·PHP·XML
- Android系統(tǒng)下Java編程詳解
- 從零學(xué)Java設(shè)計(jì)模式
- Kotlin進(jìn)階實(shí)戰(zhàn)
- AngularJS UI Development
- 用Python動(dòng)手學(xué)統(tǒng)計(jì)學(xué)