Matplotlib - 每个hpoint的不同颜色

时间:2014-08-04 01:36:55

标签: matplotlib

在matplotlib教程中,他们说

import matplotlib.pyplot as plt
plt.plot([1,2,3,4], [1,4,9,16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()

将绘制具有相同颜色的点。

在这种情况下,如何以不同方式指定每个点的颜色?

1 个答案:

答案 0 :(得分:3)

正如@HYRY所提到的,你可以使用plt.scatter。这个 采用参数c,这是颜色或颜色序列。这意味着你 可以传递任何color specification accepted by matplotlib

所以例如你可以做

import matplotlib.pyplot as plt
x = [1,2,3,4]
y = [1,4,9,16]
colors = ['r', 'g', 'b', 'k']
plt.scatter(x, y, c=colors)
plt.show()

或RGB颜色定义序列

x = [1,2,3,4]
y = [1,4,9,16]
colors = [[0.6, 0.3, 0.1], 
          [0.1, 0.6, 0.5],
          [0.1, 0.3, 1.0],
          [0.8, 1.0, 0.2]]

plt.scatter(x, y, c=colors)
plt.show()