GitHub - kaxp/matplotlib-practice

A collection of small scripts I wrote while learning Matplotlib, CSV data handling, and different types of plots.
Each script focuses on one concept and can be run individually.

Requires Python 3.10+.


Run the project

# 1. (Optional) Create a virtual environment if it doesn’t exist
python3 -m venv venv

# 2. Activate virtual environment
source venv/bin/activate

# 3. Install dependencies (only once)
pip install -r requirements.txt

# 4. Run the project
python main.py

# 5. Deactivate virtual environment
deactivate

#6. When new dependency is added, run
pip freeze > requirements.txt

Project Structure

images/                       # Images of plots
lib/
 ├── data/                    # CSV files used in some plots
 ├── bar_plot.py
 ├── box_plot.py
 ├── dynamic_data_plot.py
 ├── histogram_plot.py
 ├── income_line.py
 ├── line_area_plot.py
 ├── pie_plot.py
 ├── scatter_plot.py
 ├── stack_plot.py
 ├── sub_plot.py
 ├── style_demo.py
 ├── time_series_plot.py
 └── 3d_plot.py
README.md
requirement.txt

Running the Scripts

From project root:

python lib/<script_name>.py

Example:

For Live Data Plot

# Terminal 1 – generate data continuously
python lib/data/dynamic_data_gen.py

# Terminal 2 – show the live plot
python lib/live_data_plot.py

Plots Overview

Below are all plot types included in this project, with script links and image placeholders.


1. Line + Area Plot — Developer Salaries


2. Subplots — Multiple Salary Graphs


3. Scatter Plot — YouTube View to Like Ratio


4. Time Series Plot — Bitcoin Price


5. Live Dynamic Plot — Streaming Data

Live Data Plot


6. Bar Plot — Most Popular Languages


7. 3D Surface Plot


8. Pie Chart — Language Popularity


9. Box Plot


10. Stack Plot


11. Histogram — Ages of Responders