如何在 matplotlib/seaborn 中用饼图填充 ndarray 图形?

How do you populate a ndarray figure with pie charts in matplotlib/seaborn?

我有按国家/地区分组的类型的流媒体数据,如下所示:

   country             type     value                 count     
198 Canada             Movie    International Movies    141   
199 Canada             Movie    Dramas                  106   
200 Canada             Movie    Comedies                 70   
201 Canada             Movie    Documentaries            48   
202 Canada             Movie    Action & Adventure       41

示例数据可以在这里找到:https://rentry.co/kdqy2

我正在尝试为前 10 个国家/地区创建饼图并将它们显示为 2 行 x 5 列。 在阅读了一些列出的堆栈溢出解决方案后 here and 说必须为 ndarrays 修改使用 for 循环以使其正确遍历和填充图,我想出了以下代码:

fig, axs = plt.subplots(2, 5, figsize=(3*5, 6), subplot_kw={'aspect':'equal'})

for row in axs:
    for ax, (name, sub_df) in zip(row, genre_df.groupby('country')):
        ax.pie(sub_df['count'], labels=sub_df['value'])
        ax.set_title(name)

但这只显示前五个国家两次:

我想我需要将索引与 axs 中的 ax 相关联,以便将其强制到后 5 个国家,但我不知道如何使用 enumerate()和一个 zip() 同时在 for 循环中。

所示(我确信在其他地方),您可以使用 ravel()flatten()flat 并且只使用一个循环:

for ax, (name, sub_df) in zip(axs.ravel(), genre_df.groupby('country')):