- 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.
- Java程序設(shè)計(jì)(慕課版)
- Node.js 10實(shí)戰(zhàn)
- 動(dòng)手玩轉(zhuǎn)Scratch3.0編程:人工智能科創(chuàng)教育指南
- Python從入門(mén)到精通(精粹版)
- NativeScript for Angular Mobile Development
- Scratch真好玩:教小孩學(xué)編程
- Getting Started with Python Data Analysis
- Elasticsearch for Hadoop
- 輕松上手2D游戲開(kāi)發(fā):Unity入門(mén)
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- RubyMotion iOS Develoment Essentials
- Python Web自動(dòng)化測(cè)試設(shè)計(jì)與實(shí)現(xiàn)
- INSTANT JQuery Flot Visual Data Analysis
- Clojure Data Structures and Algorithms Cookbook
- JavaScript Mobile Application Development