
Turn raw data into insights and data storytelling with Python, pandas, matplotlib, Seaborn, and Plotly through live coding, hands-on labs, real datasets, and dashboards.
Learn to create and customize common matplotlib plots, including line graphs, bar charts, histograms, and pies, and understand axes, tickers, tick labels, and the 2D/3D plotting area.
Learn how matplotlib plots data with y values and a default x axis. Create figures and subplots to compare bar charts, stacked bars, box plots, and scatter plots.
Explore box plots, including the interquartile range, median line, and whiskers, and identify outliers, then compare with a histogram using the same dataset.
Plot sine and cosine functions on a single line plot from -pi to pi with 256 points, and learn to add Greek symbols and labels to curves.
Create sine and cosine plots in Python by generating 256 points from -pi to pi with numpy linspace, computing sine and cosine, and customizing axes and labels with LaTeX-style math.
Configure axis lengths, limits, and autoscale in matplotlib, using axis properties like rect, axis bg, and polar, with shared x/y. Add axes, draw lines, enable grid, and understand axis classes.
Learn to customize matplotlib line visuals by adjusting width, color, style, and markers using keyword arguments, setter methods, or setp, with guidance on consistent, accessible color choices for different audiences.
Create and customize figures and subplots in matplotlib, control tick locators and formatters, and format date axes to produce clear, precise data visualizations.
Learn to add legends and annotations to data visualizations using Matplotlib. Position legends and annotate key points to improve clarity and reduce reader misinterpretation.
Move spines to the center by hiding two spines and setting the others to zero, zero in data space. Understand how spines define data boundaries and connect axis tick marks.
Explore 2d histograms to visualize data distributions, learning how bins affect frequency and area normalization, with applications in image analysis like edge detection and image segmentation.
Learn to create bar charts with error bars to visualize measurement uncertainty, display standard deviation or standard error, and indicate confidence intervals, with customizable color, width, and orientation.
Pie charts show numerical proportions summing to 100%, with arc length proportional to value, and this lecture demonstrates creating an exploded pie chart in a square figure with labeled slices.
Visualize data with filled areas under and between curves using matplotlib's fill_between, color settings, and the where condition to highlight specific regions.
Create stacked plots in Python to visualize energy production by source from 1973 to 2014, showing the total trend and each contributing energy type using pandas and matplotlib.
Visualize the correlation between two variables with colored markers, one independent and one dependent, to spot patterns and seed multidimensional visualizations like a scatter plot matrix.
Explore advanced matplotlib concepts, including figure and axis structures, labels, transparency, and combining graph types to tackle complex data representations.
Build a Matplotlib plot from random data, apply a title and axis labels, and tune font size, alpha, and shadow effects with path and patch effects.
Add a shadow to the chart line using matplotlib's transformation framework, including offset transforms with scaled translations, to distinguish a sine wave and harmonize the figure styling.
Add a data table beside a matplotlib chart to display selected values, using plt.table with optional row and column headers and axis integration.
Learn to create and customize subplots in matplotlib, using the axis subplot base and pyplot.subplots to generate grid layouts with shared x or y axes and adjustable spacing.
Explore using subplot two grid to create layouts by defining grid geometry and locations, using zero-based positioning, and applying rowspan and colspan to tailor subplots and tick label sizes.
Learn to customize grids in matplotlib by toggling visibility and adjusting major and minor ticks. Use plt.grid and axis grid modules to style grids for clearer plots.
Explore customizing grids in matplotlib by loading sample data, organizing image grids across axis grids, and plotting multiple images with the standard show call for neat, aligned renders.
Create contour plots to show isolines of a height matrix Z, label isolines using either labels or color maps, and choose the number of levels using matplotlib's contour and contourf.
Learn to fill under plots in matplotlib using fill, fill_between, and fill_betweenx, with boolean conditions to control the shaded area and visualizing data.
Compare two sinusoidal functions in two subplots using fill_between to render filled regions and a boolean mask for y2 values over 1.0. Enable grid and use numpy.ma for masked values.
Explore how to create polar plots in matplotlib, converting data to polar coordinates, and configuring polar axes, grids, and labels for radial visualizations using theta and r.
Learn to customize matplotlib with reusable styles by creating a style file in the style lib directory and applying it with plt.style.use. The lecture covers axis.title.size, lines.linewidth, and figure colors.
Explore 3d visualizations in python using matplotlib toolkits to plot scatter, surface, line, and mesh, rotate axes, and manage x, y, z coordinates for richer visuals.
Learn to create three-dimensional visualizations with matplotlib by plotting random sales data for 2017–2020, configuring the three-dimensional axis, choosing a color map, and rendering the power series as spheres.
Explore 3d visualization in matplotlib, including wireframe, surface, and tri surface plots, and learn to render a hyperbolic paraboloid (pringle surface) with numpy and 3d axes.
Explore 3d histograms and 3d bars to visualize the correlation among three variables, using numpy histogram2d and meshgrid, and compare with a scatter plot.
Explore animating figures in matplotlib using the animation base class, time-based, artist, and func animation, and learn how to save animations with FFmpeg or Mencoder.
Explore matplotlib animations in Python by building an animated line plot with NumPy, defining init and animate functions, and driving the figure with Matplotlib's animation module.
Learn to create and export animated visualizations with matplotlib by saving frames to PNG files and encoding them with FFmpeg or Mencoder into mp4, using init func, frames, and metadata.
Explore how to work with images and maps in Python for data visualization using Pillow and PIL, applying filters, resizing, and annotating matplotlib charts with image files for geospatial data.
Learn Python image processing for data visualization by importing modules, selecting and applying named image filters with eval, and saving results in a temporary directory through a demo class.
Read all image files from a target folder, resize each to 0.1 of its size, and save the thumbnails to a designated thumbnail folder.
Learn to plot with images in Matplotlib, annotating charts with ship icons proportional to pirate counts, illustrating the link to sea surface temperature and strengthening memory.
Learn to plot with images in matplotlib by annotating data points with pirate images, configuring annotation boxes, arrows, and axis labels to visualize year and temperature data.
Plot years versus temperature and visualize pirate counts by placing scaled pirate ship images at data points using matplotlib annotation boxes, after loading data from a CSV and handling the header.
Load images with matplotlib, process image channels, and display per-channel histograms for red, green, and blue. Build a simple image viewer class that combines plots to visualize these histograms.
Learn to plot data on a map by projecting geospatial coordinates with the Basemap toolkit in matplotlib, using a Mercator projection and drawing coastlines, countries, and meridians.
Master basemap usage basics by importing the module, creating a base map with a projection, configuring drawing, and visualizing with Matplotlib, while exploring projections like Mercator and Mollweide.
Plot data on a world map using the Google Maps API, using Python to prepare CSV data and render a map and a table with Google Visualization in HTML.
Generate captchas using Python's imaging library by rendering distorted text, lines, and noise. Define size, text, font size, background, and length; pick random characters, draw them, add noise, and display.
Generate a simple captcha generator using Python's imaging library, drawing dots, noise, and random lines, then render text with TrueType fonts, optionally using English word dictionaries.
Study logarithmic plots and scales to show growth rates on data spanning orders of magnitude, using base ten or base two. Apply log transformation to skewed data like salaries.
Explore logarithmic and linear plots in python by visualizing exponential y and linear z on a 2x2 subplot grid with log and linear y-scales.
Explore spectrograms as time varying spectral representations, showing frequency and amplitude changes; compare 2d and 3d visuals, and learn to read wav files and apply fft windows with overlap.
Generate a synthetic audio signal with NumPy by combining sine components and noise, then visualize its time-domain and frequency-domain representations to illustrate spectrograms.
Learn to create and customize stem plots with matplotlib by plotting discrete data as stems from a baseline, configuring line and marker styles, and interpreting the resulting visualization.
Visualize vector fields with stream plots using Matplotlib to represent flow, velocity, and intensity through streamlines, arrows, and density, and learn to choose the right tool for your data.
Explore how color maps influence data perception and aid reader understanding in visualizations. Learn about matplotlib color maps categories—sequential, diverging, qualitative, cyclic—and practical selection guidance for readability and color blindness.
Learn to set and register color maps in matplotlib, apply cmap to images, pcolor, and scatter plots, and craft readable divergent schemes using color brewer and hex values.
Explore how scatter plots reveal relationships between variables and how histograms summarize distributions, explaining positive and negative correlations and their ideal values.
Explore scatter plots and histograms using google trends data and a 365-point random sample, showing four subplots: D vs D1, D1 vs D1, D1 vs inverted D1, and D1 vs D1 plus D.
Explore scatter plots and histograms to assess correlation between data sets, add horizontal and vertical histograms, and learn a scatter hist function with x, y data and bin controls.
Learn to create scatter plots and histograms in Python, configure axes and bins, load data or generate random data, and render the resulting charts for visualization.
Explore cross correlation between two data sets to identify matching patterns, visualize with numpy correlate and matplotlib, normalize by zeroth lag, and compare real and artificial trends.
Explore autocorrelation in time series, using correlograms to assess randomness, detect white noise, sinusoidal or autoregressive patterns, and determine suitable models.
Explore advanced, less commonly used features of Matplotlib and learn how wind barbs visualize two-dimensional vector quantities, including lines, flags, and magnitude increments.
Learn to plot barbs with matplotlib.pyplot.barbs using x, y coordinates and u, v vectors in knots; tune pivot, size, spacing, height, width, and color parameters for bars and flags.
Learn to visualize simulated wind observations with numpy and matplotlib by creating a 2d coordinate grid and comparing barbs and quiver plots of wind speed components.
Learn to create and interpret box and whisker plots with matplotlib to compare distributions, medians, and data spread, with optional notches for confidence intervals.
Explore how to visualize time-based data with Gantt charts in Python using matplotlib, plotting tasks and subtasks as horizontal bars with start and end times for project work breakdown structures.
Learn to generate a gantt chart with Python, loading task data, plotting bars via matplotlib, formatting the date axis, and organizing tasks on separate channels.
Explore how to visualize data dispersion with error bars using Matplotlib, computing the mean and a 95% confidence interval, and speeding calculations with NumPy vectorization.
Master advanced text manipulation in matplotlib, including axis labels, titles, subtitles, and on-figure text, with font properties, alignment, and coordinate-based placement for precise typesetting.
Explore font properties by iterating over families and sizes, then weights and styles to render text samples on a Matplotlib figure, removing axes for clear comparison.
Explore rendering mathematical notation with LaTeX in matplotlib plots, configuring fonts, writing equations, and labeling axes and figures with Greek symbols, fractions, limits, and exponential expressions.
Explore LaTeX 2 techniques in Python visualization with example data and numpy and matplotlib settings. Examine raw strings, Helvetica sizing, and the equation for s with cos and pi.
Explore LaTeX notation for mathematical concepts, including zero and one, alpha and gamma, sum equations, and ranges, as the discussion continues into the next lecture.
Explore LaTeX with matplotlib to format text, labels, and titles, adjust font size and color, and tune subplots and top spacing.
Explore how Python allows multiple statements on a single line separated by semicolons, with examples like import sys and printing hello, world.
Explore how Python uses header lines and suits to structure code blocks, with header lines starting keywords like if, elif, else and ending with a colon, followed by the suit.
Assign values to variables using the equal sign in Python; variables auto declare and infer type from the assigned value, with integers, floats, and strings as examples.
Explore how K-means clusters unlabeled data into five blobs by finding centers and assigning each instance to the nearest center in this unsupervised learning demonstration.
Train a k-means cluster model with k=5 to find blob centers and assign each instance to the nearest centroid, inspect centroids, and compare hard clustering with soft clustering for predictions.
Explore centroid methods for clustering with k means++ initialization, inertia as the performance metric, and how init hyperparameters influence multiple runs to select the best solution.
Explain mini-batch k-means and accelerated k-means, including triangle inequality optimizations and lower and upper distance bounds, enabling faster clustering and memory-efficient processing for large datasets.
Explore clustering for image segmentation by color, using k-means to assign pixels to color-based segments, illustrating semantic and instance segmentation concepts and a practical Python workflow with matplotlib.
Explore clustering as a preprocessing step for dimensionality reduction before supervised learning, using the eight by eight digits dataset, train-test split, and preparing a logistic regression model.
Learn to build a classification pipeline using logistic regression with k-means pre-processing, evaluate accuracy, and optimize the number of clusters with grid search cross-validation to maximize performance.
Explore clustering for semi-supervised learning with many unlabeled and few labeled digits; train logistic regression on 50 labeled instances, then select 50 cluster representatives to improve accuracy.
Demonstrate logistic regression on a dataset of 50 labeled instances where each image represents a cluster, fit the model, and evaluate on test data to achieve about 90.2% accuracy.
Explore label propagation to extend representative labels within clusters. Show that propagating to the 20% of closest centroids yields about 91.3% accuracy on the digits dataset, improving over full propagation.
Explore dbscan, a density-based clustering method that uses epsilon neighborhoods and min samples to identify dense core regions, form clusters, and flag anomalies, demonstrated with scikit-learn on the moon dataset.
Apply k nearest neighbors classifier to dbscan core samples to predict clusters, identify anomalies, and explore eps, min samples, and density considerations.
Explore gaussian mixture models that generate data from multiple gaussian clusters with varying ellipsoids, weights, means, and covariances, where each point comes from an unknown cluster via a generative process.
Interpret a Gaussian mixture model, where latent variables z select cluster means mu_k and covariances, observed x are drawn from those Gaussians, weighted by phi, with plates indicating repetition.
Explore how to estimate Gaussian mixture model parameters on dataset X using scikit-learn's GaussianMixture, including mu, phi, and covariances; understand expectation maximization steps, soft clustering, and comparison to k-means.
Explore gaussian mixture models: EM updates cluster parameters and convergence, enabling hard or soft clustering with predict and predict_proba, plus sampling and density scoring.
Explore how tuples support concatenation and repetition, along with length, membership, and iteration, and introduce series as a one-dimensional labeled array using pd.Series.
Explore vectorized operations that automatically align data by labels and produce nan for non-matching labels, and use the name attribute to name and rename a series.
Explore data frames, a two-dimensional, labeled data structure with columns of different types, created from dicts, lists, series, or numpy arrays, and learn how to set index and columns.
Examine dictionaries of ndarrays and lists in pandas, create data frames from ndarrays with equal lengths, and assign indices—when none is provided, use a range index.
Learn to create data frames from structured or ragged arrays in pandas by specifying column data types, using int, float, and a ten-character string.
Master adding, deleting, and selecting data frame columns in Python with pandas, including scalar and series assignments, index alignment, and precise column insertion using insert, del, and pop.
Learn to use the pandas DataFrame.assign method to create new columns derived from existing data, and update values by applying lambda-based operations on columns such as a and b.
Transpose a data frame using the T operator and enable interoperability with NumPy functions to perform matrix operations, including matrix multiplication, via the dot method.
Develop a data visualization project in Python on Google Colab that lets users input data and choose bar, line, and pie charts, with starter scripts using Matplotlib and NumPy.
Learn how to collect numerical input in Python with a get_data function that prompts for space-separated numbers, converts them to floats, handles invalid input, and returns the data list.
Define a Python function to choose a visualization type (bar, line, pie), validate user input, and set up basic data visualization workflows.
Select a chart in the data visualization workflow by entering the number of your choice in Python, handle valid options, and display an invalid choice message with a retry.
Explore visualize data with a function that generates and displays a selected chart using plt, creating a fixed-size figure and a bar chart with labeled axes, colors, and a title.
Explore how to create different chart types using matplotlib, including line and pie charts, by configuring data, labels, markers, colors, and titles, and rendering with plt.show.
Define data labels and a chosen chart type, then visualize the data using that selection. Display the chart in the main program with matplotlib's plt.show.
Course Overview:
The course begins with a solid foundation in Python programming, ensuring that participants, regardless of their prior experience, can comfortably navigate the language. From there, we delve into the core concepts of data science, covering topics such as data manipulation, cleaning, and exploratory data analysis. Participants will gain hands-on experience using popular Python libraries like NumPy, Pandas, and Matplotlib.
Key Learning Objectives:
Python Fundamentals: Develop a strong command of Python programming, enabling participants to efficiently manipulate data and perform complex analyses.
Data Manipulation and Analysis: Learn to clean and preprocess data effectively using Pandas, and perform advanced data manipulation tasks to extract meaningful insights.
Exploratory Data Analysis (EDA): Master the art of exploring and summarizing data using statistical and visual methods, laying the groundwork for informed decision-making.
Data Visualization: Dive into the world of data visualization with Matplotlib and Seaborn. Create stunning and informative visualizations that effectively communicate complex insights to diverse audiences.
Machine Learning Foundations: Gain an understanding of the fundamentals of machine learning and explore how Python can be used to implement and deploy basic machine learning models.
Real-world Applications: Apply acquired skills to real-world scenarios and datasets, ensuring that participants can tackle data-driven challenges in their professional environments.
Why Python for Data Science and Visualization?
Python has emerged as the language of choice for data scientists due to its versatility, ease of learning, and a rich ecosystem of libraries. Our course emphasizes Python's role in the entire data science workflow, from data cleaning to visualization, and provides participants with a holistic understanding of its capabilities.
Who Should Enroll:
This course is ideal for aspiring data scientists, analysts, researchers, and anyone eager to harness the power of Python for effective data analysis and visualization. Whether you are a beginner or have some experience in data science, this course will elevate your skills and empower you to make data-driven decisions confidently.
Conclusion:
Equip yourself with the essential skills in data science and data visualization that are in high demand across industries. Enroll in "Mastering Data Science and Data Visualization with Python" and embark on a journey towards becoming a proficient data practitioner, ready to tackle the challenges of the modern data landscape. Elevate your career prospects and unlock new opportunities with the knowledge and expertise gained in this comprehensive and practical course.