Python 在类似Matplotlib的显示中同时显示两个绘图(图1、图2)

Python 在类似Matplotlib的显示中同时显示两个绘图(图1、图2),python,matplotlib,plot,Python,Matplotlib,Plot,一般来说,我在一个图形中放置两个绘图没有任何问题,比如plot(a);在matplotlib中绘制(b)。现在,我正在使用一个特定的库,它将生成一个图形,我想用boxplot覆盖它。两者都是由matplotlib生成的。所以我想应该没问题,但我只能看到一个情节。这是代码。我正在使用,这是。我只能在图形中绘制BeeSarm或boxplot,但不能在图形中同时绘制两者。我的主要目标是尝试将列散点图和boxplot一起保存为pdf格式的图形。谢谢 from beeswarm import beeswa

一般来说,我在一个图形中放置两个绘图没有任何问题,比如
plot(a);在matplotlib中绘制(b)
。现在,我正在使用一个特定的库,它将生成一个图形,我想用boxplot覆盖它。两者都是由matplotlib生成的。所以我想应该没问题,但我只能看到一个情节。这是代码。我正在使用,这是。我只能在图形中绘制BeeSarm或boxplot,但不能在图形中同时绘制两者。我的主要目标是尝试将列散点图和boxplot一起保存为pdf格式的图形。谢谢

from beeswarm import beeswarm
fig=plt.figure()
figure(figsize=(5,7))
ax1=plt.subplot(111)
fig.ylim=(0,11)
d2 = np.random.random_integers(10,size=100)
beeswarm(d2,col="red",method="swarm",ax=ax1,ylim=(0,11))
boxplot(d2)

问题在于方框图的定位。默认定位列表从1开始,将绘图移动到1,蜂群绘图位于0

因此,绘图位于画布的不同位置

我稍微修改了你的代码,这似乎解决了你的问题

from beeswarm import beeswarm
fig = plt.figure(figsize=(5,7))
ax1 = fig.add_subplot(111)
# Here you may want to use ax1.set_ylim(0,11) instead fig.ylim=(0,11)
ax1.set_ylim(0,11)
d2 = np.random.random_integers(10,size=100)
beeswarm(d2,col="red",method="swarm",ax=ax1,ylim=(0,11))
boxplot(d2,positions=[0])

干杯

使用您的代码,boxplot仍然会覆盖BeeSarm。所以我只能看到箱线图。为了清楚起见,我用我想要的数字更新了我的问题。现在,我只是从蜂群中获取熊猫数据,然后用
plot
命令进行回复。现在我正在ipython内部运行您的代码。我将尝试不使用ipython。我会针对您的问题适当地更改答案。希望有帮助。我能改变情节的顺序吗?我不能像在plot中那样在boxplot中使用zorder。谢谢,