Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Expert Data Visualization

You're reading from  Expert Data Visualization

Product type Book
Published in Apr 2017
Publisher Packt
ISBN-13 9781786463494
Pages 394 pages
Edition 1st Edition
Languages
Author (1):
Jos Dirksen Jos Dirksen
Profile icon Jos Dirksen

Table of Contents (10) Chapters

Preface Getting Started with D3 Basic Charts and Shapes Working with Hierarchical Data Visualizing Graphs Working with Geo Data Visualizing Streaming Data Voronoi Diagrams and Heatmaps Custom Shapes and Paths and Using a Brush Selection ES6, TypeScript, and External D3.js Libraries

Using brushes to select elements

For this last section in the chapter, we're going to look at how you can easily select an area on an SVG element using a d3.brush. The easiest way to understand what a brush does is by looking at an example. If you open up the example <DVD3>/src/chapter-08/src/D08-06.js in your browser, you're presented with 200 randomly placed symbols. When you use the mouse, you can left-click and select an area. The square you see is a d3.brush:

You can easily resize and move this d3.brush without any customizing using the mouse. For this example, we used d3.brush to select the symbols that fall within the area and highlight them. We'll explain the code to do this in the following sections. The first thing we do, for this example, is create the set of 200 symbols and color them just as we did in the beginning of this chapter:

var symbols = [ 
{name: 'Cross',...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}