Python 用Seaborn绘制图形
我有一个csv文件,我想使用特定组创建图形。我的csv文件如下所示:Python 用Seaborn绘制图形,python,pandas,seaborn,Python,Pandas,Seaborn,我有一个csv文件,我想使用特定组创建图形。我的csv文件如下所示: Year County Item Value 1989 BILLINGS BARLEY 6000 1989 GOLDEN CORN 1700 1989 SLOPE FLAXSEED 100 1990 BILLINGS BARLEY 15000 1990 GOLDEN CORN
Year County Item Value
1989 BILLINGS BARLEY 6000
1989 GOLDEN CORN 1700
1989 SLOPE FLAXSEED 100
1990 BILLINGS BARLEY 15000
1990 GOLDEN CORN 300
1990 SLOPE FLAXSEED 500
我想绘制一张图表,显示每个县的大麦、玉米和亚麻籽的价值(即1989年至1990年)。因此,每个县将有3张单独的图表,每个图表中有三行,分别是大麦、玉米和亚麻籽及其各自的年值
我尝试使用的代码是:
g = sns.FacetGrid(df, row='Item',col="County", margin_titles=True)
g.map(sns.pointplot, "Year", "Value", color=".3", ci=None);
但这将返回错误无法转换为数字
使用excel,我将县
和项目
的数据类型更改为general,将年
和值
的数据类型更改为number,但这似乎没有帮助
任何帮助都会很好,谢谢。我刚刚做了一个快速测试,对我来说效果不错。我想你正在以非数字的形式读取年份/值,它不会被seaborn自动转换。在excel中更改内容不会有帮助。你需要在pandas中执行此操作。在读取int后显示数据,而不是显示csvo熊猫和显示df.info()
的结果。或者只做df.Year=df.Year.astype(int)
和'Value'相同。嗯,我只是尝试了一下,甚至在将Year和Value更改为int后,它会显示数据列(共4列):Year 166 non-null int32 country 166 non-null object Item 166 non-null object Value 166 non-null object dtypes:int32(1),object(3)
nevermind,我的真实文件中有几个空白单元格必须删除,这似乎已经解决了它。谢谢!在我的ipython环境中,我刚刚得到了您所期望的。