Matplotlab绘图基础

import matplotlib.pyplot as plt

设置画布大小

plt.figure(figsize=(6, 3))

plt.plot(x,y,'g^',label='sin(x)')     参数1:X轴,参数2:y轴   颜色 形状  label=“线条标题” plt.legend(loc='best')  需要和legend配合使用

plt.title("标题名称")   

plt.xlim((0, np.pi + 1))   设置X轴范围
plt.ylim((-3, 3))   设置Y轴范围
plt.xlabel('X')  设置X轴标题
plt.ylabel('Y')  设置Y轴标题

plt.legend(loc='best')  显示右上角线条款式

首先来看下如何绘制散点图。

k = 500
x = np.random.rand(k) 
y = np.random.rand(k)
size = np.random.rand(k) * 50 # 生成每个点的大小
colour = np.arctan2(x, y) # 生成每个点的颜色大小
plt.scatter(x, y, s=size, c=colour)
plt.colorbar() # 添加颜色栏
plt.show()

柱状图我们经常会用到,我们来看下如何画出柱状图,并在图上标注出数据对应的数值。

k = 10
x = np.arange(k)
y = np.random.rand(k)
plt.bar(x, y) # 画出 x 和 y 的柱状图

# 增加数值
for x, y in zip(x, y):
    plt.text(x, y , '%.2f' % y, ha='center', va='bottom') #设置参数 ha='center' 横向居中对齐,设置 va='bottom'纵向底部(顶部)对齐。
plt.show()

中文乱码解决

Matplotlib 有个让人恼火的问题是,默认情况下,Matplotlib 中文会乱码。

x = ['北京', '上海', '深圳', '广州']
y = [60000, 58000, 50000, 52000]
plt.plot(x, y)
plt.show()

可以看到,上面所有的中文都乱码了,显示成方框了,如何解决呢?

其实只需要配置下后台字体即可。

plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

plt.plot(x, y)
plt.show()



猜你喜欢

转载自www.cnblogs.com/dll102/p/12957697.html