我有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)


python - 同一轴上的多个散点图-LMLPHP

或者,您可以使用x组合每个ynp.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/

10-11 03:24