我有3个散布图,想知道如何将这3个散布成1个大散布图。
我似乎仅使用Matplotlib找不到针对此特定问题的解决方案。
x1 = np.random.randint(40, 100, 50)
y1 = np.random.randint(40, 100, 50)
x2 = np.random.randint(0, 60, 50)
y2 = np.random.randint(0, 60, 50)
x3 = np.random.randint(40, 100, 50)
y3 = np.random.randint(0, 60, 50)
fig, (plot1, plot2, plot3, plot4) = plt.subplots(1, 4)
plot1.scatter(x1,y1, color='green', s = 10)
plot1.set(xlim=(0, 100), ylim=(0, 100))
plot2.scatter(x2,y2, color='red', s = 10)
plot2.set(xlim=(0, 100), ylim=(0, 100))
plot3.scatter(x3,y3, color='blue', s = 10)
plot3.set(xlim=(0, 100), ylim=(0, 100))
plot4.scatter(plot1, plot2, plot3)
所以我希望plot4是plot1,plot2和plot3的组合。
最佳答案
只需在plot4
上绘制每个原始图:
plot4.scatter(x1,y1, color='green', s = 10)
plot4.scatter(x2,y2, color='red', s = 10)
plot4.scatter(x3,y3, color='blue', s = 10)
或者,您可以使用
x
组合每个y
和np.concatenate()
数组仅调用一次plot命令,但这会失去为每个子组单独着色的能力。plot4.scatter(np.concatenate((x1,x2,x3)),
np.concatenate((y1,y2,y3)),
color='black', s=10)
关于python - 同一轴上的多个散点图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57080406/