Python笔记:用matplotlib绘制柱状图

眉间皱痕 提交于 2020-07-29 06:35:51

        matplotlib是Python中最基本的绘图库,而柱状图又是使用频率较高的可视化图形。下面我就在有pyecharts库和R语言,echarts绘图经验的基础上,简单得摸索一下用matplotlib绘制柱状图的方法。代码如下:

# 导入相关的库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# 在线显示
%matplotlib inline

# 定义画布的大小
fig = plt.figure(figsize = (15,8))

# 添加主标题
plt.title("各品牌汽车的销量")

# 设置X周与Y周的标题
# plt.xlabel("品牌")
# plt.ylabel("销量")

# 显示网格线
# plt.grid(True)

# 设置 x轴 数据
x = np.array(["宝马","奔驰","奥迪","马自达","大众","布加迪","兰博基尼","法拉利","本田","丰田"])

# 设置 y轴 数据
y = np.array([1000,800,600,400,300,250,150,100,80,50])

# 直接绘制简单的柱状图
# plt.bar(x,y)

# 绘制柱状图,并把每根柱子的颜色设置为洋红色
# plt.bar(x,y,color = "m")

# 绘制柱状图,并把每根柱子的颜色设置为洋红色,顺便设置每根柱子的宽度
# plt.bar(x,y,color = "m",width = 0.6)

# 绘制柱状图,并给每根柱子的颜色根据自己的喜好来自定义
plt.bar(x,y,color = ["red","yellow","green","blue","black","gold","pink","purple","violet","Chocolate"])

# 保存输出绘制的图形到指定的路径中
plt.savefig(r"C:\Users\QDM\Desktop\car.png")

运行结果①:

# 直接绘制简单的柱状图
plt.bar(x,y)

运行结果②:

# 绘制柱状图,并把每根柱子的颜色设置为洋红色
plt.bar(x,y,color = "m")

运行结果③:

# 绘制柱状图,并把每根柱子的颜色设置为洋红色,顺便设置每根柱子的宽度
plt.bar(x,y,color = "m",width = 0.6)

运行结果④:

注:颜色置换可参考该链接: https://blog.csdn.net/bjbz_cxy/article/details/79514030

# 绘制柱状图,并给每根柱子的颜色根据自己的喜好来自定义
plt.bar(x,y,color = ["red","yellow","green","blue","black","gold","pink","purple","violet","Chocolate"])

 

        另外,我们一般将纵向的称为“柱型图”,而横向的成为“柱状图”。两者的共同点是用于相同实物的量之对比,不同点是柱型图一般用于表示较少对象之间的对比,但如果需要对比的条目较多的话,还用柱型图就会使画面有一种拥挤不堪的感觉。这时,我们就需要用到另一种“柱型图”——柱状图(横向)。

        其实在matplotlib中,要绘制柱形图也非常简单,只需把bar()参数改为barh()即可,如下:

# 导入相关的库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# 在线显示
%matplotlib inline

# 定义画布的大小
fig = plt.figure(figsize = (15,8))

# 添加主标题
plt.title("各品牌汽车的销量")

# 设置X周与Y周的标题
# plt.xlabel("品牌")
# plt.ylabel("销量")

# 显示网格线
# plt.grid(True)

# 设置 x轴 数据
x = np.array(["丰田","本田","法拉利","兰博基尼","布加迪","大众","马自达","奥迪","奔驰","宝马"])

# 设置 y轴 数据
# 值得注意的是,参数的排列最好是排一个升序或降序,这样画出来的图形会因为比较有规律感,这样会显得比较好看一点
y = np.array([50,80,100,150,250,300,400,600,800,1000])

# 直接绘制简单的柱状图
# plt.barh(x,y)

# 绘制柱状图,并把每根柱子的颜色设置为洋红色
# plt.barh(x,y,color = "m")

# 绘制柱状图,并把每根柱子的颜色设置为洋红色,顺便设置每根柱子的宽度
# plt.barh(x,y,color = "m",width = 0.6)

# 绘制柱状图,并给每根柱子的颜色根据自己的喜好来自定义
plt.barh(x,y,color = ["red","yellow","green","blue","black","gold","pink","purple","violet","Chocolate"])

# 保存输出绘制的图形到指定的路径中
plt.savefig(r"C:\Users\QDM\Desktop\car.png")

运行结果:

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!