如何在 Matplotlib 中制作根据密度着色的散点图?
我们可以为颜色和值创建一个词典。如果出现相同的值,我们可以使用散点图方法,如果相近的值具有相同颜色集,这将使绘图颜色更浓密。
步骤
创建一个新图形或激活现有图形。
将 ~.axes.Axes 作为子图布置的一部分添加到图形中。
使用 np.random.normal() 方法获取 x 和 y 值。从正态(高斯)分布中绘制随机样本。
制作带有红色和蓝色颜色的色列表。
为了使其更浓密,我们可以对具有相同值的颜色进行存储。
绘制散点图、*y* vs. *x* 的散点图,具有不同的标记大小和/或颜色。
设置 x 视图限制。
设置 y 视图限制。
要显示图形,请使用 plt.show() 方法。
示例
import random import numpy as np import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(1, 1, 1) x = np.random.normal(0.5, 0.3, 10000) y = np.random.normal(0.5, 0.3, 10000) colors = ['red', 'blue'] color = dict() for i in x: if i not in color: color[i] = colors[random.randint(1, 10) % len(colors)] ax.scatter(x, y, c=[color.get(i) for i in x]) ax.set_xlim(-0.5, 1.5) ax.set_ylim(-0.5, 1.5) plt.show()
输出

广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
c 语言编程
C++
C#
MongoDB
MySQL
JavaScript
PHP