Matplotlib connect scatterplot points with line - Python
检查了这个并且他们的解决方案非常简单,使用plt.plot(x_coordinates,y_coordinates,' - o')但是我有一个我正在使用的颜色列表所以我不能使用这种方法。它们是RGB颜色。 (也不确定为什么颜色在同一系列中交替出现)
如何使用与标记颜色相同的线条连接这些点?
import matplotlib.pyplot as plt
import random
x_coordinates = [(range(1,4))]*2
y_coordinates = [[3,4,5],[2,2,2]]
color_map = []
for i in range(0,len(x_coordinates)):
r = lambda: random.randint(0,255)
rgb_hex = ('#%02X%02X%02X' % (r(),r(),r()))
color_map.append(rgb_hex)
plt.scatter(x_coordinates,y_coordinates,c=color_map)
plt.show()
答案 0 :(得分:1)
您可以绘制散点图后面的线条,并设置zorder
以确保线条位于点后面。
import matplotlib.pyplot as plt
import random
x_coordinates = [(range(1,65))]*2
y_coordinates = [[random.randint(0,10) for i in range(0,64)]*2]
color_map = []
for i in range(0,len(x_coordinates)):
r = lambda: random.randint(0,255)
rgb_hex = ('#%02X%02X%02X' % (r(),r(),r()))
color_map.append(rgb_hex)
plt.plot(x_coordinates[0],y_coordinates[0][:len(x_coordinates[0])],'-',
zorder=2, , color=(.7,)*3)
plt.scatter(x_coordinates,y_coordinates,c=color_map, s=60, zorder=3)
plt.show()