Matplotlib - 在定性颜色图中选择颜色

Tip*_*ena 4 python matplotlib

我正在绘制许多散点图,例如:

import matplotlib.pyplot as plt
import numpy as np

N = 50

x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y, c='blue')

x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y, c='green')

x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y, c='goldenrod')

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我正在为 >10 个散点图执行此操作,并且我想从定性颜色图中选择颜色以获得颜色平衡和分离,例如:

在此处输入图片说明

做这个的最好方式是什么?

Diz*_*ahi 9

我发现使用迭代器能够选择列表中的下一个颜色非常简洁:

import matplotlib.pyplot as plt
import numpy as np

colors = iter([plt.cm.tab20(i) for i in range(20)])

N = 50

x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y, c=[next(colors)])

x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y, c=[next(colors)])

x = np.random.rand(N)
y = np.random.rand(N)

plt.scatter(x, y, c=[next(colors)])

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明