1、绘制条形图
1 import matplotlib
2 import matplotlib.pyplot as plt
3
4 # 显示中文标识
5 matplotlib.rcParams["font.sans-serif"] = ["SimHei"]
6 matplotlib.rcParams["axes.unicode_minus"] = False
7
8 # X/Y轴刻度
9 x = [1,2,3,4,5,6,7,8]
10 y = [3,1,4,5,8,9,7,2]
11
12 # ==============绘制条形图=================
13 plt.bar(x,
14 y,
15 align="center", # 排列方式
16 color="c", # 填充颜色
17 tick_label=["q","a","c","e","r","j","b","p"], # 将X轴上的刻度替换成指定编号
18 hatch="/") # 图形填充值,可取值为: / , , | , - , + , x , o , O , . , *
19
20 # X/Y轴标签
21 plt.xlabel("箱子编号")
22 plt.ylabel("箱子重量(kg)")
23
24 plt.show()

2、绘制水平条形图
1 import matplotlib
2 import matplotlib.pyplot as plt
3
4 # 显示中文标识
5 matplotlib.rcParams["font.sans-serif"] = ["SimHei"]
6 matplotlib.rcParams["axes.unicode_minus"] = False
7
8 # X/Y轴刻度
9 x = [1,2,3,4,5,6,7,8]
10 y = [3,1,4,5,8,9,7,2]
11
12 # ==============绘制水平条形图=================
13 plt.barh(x,
14 y,
15 align="center", # 排列方式
16 color="c", # 填充颜色
17 tick_label=["q","a","c","e","r","j","b","p"], # 将X轴上的刻度替换成指定编号
18 hatch="/") # 图形填充值,可取值为: / , , | , - , + , x , o , O , . , *
19
20 # X/Y轴标签
21 plt.xlabel("箱子重量(kg)")
22 plt.ylabel("箱子编号")
23
24 plt.show()

3、绘制直方图
1 import matplotlib
2 import matplotlib.pyplot as plt
3 import numpy as np
4
5 # 显示中文标识
6 matplotlib.rcParams["font.sans-serif"] = ["SimHei"]
7 matplotlib.rcParams["axes.unicode_minus"] = False
8
9 # 随机生成0,9的100个整数
10 x = np.random.randint(0,10,100)
11 bins = range(0,11,1)
12
13 # ================绘制直方图================
14 plt.hist(x=x, # 分布数据
15 bins=bins, # 指定共有几个箱子,也就是有几条条形图
16 color="g", # 条形图颜色
17 histtype="barstacked", # 条形图类型,可选bar,barstacked,step,stepfilled,默认为bar
18 align="mid", # 直方图样式,可选 left mid right
19 rwidth=0.8, # 柱子与柱子之间的距离,默认是0
20 alpha=0.6) # 透明度
21 # X/Y轴标签
22 plt.xlabel("箱子重量(kg)")
23 plt.ylabel("销售个数(个)")
24
25 plt.show()

4、绘制饼图
1 import matplotlib
2 import matplotlib.pyplot as plt
3
4 # 显示中文标识
5 matplotlib.rcParams["font.sans-serif"] = ["SimHei"]
6 matplotlib.rcParams["axes.unicode_minus"] = False
7
8 # 数据类型
9 kinds = "简易箱","保温箱","行李箱","密封箱"
10
11 # 每种数据的填充颜色
12 colors = ["r","g","b","c"]
13
14 # 每种数据的占比
15 soldNums = [0.05,0.45,0.15,0.35]
16
17 # ===================绘制饼图====================
18 plt.pie(x=soldNums, # 每种数据的占比
19 labels=kinds, # 饼图外侧显示的说明文字
20 autopct="%3.1f%%", # 控制饼图内百分比设置,'%1.1f'指小数点前后位数(没有用空格补齐)
21 startangle=60, # 起始绘制角度,默认图是从x轴正方向逆时针画起,如设定=90则从y轴正方向画起
22 colors=colors) # 每快饼的填充颜色
23
24 # 标题
25 plt.title("不同箱子的销售占比")
26 plt.show()

5、在极坐标轴上绘制折线图
1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 # 从0到2pi取12个数.endpoint:如果为False则最后一个数不为2pi,如果为True则最后一个数为2pi 5 theta = np.linspace(start=0.0,stop=2*np.pi,num=12,endpoint=False) 6 7 # 创建一个给定类型(12个)的数组,将其填充在一个均匀分布的随机样本[0, 1)中 8 r = 30*np.random.rand(12) 9 10 # ===============在极坐标轴上绘制折线图================= 11 plt.polar(theta, # 每个标记所在的射线与极径的夹角 12 r, # 每个标记到原点的距离 13 color="chartreuse", # 颜色 14 linewidth=2, # 线宽 15 marker="*", # 标志点 16 mfc="b", # 数据点的颜色 17 ms=10) # 标志点大小 18 plt.show()

6、绘制气泡图
1 import matplotlib.pyplot as plt 2 from matplotlib import cm 3 import numpy as np 4 5 # 生成指定维度(100维度)的服从标准正态分布的随机数 6 a = np.random.randn(100) 7 b = np.random.randn(100) 8 9 # ==================绘制气泡图=================== 10 plt.scatter(x=a, # x轴上的数值 11 y=b, # y轴上的数值 12 s=np.power(10*a+20*b,2),# 散点标记的大小((数组a*10+数组b*20)的平方) 13 c=np.random.rand(100), # 散点标记的颜色 14 cmap=cm.RdYlBu, # 将浮点数映射成颜色的颜色映射率 15 marker="o") # 标记点(气泡) 16 plt.show()

7、绘制棉棒图
1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 # 从0到2pi取20个数 5 x = np.linspace(0.5,2*np.pi,20) 6 7 # 生成指定维度(20维度)的服从标准正态分布的随机数 8 y = np.random.randn(20) 9 10 # ====================绘制棉棒图================= 11 plt.stem(x, # 指定棉棒的x轴基线上的位置 12 y, # 绘制棉棒的长度 13 linefmt="-", # 棉棒的样式 14 markerfmt="o", # 棉棒末端的样式 15 basefmt="-") # 指定基线的样式 16 plt.show()

8、绘制箱线图
1 import matplotlib
2 import matplotlib.pyplot as plt
3 import numpy as np
4
5 # 显示中文标识
6 matplotlib.rcParams["font.sans-serif"] = ["SimHei"]
7 matplotlib.rcParams["axes.unicode_minus"] = False
8
9 # 生成指定维度(1000维度)的服从标准正态分布的随机数
10 x = np.random.randn(1000)
11
12 # ===================绘制箱线图=====================
13 plt.boxplot(x)
14
15 plt.xticks([1],["随机数生成器AlphaRM"])
16
17 # y轴上的标签
18 plt.ylabel("随机数值")
19
20 # 标题
21 plt.title("随机数生成器抗干扰能力的稳定性")
22
23 # 绘制网格线
24 plt.grid(axis="y", # 在y轴上绘制网格线
25 ls=":", # 网格线样式
26 color="gray", # 网格线颜色
27 alpha=0.4) # 网格线透明度
28 plt.show()

9、绘制误差棒图
1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 # 从0.1到0.6区6个值 5 x = np.linspace(0.1,0.6,6) 6 7 # 指数函数 8 y = np.exp(x) 9 10 # ===================绘制误差棒图================== 11 plt.errorbar(x=x, # 数据点的水平位置 12 y=y, # 数据点的垂直位置 13 fmt="bo:", # 数据点的标记样式以及相互之间连接线样式 14 yerr=0.2, # y轴方向的数据点的误差计算方法 15 xerr=0.02, # x轴方向的数据点的误差计算方法 16 ecolor="r", # 误差棒的颜色 17 elinewidth=2, # 误差棒线条的粗细大小 18 capsize=10, # 误差棒边界横杠的大小 19 capthick=4, # 误差棒边界横杠的厚度 20 ms=10, # 数据点的大小 21 mfc="g", # 数据点的颜色 22 mec="m") # 数据点边缘的颜色 23 # x轴上的刻度 24 plt.xlim(0,0.7) 25 plt.show()
