目录

1 问题

2 从柱状图看绘制完整统计图注意事项

3 Python3代码

4 参考文献

1 问题

同样是统计图,有的美观的表达了想法,有的却让人看不明白。那么,我们在绘制完整统计图时要注意哪些事项呢?下面通过柱状图来说明。

2 从柱状图看绘制完整统计图注意事项图 1-1 不同职称人员频数

柱状图是针对离散型数据(比如职称),每根柱子代表一个类别(正教授、副教授、助理教授),柱子的高度就是这个类别的频数,也可以是百分比。

从上图来说明一个完整统计图应包含的注意事项:要有图表题,一般在图的下方,标题要简洁明了,比如图1-1的“不同职称人员频数”。

报告中统计图要有标号。横轴和纵轴要标注清楚(横轴:职称, 纵轴:频数)。如有单位,还需注明。

图的标题、横轴、纵轴等,出现的文字要统一和准确,不要一会儿中文,一会儿英文。写中文报告,就要标注中文。

图的比例要协调,别太胖也别太瘦,别太高也别太矮。

图的内容要正确、简明,避免出现不必要的标签、背景等。

注意图的配色。不要用非常难看的配色!

画完图要有适当的评论,尤其在报告里,这点非常重要。比如在图1-1中,可以写以下评述:

职称一共有三个水平(正教授、副教授和助理教授)。从图1-1可以看出,正教授人数最多(151人),其次是副教授(131人),人数最少的是助理教授(58人)。

很多报告,常常是统计图从天而降,没有任何评述,这是非常糟糕的做法。要么不画图,既然画图,就要写评论。

3 Python3代码

建立DataFrame
s1 = pd.DataFrame({
'职称': {0:"正教授", 1:"副教授", 2:"助理教授"},
'频数': {0:151, 1:131, 2:58}
})

2. 画图

plt.rcParams['figure.figsize'] = (8.0, 6.0) #调整图片大小
from matplotlib.font_manager import FontProperties #显示中文,并指定字体
myfont=FontProperties(fname=r'C:\Windows\Fonts\simhei.ttf',size=14)
sns.set(font=myfont.get_name())
ax = sns.barplot(x="职称", y="频数", data=s1, palette="pastel") #seaborn画柱状图
plt.xticks(fontsize=16) #设置x和y轴刻度值字体大小
plt.yticks(fontsize=16)
plt.yticks(np.arange(0, 151, 50)) #设置y轴标签
plt.xlabel("职称", fontsize=16) #设置x轴和y轴标签字体大小
plt.ylabel("频数", fontsize=16)
x = np.arange(len(s1["职称"])) #在柱状图上插入数值
y = np.array(list(s1["频数"]))
for a,b in zip(x,y):
plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=16)
plt.show()

4 参考文献

王汉生《数据思维——从数据分析到商业价值》