如何在Matplotlib中将数字转换为颜色比例?

如何在Matplotlib中将数字转换为颜色比例?

要将数字转换为Matplotlib中的颜色比例,我们可以按以下步骤操作。

步骤

  • 使用numpy创建x、y和c数据点。
  • 将数据点转换为Pandas数据框。
  • 创建一个新图形或使用 subplots()方法 激活现有图形。
  • 获取热色图。
  • 使用Normalize()类将数据线性归一化。
  • 使用x和y数据点和线性归一化的彩色地图绘制散点。
  • 为x数据点设置xticks。
  • 创建标量可映射对象以制作色条。
  • 使用colorbar()方法制作色条。
  • 使用show()方法显示图形。

示例

from matplotlib import pyplot as plt, colors
import numpy as np
import pandas as pd
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
x = np.arange(12)
y = np.random.rand(len(x)) * 20
c = np.random.rand(len(x)) * 3 + 1.5
df = pd.DataFrame({"x": x, "y": y, "c": c})
fig, ax = plt.subplots()
cmap = plt.cm.hot
norm = colors.Normalize(vmin=2.0, vmax=5.0)
ax.scatter(df.x, df.y, color=cmap(norm(df.c.values)))
ax.set_xticks(df.x)
sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
fig.colorbar(sm)
plt.show()

输出

如何在Matplotlib中将数字转换为颜色比例?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程