We may earn an affiliate commission when you visit our partners.
Course image
Luis Ramirez Jr

 This course has been updated to use the latest version of D3 - Version 7.x

Hello. Welcome to the D3.js development course. This is the most comprehensive and effective course on D3 around. This is the only course you'll ever need to learn D3. 

Read more

 This course has been updated to use the latest version of D3 - Version 7.x

Hello. Welcome to the D3.js development course. This is the most comprehensive and effective course on D3 around. This is the only course you'll ever need to learn D3. 

The goal of this course is to not just teach you D3 (v7.x), but help you understand D3. D3 is a JavaScript library that allows you to build data visualizations easily. The library is absolutely massive and you can create any kind of data visualization you can imagine.  With such a massive library, it can be difficult to grasp a lot of the concepts.

By the end of this course, you'll be more than comfortable using D3 and build awesome visualizations. Here is just some of the things you can expect to learn.

  • Learn about D3 selections which are used to select and manipulate elements on your document. 

  • Get a basic overview of SVG. This is something courses skip over. By having a solid foundation of SVG, then you can make more optimal decisions for your visualizations.

  • Learn about scales which help you by converting your data into values that can be used to properly display your data. We'll learn about the linear, quantize, quantile, threshold, log, color, and a whole lot of other scales in this course.

  • Builds various graphs such as bar graphs, pie charts, scatter plots, histograms, line charts, and so much more.

  • Add interactivity and animation to your graphs to make them more interesting and appealing to the user.

  • Builds responsive graphs. Your visualizations will work on any device with a few simple tricks.

  • This course focuses on the latest version of D3. (version 7.x)

This is just some of the topics that will be covered. If you want to take

Enroll now

What's inside

Learning objectives

  • Create stunning data visualizations using d3 and svg
  • Understand selections to manipulate the dom using d3
  • Learn about layouts to build various charts and graphs
  • Add transitions and animations to your graphs for a more interesting user experience
  • Use scales to help make your visuals work on any browser or device.
  • Understand the enter and exist modes in d3
  • Create responsive charts and graphs

Syllabus

Overview
Preparing a Local Server
Understanding D3 & Data Visualization
Understanding SVG
Read more
What is SVG?
Creating SVG images
Basic SVG Shapes
SVG Paths
Fundamentals
Adding D3
D3 Packages
Selections
Appending Elements
Transformation Methods
Classes and Styles
Joining Data
The Enter Selection
The Exit Selection
Displaying Data
Enter, Update, and Exit
The Update Pattern
JSON Requests
CSV Requests
Drawing A Scatterplot
First Steps
Drawing the Image
Adding Margins
Accessor Functions
Understanding Scales
Writing Scales
Applying Scales to Visualizations
Refining Scales
Adding an Axis
Refining the x-axis
The y-axis
Flipping the y-axis
Refining the Axis Ticks
Summary
Scales
Continuous vs. Discrete
The scaleLinear() scale
Introduction to Heatmaps
Drawing the Heatmap
Colors with a Linear Scale
The scaleQuantize() Scale
The scaleQuantile() Scale
The scaleThreshold() Scale
Quantize vs. Quantile vs. Thresholdv
Color Scales
Understanding the Log Scale
The scaleLog() Scale
Animations & Interactivity
Introduction to Animations & Interactivity
What is a histogram?
Preparing the Histogram
Understanding the Problem
Creating Bins
Histogram Finishing Touches
Changing Metrics with Events
Updating the Chart
Transitions
Fixing the Transition
Fixing the Exit Transition
Tweaking the Bars and Labels
Adding the Mean
Adding a Tooltip
Mouse Events
Formatting
Understanding the Voronoi Diagram
Creating a Voronoi Diagram
Fixing the Voronoi Diagram
Even More Charts!
Even More Charts
Preparing the Line Chart
Time Scales & Parsing
Line Generator
Preparing the Tooltip
Understanding Bisectors
Custom Bisectors
Finishing the Tooltip
Getting Started with Pie Charts
Drawing Arcs
Understanding Ordinal Scales
Using Ordinal Scales
Adding Labels
Fixing the Pie Chart
Preparing the Stacked Bar Chart
The Stack Function
Band Scales
Drawing the Stacked Bars
Drawing the Axis
Finishing Touches
Conclusion
Sketching
Responsive Charts

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops foundational understanding of SVG, which is widely used by developers and designers for creating visual elements in web applications and other interactive content
Provides up-to-date knowledge on the latest version of D3 (v7.x), equipping learners with the most current tools and techniques
Teaches proficiency in D3, enabling learners to build powerful and interactive data visualizations to communicate insights effectively
Covers a wide range of D3 concepts and techniques, from data selection and manipulation to scales and animations
Offers practical applications and examples throughout the course, ensuring learners can apply their knowledge to real-world projects
Taught by an experienced instructor, Luis Ramirez Jr, who has a strong reputation in the field of data visualization

Save this course

Save Learn and Understand D3.js for Data Visualization to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Learn and Understand D3.js for Data Visualization with these activities:
Compile a Collection of D3 Resources
Improve your learning by organizing and expanding your collection of D3 resources, including documentation, tutorials, and examples.
Browse courses on D3
Show steps
  • Gather D3 resources from various sources.
  • Categorize and organize the resources for easy access.
  • Share your compilation with other D3 learners.
Follow D3 Tutorials on FreeCodeCamp
Gain practical experience by working through interactive tutorials that cover various aspects of D3.
Browse courses on D3
Show steps
  • Visit the FreeCodeCamp website and search for D3 tutorials.
  • Select a tutorial that aligns with your learning needs.
  • Follow the step-by-step instructions and complete the coding exercises.
Practice D3 Coding Challenges
Reinforce your understanding of D3 syntax and concepts by completing coding challenges.
Browse courses on D3
Show steps
  • Find D3 coding challenges online or in books.
  • Solve the challenges on your own.
  • Compare your solutions to others or discuss them in forums.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Join a D3 Study Group
Enhance your learning by collaborating with peers, discussing concepts, and working on projects together.
Browse courses on D3
Show steps
  • Find or create a study group with fellow D3 learners.
  • Set regular meeting times and establish clear goals.
  • Discuss course material, share resources, and work on assignments together.
Attend a D3 Workshop
Accelerate your learning by attending a workshop led by experienced D3 professionals who can provide guidance and support.
Browse courses on D3
Show steps
  • Research and identify upcoming D3 workshops.
  • Register for a workshop that fits your schedule and learning goals.
  • Attend the workshop and actively participate in the hands-on exercises.
Create Interactive D3 Visualizations
Solidify your understanding and demonstrate your skills by creating your own interactive data visualizations using D3.
Browse courses on D3
Show steps
  • Identify a dataset that you want to visualize.
  • Design and implement a D3 visualization that effectively communicates the data insights.
  • Make your visualization interactive by adding features like tooltips, zooming, or filtering.
Participate in a D3 Data Visualization Challenge
Challenge yourself and showcase your D3 skills by participating in a competition that rewards innovative data visualizations.
Browse courses on D3
Show steps
  • Research and identify upcoming D3 data visualization challenges.
  • Choose a challenge that aligns with your interests and skill level.
  • Create a compelling data visualization that meets the challenge requirements.
Mentor Junior D3 Developers
Reinforce your learning and contribute to the community by guiding and supporting aspiring D3 developers.
Browse courses on D3
Show steps
  • Identify or reach out to junior D3 developers who need guidance.
  • Provide one-on-one mentorship, answer questions, and share your knowledge.
  • Collaborate on projects or assignments to provide hands-on support.

Career center

Learners who complete Learn and Understand D3.js for Data Visualization will develop knowledge and skills that may be useful to these careers:
Data Scientist
Data Scientists develop and maintain the infrastructure and algorithms used to collect, store, and analyze data for a business. They analyze and interpret this data to uncover trends and patterns, which they can use to make recommendations for improving a business's operations or products. This course can help you develop the skills and knowledge needed to be a successful Data Scientist, including how to use D3.js to create stunning data visualizations that can help you communicate your findings to others.
Data Analyst
Data Analysts use their skills in mathematics, statistics, and programming to extract meaningful insights from data. They work with businesses to help them understand their customers, optimize their operations, and make better decisions. This course can help you develop the skills and knowledge needed to be a successful Data Analyst, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Business Analyst
Business Analysts use their skills in data analysis, process improvement, and communication to help businesses improve their operations. They work with businesses to identify and solve problems, and to develop and implement new solutions. This course can help you develop the skills and knowledge needed to be a successful Business Analyst, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Software Engineer
Software Engineers design, develop, and maintain software applications. They work with businesses to understand their needs and to develop software solutions that meet those needs. This course can help you develop the skills and knowledge needed to be a successful Software Engineer, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Web Developer
Web Developers design and develop websites and web applications. They work with businesses to understand their needs and to develop web solutions that meet those needs. This course can help you develop the skills and knowledge needed to be a successful Web Developer, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Data Engineer
Data Engineers design, build, and maintain the infrastructure and processes used to collect, store, and analyze data for a business. They work with businesses to understand their needs and to develop data solutions that meet those needs. This course can help you develop the skills and knowledge needed to be a successful Data Engineer, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Statistician
Statisticians use their skills in mathematics, statistics, and programming to collect, analyze, and interpret data. They work with businesses to help them understand their customers, optimize their operations, and make better decisions. This course can help you develop the skills and knowledge needed to be a successful Statistician, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Market Researcher
Market Researchers use their skills in research, data analysis, and communication to help businesses understand their customers and markets. They work with businesses to develop and implement marketing strategies that are based on research and data. This course can help you develop the skills and knowledge needed to be a successful Market Researcher, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
UX Designer
UX Designers use their skills in research, design, and testing to create user interfaces that are both usable and enjoyable. They work with businesses to understand their users and to develop user interfaces that meet their needs. This course can help you develop the skills and knowledge needed to be a successful UX Designer, including how to use D3.js to create data visualizations that can help you communicate your findings to others.
Front-End Developer
Front-End Developers design and develop the user interface of websites and web applications. They work with businesses to understand their needs and to develop front-end solutions that meet those needs. This course may be useful for individuals who want to develop a strong foundation in data visualization for front-end development.
Product Manager
Product Managers work with businesses to develop and launch new products. They work with engineers, designers, and marketers to bring a product to market and to ensure that it meets the needs of customers. This course may be useful for individuals who want to develop a strong foundation in data visualization for product management.
Project Manager
Project Managers plan, execute, and close projects. They work with teams to ensure that projects are completed on time, within budget, and to the required quality. This course may be useful for individuals who want to develop a strong foundation in data visualization for project management.
Technical Writer
Technical Writers create and maintain documentation for software, hardware, and other technical products. They work with engineers and other technical experts to gather information and to write documentation that is clear, concise, and accurate. This course may be useful for individuals who want to develop a strong foundation in data visualization for technical writing.
Science Writer
Science Writers communicate complex scientific information to a general audience. They work with scientists and other experts to gather information and to write articles, reports, and other materials that explain scientific concepts in a clear and engaging way. This course may be useful for individuals who want to develop a strong foundation in data visualization for science writing.
Educator
Educators teach students in a variety of settings, from preschool to university. They work with students to help them learn and grow, both academically and personally. This course may be useful for individuals who want to develop a strong foundation in data visualization for teaching.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Learn and Understand D3.js for Data Visualization.
Provides a comprehensive guide to using D3.js for creating interactive data visualizations on the web. It starts with the basics of D3 and then covers more advanced topics such as scales, axes, and transitions.
Provides a hands-on introduction to using D3.js for data visualization. It covers the basics of D3 and then moves on to more advanced topics such as working with data, creating charts and graphs, and adding interactivity.
Classic work on data visualization. It provides a comprehensive overview of the principles of data visualization and their application to a wide range of fields.
Provides a comprehensive guide to writing high-performance JavaScript code. It covers the basics of JavaScript performance and then moves on to more advanced topics such as optimizing code, working with the DOM, and using web workers.
Provides a comprehensive guide to creating effective charts and graphs. It covers the basics of chart design and then moves on to more advanced topics such as working with data, choosing the right chart type, and creating effective visualizations.
Provides a comprehensive guide to using SVG for creating vector graphics on the web. It covers the basics of SVG and then moves on to more advanced topics such as working with shapes, paths, and gradients.
Classic work on design. It provides a comprehensive overview of the principles of design and their application to a wide range of fields.
Provides a practical introduction to data visualization. It covers the basics of data visualization and then moves on to more advanced topics such as choosing the right chart type, working with data, and creating effective visualizations.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser