在我的上一篇文章中,我在结尾说过把绘制折线图的完整代码展示出来,大家要用的把data和lab的内容改一下就可以了,注意按照上一篇文章的要求改:
from matplotlib import pyplot
pyplot.rcParams['font.sans-serif'] = ['Arial Unicode MS', 'simhei']
lab = ['标签', '标签1', '标签2', '标签3', '标签4', '标签5', '标签6', '标签7']
data = [120, 126, 132, 136, 142, 147, 155, 163]
pyplot.plot(lab,data)
pyplot.show()
"""关于美化这件事,翻翻我的文章吧"""
目录
1.绘画统计图的步骤
编写代码顺序:
1、导入matplotlib库中的pyplot模块
2、准备数据
3、画图
这是我们后期每次绘画统计图都要执行的步骤,是不是输入、处理、输出呢?
2.开始我们今天的内容
今天我们要绘制的是水平 or 垂直的柱状图:
柱状图是数据分析中常用的图表,主要用于对比、展示趋势、描述等。
3.编写代码
第一步是我们的常规导入:
from matplotlib import pyplot
pyplot.rcParams['font.sans-serif'] = ['Arial Unicode MS', 'simhei']
第二步就是准备数据:
lab = ['标签', '标签1', '标签2', '标签3', '标签4', '标签5', '标签6', '标签7']
data = [120, 126, 132, 136, 142, 147, 155, 163]
是不是很眼熟,这是上一篇的内容,接下来的内容就不同了。
pyplot.bar(lab,data)#提示:今天的内容涉及到了两种格式的柱状图,水平和垂直的命令不一样。
上面的是绘制垂直柱状图的代码,命令是bar()。
垂直柱状图的参数顺序与水平的不一样,垂直的柱状图顺序是先填lab(标签),再填写data(数值)
然后把它关掉:
pyplot.show()
这时候,你就得到了一个垂直的柱状图。但是,由于数值的变化,柱状图的高度也就有了变化,看上去是不是有些参差不齐?
这时候,我们需要一个题外的知识来帮忙
1.sort() 排序数据
sort()是python中的排序函数,可以将一个列表中的数据从大到小或者从小到大排序。
如果要排成从小到大:
列表名.sort()
就可以了。
但是如果要从大到小呢?
列表名.sort(reverse = True)
reverse的值默认是False,如果设置成了True,那么就会倒着排。
回到柱状图的绘制问题上
当你运行完这个排序程序后,你会发现数据与标签不符。为什么呢?
其实运行了sort()函数只是排序了数据那一个列表,但是注意我之前说的一句话——统计图的两种数据都是对应着的。
也就是说,旧的标签对上了新排序的数据,那就出现了数据与标签不符合的事情。
这时候你会说:”那我就提前把两组数据对好不就得了吗?“
这个方法是有用,但是仅限于数据量小的列表,如果让你统计海量数据怎么办?到时候可没有时间让你慢慢的去排。
这时候,我们就要再接触一个题外的知识了……
第一部分到此结束
下期继续