我一直在使用Jupyter Notebook处理数据集,我正在比较通过仓库运输的物品数量与这些物品的拣选数量。
我正在使用Seaborn渲染图。
我在一个网格中有两个条形图,并且数据未排序,这些图看起来像这样:
使用以下代码:
plt.figure(1, figsize=(20,15))
gs = gridspec.GridSpec(2, 2)
plt.subplot(gs[0,0], title="Count of SKU pick events")
sns.barplot(x='qty', y='sku', data=sku_count, palette='Spectral')
plt.subplot(gs[0,1], title="Sum of SKU quantities picked")
sns.barplot(x='qty', y='sku',data=sku_sum, palette='Spectral')
可以看出,两个图之间每个条的颜色都对应。
一旦我按照每个图的各自数量(COUNT vs SUM)对数据进行排序,就会出现问题:
sku_sum = sku_sum.sort_values('qty',ascending=False)
sku_count = sku_count.sort_values('qty',ascending=False)
并使用类似的代码重新渲染图形:
plt.figure(2, figsize=(20,15))
gs = gridspec.GridSpec(2, 2)
plt.subplot(gs[0,0], title="Count of SKU pick events")
sns.barplot(x='qty', y='sku', data=sku_count, palette='Spectral', hue_order=h_o)
plt.subplot(gs[0,1], title="Sum of SKU quantities picked")
sns.barplot(x='qty', y='sku',data=sku_sum, palette='Spectral', hue_order=h_o)
从第4行开始,系列颜色不对应。
我想在列表中定义我的色相序列,以后我使用hue
或hue_order
进行引用:
#hue_order handling (TODO: NOT WORKING YET!)
h_o = ['A','B','C','D','E','F','G','H']
我尝试使用hue
,但我认为该代码用于向数据添加其他维度,并使用以下代码:
plt.figure(3, figsize=(20,15))
gs = gridspec.GridSpec(2, 2)
plt.subplot(gs[0,0], title="Count of SKU pick events")
sns.barplot(x='qty', y='sku', data=sku_count, palette='Spectral', hue=h_o)
plt.subplot(gs[0,1], title="Sum of SKU quantities picked")
sns.barplot(x='qty', y='sku',data=sku_sum, palette='Spectral', hue=h_o)
我绝对不需要。
关于如何针对具有不同数据的同一系列序列,如何锁定不同图形之间的色相的任何建议?