本文介绍了如何向海运地物级别图中的每个地块添加x轴标签的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!
问题描述
我正在使用Seborn绘制因子图。
总共有4个‘子图’(并且使用col_wrap =2,所以我有2行,每行包含2个子图)。只有栅格最底部的两个子图有x轴标签(我相信这是默认的)。
是否可以配置因子图,使4个图中的每一个都有x轴标签?(我在文档或StackOverflow上找不到此选项)
更新:
以下是代码(在因子网格上生成4个时间序列图):
数据帧(Df)如下所示:
Company Date Value
ABC 08/21/16 500
ABC 08/22/16 600
ABC 08/23/16 650
DEF 08/21/16 625
DEF 08/22/16 675
DEF 08/23/16 680
GHI 08/21/16 500
GHI 08/22/16 600
GHI 08/23/16 650
JKL 08/21/16 625
JKL 08/22/16 675
JKL 08/23/16 680
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
df = pd.read_csv(the_file_name.csv)
g = sns.factorplot(data=df,
x='Date',
y='Value',
col='Company',
col_wrap=2,
sharey=False)
g.set_xlabels('')
g.set_ylabels('product count')
g.set_xticklabels(rotation=45)
plt.show()
您会注意到x轴日期显示在底部2个图中。我希望x轴日期也能显示在最上面的两个曲线图上。
谢谢!
matplotlib
我不确定在seaborn中有什么方法可以做到这一点,但是您可以使用matplotlibAxes实例来做到这一点。
setp将xticklabels中的所有轴的xticklabels设置为可见(g)。注意,我在这里也设置了旋转,因为seborn不会旋转上面一行上的ticklabels。
最后,我使用subplots_adjust增加了子图之间的间距,以便为刻度标签留出空间。
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
from io import StringIO
the_file_name = StringIO(u"""
Company,Date,Value
ABC,08/21/16,500
ABC,08/22/16,600
ABC,08/23/16,650
DEF,08/21/16,625
DEF,08/22/16,675
DEF,08/23/16,680
GHI,08/21/16,500
GHI,08/22/16,600
GHI,08/23/16,650
JKL,08/21/16,625
JKL,08/22/16,675
JKL,08/23/16,680
""")
df = pd.read_csv(the_file_name)
g = sns.factorplot(data=df,
x='Date',
y='Value',
col='Company',
col_wrap=2,
sharey=False)
g.set_xlabels('')
g.set_ylabels('product count')
for ax in g.axes:
plt.setp(ax.get_xticklabels(), visible=True, rotation=45)
plt.subplots_adjust(hspace=0.3)
plt.show()
这篇关于如何向海运地物级别图中的每个地块添加x轴标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!
The End


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)