- 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.
- 大學(xué)計(jì)算機(jī)基礎(chǔ)(第二版)
- Learning Cython Programming
- Visual C++串口通信開發(fā)入門與編程實(shí)踐
- 軟件界面交互設(shè)計(jì)基礎(chǔ)
- Offer來了:Java面試核心知識(shí)點(diǎn)精講(原理篇)
- 我的第一本算法書
- Mastering AndEngine Game Development
- HTML5入門經(jīng)典
- 西門子S7-200 SMART PLC編程從入門到實(shí)踐
- 用案例學(xué)Java Web整合開發(fā)
- Hadoop大數(shù)據(jù)分析技術(shù)
- 面向?qū)ο蟪绦蛟O(shè)計(jì)及C++(第3版)
- HTML5游戲開發(fā)實(shí)戰(zhàn)
- Clojure編程樂趣
- Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)(第2版)