标签:exce http cat 数值范围 说明 save pad lse otto
本文主要记录笔者在使用Python制作条形图中的一些脚本。
# 导入数据
import pandas as pd
df = pd.read_excel(‘demo.xlsx‘, header=0, sheet_name=‘Sheet1‘)
df.head()
# 导入相关包
import matplotlib.pyplot as plt
import seaborn as sns
from pylab import mpl
mpl.rcParams[‘font.size‘] = 12
mpl.rcParams[‘axes.unicode_minus‘]=False
mpl.rcParams[‘font.family‘] = [‘calibri‘]
ax = sns.barplot(
x="Group",
y="Value",
hue="Category",
data=df,
orient="v"
)
ax.axhline(0, color="k", lw=1, clip_on=False)
ax.spines[‘top‘].set_visible(False)
ax.spines[‘right‘].set_visible(False)
ax.spines[‘bottom‘].set_visible(False)
# ax.spines[‘left‘].set_visible(False)
ax.tick_params(axis=u‘x‘, which=u‘both‘,length=0)
ax.set_xlabel("")
ax.set_ylabel("Value")
ax.set_ylim(0, 0.35)
plt.legend(bbox_to_anchor=(1.05, 0), loc=3, borderaxespad=0)
plt.savefig(‘20200713_demo.pdf‘, bbox_inches=‘tight‘)
from pylab import mpl
mpl.rcParams[‘font.size‘] = 12
mpl.rcParams[‘axes.unicode_minus‘]=False
mpl.rcParams[‘font.family‘] = [‘calibri‘]
设置图形的字体、字号以及解决在特定字体下负号的显示问题。
ax = sns.barplot(
x="Group",
y="Value",
hue="Category",
data=df,
orient="v"
)
条形图主体代码,这里只用到了几个基本的参数。关于barplot()函数的其他参数参考seaborn1和Matplotlib2官方文档。
ax.axhline(0, color="k", lw=1, clip_on=False)
添加直线y=0。对于y轴数据正负数同时存在的情况,在y=0的地方添加水平线可以让图形显得不那么突兀。
ax.spines[‘top‘].set_visible(False)
ax.spines[‘right‘].set_visible(False)
ax.spines[‘bottom‘].set_visible(False)
# ax.spines[‘left‘].set_visible(False)
删除图形四周的边框。
ax.tick_params(axis=u‘x‘, which=u‘both‘,length=0)
去掉x轴的标尺,也就是原来x轴上的小竖线。
ax.set_xlabel("")
ax.set_ylabel("Value")
设置x轴和y轴的标签。如果这里不进行设置,将会默认显示barplot的x和y参数对应的变量名称。因此,如果不想显示原始的变量名称,就可以在这里进行设置。
ax.set_ylim(0, 0.35)
设置y轴的数值范围。
plt.legend(bbox_to_anchor=(1.05, 0), loc=3, borderaxespad=0)
设置图例的位置。如果这里不进行设置,barplot函数默认会在图形内部显示图例。在数据比较多的情况下,图例和柱子就会有重叠。因此将图例放置在图形外部是比较好的一种方法。
plt.savefig(‘20200713_demo.pdf‘, bbox_inches=‘tight‘)
将图形保存到文本当中。
标签:exce http cat 数值范围 说明 save pad lse otto
原文地址:https://www.cnblogs.com/sangf/p/13292007.html