Python (26 Part Series)
1 Numpy Dot Function
2 6 Captivating Python Programming Tutorials from LabEx
… 22 more parts…
3 6 Exciting Python Programming Challenges to Boost Your Coding Skills
4 7 Python Programming Tutorials to Boost Your Coding Skills
5 Unlock the Power of Cryptography with the ‘Polybius Square Encryption in Python’ Project
6 Recommended Project: ‘Grouping Employees by Phone Number’
7 Matplotlib Legend Toggling Tutorial
8 Recommended Course: Practical Python Programming
9 Hinton Diagrams | Weight Matrix Visualization
10 Matplotlib in Flask Web Application Server
11 Mastering NumPy Array Mean Calculation
12 Python Matplotlib | Triangular Grid Interpolation
13 Python List Difference | Programming Tutorials | Lab
14 Mastering Python: A Collection of Coding Challenges
15 Mastering Python Programming with the ‘Python Practice Challenges’ Course
16 Highly Recommended: ‘Quick Start with Algorithm’ Course
17 6 Captivating Python Programming Challenges from LabEx
18 9 Challenging Python Programming Labs to Boost Your Coding Skills
19 Matplotlib Colormap Normalization: Visualizing Nonlinear Data
20 Mastering Python: A Collection of Captivating Coding Tutorials
21 Mastering Python: A Collection of Hands-On Tutorials
22 Recommended: “Python Practice Labs” Course
23 Unleash Your Python Prowess: A Collection of Insightful Programming Tutorials
24 Unleash Your Python Skills with the ‘File Type Counter’ Project
25 9 Captivating Python Programming Tutorials from LabEx
26 Pandas Pop() Method | Python Data Analysis
Introduction
In data visualization, colormaps are used to represent numerical data through color. However, sometimes the data distribution may be nonlinear, which can make it difficult to discern the details of the data. In such cases, colormap normalization can be used to map colormaps onto data in nonlinear ways to help visualize the data more accurately. Matplotlib provides several normalization methods, including SymLogNorm
and AsinhNorm
, which can be used to normalize colormaps. This lab will demonstrate how to use SymLogNorm
and AsinhNorm
to map colormaps onto nonlinear data.
VM Tips
After the VM startup is done, click the top left corner to switch to the Notebook tab to access Jupyter Notebook for practice.
Sometimes, you may need to wait a few seconds for Jupyter Notebook to finish loading. The validation of operations cannot be automated because of limitations in Jupyter Notebook.
If you face issues during learning, feel free to ask Labby. Provide feedback after the session, and we will promptly resolve the problem for you.
Import Required Libraries
In this step, we will import the necessary libraries, including Matplotlib, NumPy, and Matplotlib colors.
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.colors as colors
Enter fullscreen mode Exit fullscreen mode
Create Synthetic Data
In this step, we will create a synthetic dataset consisting of two humps, one negative and one positive, with the positive hump having an amplitude eight times greater than the negative hump. We will then apply SymLogNorm
to visualize the data.
def rbf(x, y):
return 1.0 / (1 + 5 * ((x ** 2) + (y ** 2)))
N = 200
gain = 8
X, Y = np.mgrid[-3:3:complex(0, N), -2:2:complex(0, N)]
Z1 = rbf(X + 0.5, Y + 0.5)
Z2 = rbf(X - 0.5, Y - 0.5)
Z = gain * Z1 - Z2
shadeopts = {'cmap': 'PRGn', 'shading': 'gouraud'}
colormap = 'PRGn'
lnrwidth = 0.5
Enter fullscreen mode Exit fullscreen mode
Apply SymLogNorm
In this step, we will apply SymLogNorm
to the synthetic data and visualize the results.
fig, ax = plt.subplots(2, 1, sharex=True, sharey=True)
pcm = ax[0].pcolormesh(X, Y, Z,
norm=colors.SymLogNorm(linthresh=lnrwidth, linscale=1,
vmin=-gain, vmax=gain, base=10),
**shadeopts)
fig.colorbar(pcm, ax=ax[0], extend='both')
ax[0].text(-2.5, 1.5, 'symlog')
pcm = ax[1].pcolormesh(X, Y, Z, vmin=-gain, vmax=gain,
**shadeopts)
fig.colorbar(pcm, ax=ax[1], extend='both')
ax[1].text(-2.5, 1.5, 'linear')
plt.show()
Enter fullscreen mode Exit fullscreen mode
Apply AsinhNorm
In this step, we will apply AsinhNorm
to the synthetic data and visualize the results.
fig, ax = plt.subplots(2, 1, sharex=True, sharey=True)
pcm = ax[0].pcolormesh(X, Y, Z,
norm=colors.SymLogNorm(linthresh=lnrwidth, linscale=1,
vmin=-gain, vmax=gain, base=10),
**shadeopts)
fig.colorbar(pcm, ax=ax[0], extend='both')
ax[0].text(-2.5, 1.5, 'symlog')
pcm = ax[1].pcolormesh(X, Y, Z,
norm=colors.AsinhNorm(linear_width=lnrwidth,
vmin=-gain, vmax=gain),
**shadeopts)
fig.colorbar(pcm, ax=ax[1], extend='both')
ax[1].text(-2.5, 1.5, 'asinh')
plt.show()
Enter fullscreen mode Exit fullscreen mode
Summary
In this lab, we learned how to use SymLogNorm
and AsinhNorm
to map colormaps onto nonlinear data. By applying these normalization methods, we can visualize the data more accurately and discern the details of the data more easily.
Practice Now: Matplotlib Colormap Normalization
Want to Learn More?
- Learn the latest Python Skill Trees
- Read More Python Tutorials
- Join our Discord or tweet us @WeAreLabEx
Python (26 Part Series)
1 Numpy Dot Function
2 6 Captivating Python Programming Tutorials from LabEx
… 22 more parts…
3 6 Exciting Python Programming Challenges to Boost Your Coding Skills
4 7 Python Programming Tutorials to Boost Your Coding Skills
5 Unlock the Power of Cryptography with the ‘Polybius Square Encryption in Python’ Project
6 Recommended Project: ‘Grouping Employees by Phone Number’
7 Matplotlib Legend Toggling Tutorial
8 Recommended Course: Practical Python Programming
9 Hinton Diagrams | Weight Matrix Visualization
10 Matplotlib in Flask Web Application Server
11 Mastering NumPy Array Mean Calculation
12 Python Matplotlib | Triangular Grid Interpolation
13 Python List Difference | Programming Tutorials | Lab
14 Mastering Python: A Collection of Coding Challenges
15 Mastering Python Programming with the ‘Python Practice Challenges’ Course
16 Highly Recommended: ‘Quick Start with Algorithm’ Course
17 6 Captivating Python Programming Challenges from LabEx
18 9 Challenging Python Programming Labs to Boost Your Coding Skills
19 Matplotlib Colormap Normalization: Visualizing Nonlinear Data
20 Mastering Python: A Collection of Captivating Coding Tutorials
21 Mastering Python: A Collection of Hands-On Tutorials
22 Recommended: “Python Practice Labs” Course
23 Unleash Your Python Prowess: A Collection of Insightful Programming Tutorials
24 Unleash Your Python Skills with the ‘File Type Counter’ Project
25 9 Captivating Python Programming Tutorials from LabEx
26 Pandas Pop() Method | Python Data Analysis
原文链接:Matplotlib Colormap Normalization: Visualizing Nonlinear Data
暂无评论内容