Learn D3 for free

This D3 tutorial teaches you how to create powerful data visualizations for the web. It gives you a fast introduction to the key concepts of D3.js, like selections, data, axes, scales, bar charts, pie charts, SVG elements, and more.

Course content

01Introduction to D3
02Selection and manipulation - D3 tutorial
03A Short Message From Team Scrimba
04Data Loading and binding - D3 tutorial
05Creating a simple bar chart - D3 tutorial
06Creating labels - D3 tutorial

D3.js is the most popular data visualization library for the web. It's written in JavaScript and it allows you to make sense of your data through a powerful API. It uses HTML, CSS, and SVG to create visualizations which can be viewed on any modern browser.

Throughout this course you'll learn the most important features of D3 JS while building four different data visualizations. You'll be able to play around with the code whenever you want, so that you can be sure that you'll understand how it works.

What you'll learn:

  • Selection
  • Data loading
  • Data joins
  • Attributes
  • Axes
  • Scales
  • Elements
  • Labels
  • Paths
  • Creating SVG elements
  • Creating bar charts
  • Creating pie charts
  • Creating line charts

If you complete this course, you'll know how to use the following features of the D3js:

  • select(), selectAll(), append(), text(), attr()
  • data(), enter()
  • d3.max(), d3.min()
  • height, width, x, y, transform, fill
  • rect, line, circle
  • axisBottom(), axisTop(), axisRight(), ,axisLeft()
  • scale(),scaleLinear(), domain(), range()

...and much more!

And remember, this isn't a regular video course, it's a Scrimba course! This means you can interact with the code inside the tutorials whenever you want, which makes learning much more fun!

The instructor behind the course is the eminent Sohaib Nehal. Feel free to rech out to him via Twitter @Sohaub_Nehal if you have feedback or questions.

Join the Scrimba community chat

Learning alone can be lonely. Click here to join our Discord server and connect with other Scrimba learners!

What you'll learn 👩‍🏫

D3 Basics
Selection and manipulation
Data loading
Data joins
Creating SVG elements
Creating bar charts
Creating pie charts
Creating line charts

Meet your teacher 👋

The course creator

Sohaib Nehal

Sohaib is a full-stack developer based i Karachi. He's passionate about travelling, meeting new people, trying new food, and discussing unique ideas. Sohaib has helped tens of thousands developers learn D3.js with his course and articles.

Thank Sohaib for the course

people love this course 😍

why you'll learn faster 🔥

secure your free spot

100,000 people can't be wrong


What is D3.js?

D3.js is a JavaScript library for manipulating documents based on data. D3 helps you bring data to life using HTML, SVG, and CSS. D3’s emphasis on web standards gives you the full capabilities of modern browsers without tying yourself to a proprietary framework, combining powerful visualization components and a data-driven approach to DOM manipulation.

Is D3.js easy to learn?

D3.js is a very powerful, yet simple, JavaScript library that allows you to play with and bring life to documents based on data using HTML, CSS, and SVG. There are a lot of good resources available online to learn D3.js. There is a free course on D3.js which we have created on Scrimba and is available for free here.

What is D3.js used for?

D3.js (also known as D3, short for Data-Driven Documents) is a JavaScript library for producing dynamic, interactive data visualizations in web browsers. It makes use of the widely implemented Scalable Vector Graphics (SVG), HTML5, and Cascading Style Sheets (CSS) standards.