Я пытаюсь использовать многопроцессорные подсюжеты, но по какой-то причине они появляются отдельными цифрами. Например, первый участок получает участок в 1-м участке, а 2-й участок пуст. Затем появляется новая строка, где подзаговор 1 пуст, но подзаговор 2 строится.
Ожидаемое поведение, которое я хочу, чтобы графики были на одной фигуре (например, 1 строка, 2 субплощадки).
import multiprocessing
import matplotlib
import seaborn as sns
matplotlib.use('agg')
def sub_plot(df, x_col, y_col, axs, ax_num, ax_title):
sns.lineplot(x=df[x_col], y=df[y_col], ax=axs[ax_num])
axs[ax_num].set_title(ax_title)
return axs[ax_num]
def parallel_plot(df, x_col, y_col):
sns.set()
fig, axs = plt.subplots(1,2)
ax_args = [(0,'plot1'),(1,'plot2')]
with multiprocessing.Pool(2) as pool:
pool.starmap(sub_plot, [(df, x_col, y_col, axs, *args) for arg in ax_args]
return axs
parallel_plot(df, 'date', 'metric')