使用imshow绘制具有不同列数的pandas数据帧

时间:2016-04-28 19:47:44

标签: python pandas matplotlib

我想在iPython笔记本中并排绘制图像和熊猫条形图。这是函数的一部分,因此包含条形图值的数据框可以根据列数而变化。

图书馆

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
%matplotlib inline

数据帧

faces = pd.Dataframe(...) # return values for 8 characteristics

这将返回我正在寻找的条形图,并适用于不同数量的列。

faces.plot(kind='bar').set_xticklabels(result[0]['scores'].keys())

但是我找不到在包含图像的pyplot图中绘制它的方法。这就是我试过的:

fig, (ax_l, ax_r) = plt.subplots(nrows=1, ncols=2, figsize=(15, 5))
ax_l.imshow( img )
ax_r=faces.plot(kind='bar').set_xticklabels(result[0]['scores'].keys())

我得到的输出是左边的图像和一个空的绘图区域,下面是正确的图。有

ax_r.bar(...)

但我找不到必须定义要绘制的列的方法。

1 个答案:

答案 0 :(得分:1)

您只需在DataFrame.plot来电中指定您的轴对象。

换句话说:faces.plot(kind='bar', ax=ax_r)

相关问题