Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何绘制特定的数据帧_Python 3.x_Pandas_Matplotlib_Seaborn - Fatal编程技术网

Python 3.x 如何绘制特定的数据帧

Python 3.x 如何绘制特定的数据帧,python-3.x,pandas,matplotlib,seaborn,Python 3.x,Pandas,Matplotlib,Seaborn,我想画一张图表 sex ch r p 'm' 10 18 17 'm' 9 6 6 我试过联合绘图和条形绘图,但我不知道如何绘图 sns.jointplot(x=df.index,y=np.sum(df)) 所以我在x轴数据框和y轴列和数据框上使用了我的代码,得到了错误: 操作数无法与形状(2,)(36,)一起广播 我想绘制一个图形,其中x轴上的所有列都是用于绘制的,并且 y轴列的总和表示ch y轴为19,r轴为24,p轴为23 我尝试使用连接图,但语法似乎错误 jointplot(x

我想画一张图表

sex ch r  p
'm' 10 18 17
'm'  9  6 6
我试过联合绘图和条形绘图,但我不知道如何绘图

sns.jointplot(x=df.index,y=np.sum(df))
所以我在x轴数据框和y轴列和数据框上使用了我的代码,得到了错误:

操作数无法与形状(2,)(36,)一起广播

我想绘制一个图形,其中x轴上的所有列都是用于绘制的,并且 y轴列的总和表示ch y轴为19,r轴为24,p轴为23

我尝试使用连接图,但语法似乎错误

jointplot(x=df.index,y=np.sum(df))
我希望输出是 在
x轴上
应该有ch、r、p列 在y轴上,我得到了一个显示错误的空图表,总共有几列:

操作数无法与形状一起广播


我认为您需要聚合
sum
并通过
unstack
进行重塑,因此可以使用:

另一个解决方案是:

df = df.groupby('sex').sum().unstack().reset_index()
df.columns = ['cat','sex','val']
print (df)
  cat sex  val
0  ch   m   19
1   r   m   24
2   p   m   23

sns.catplot(x='sex', y='val', hue='cat', data=df, kind='bar')
df.groupby('sex').sum().plot.bar()