Matplotlib 使用小记

以下为代码示例,功能在注释内:

import matplotlib.pyplot as plt
from pylab import mpl
import numpy as np
import matplotlib.pylab as plb
mpl.rcParams['font.sans-serif'] = ['KaiTi'] # 解决中文文本显示不出的问题,动态进行配置
'''
黑体	SimHei
微软雅黑	Microsoft YaHei
微软正黑体	Microsoft JhengHei
新宋体	NSimSun
新细明体	PMingLiU
细明体	MingLiU
标楷体	DFKai-SB
仿宋	FangSong
楷体	KaiTi
仿宋_GB2312	FangSong_GB2312
楷体_GB2312	KaiTi_GB2312
'''
values = [1,5,8,9,2,0,3,10,4,7]
values2 = [6,6,6,6,9,9,9,9,9,9]
plt.xlabel("x轴") # 添加标签
plt.ylabel("y轴")
plt.annotate(xy=[9,4],s="特殊点") # 为某一点加注释
plt.plot(range(1,11),values,'mv:') # 创建标图 参数:x轴值,y轴值
plt.plot(range(1,11),values2,'ro--') # 虚线,颜色标记都在一个字符串内
ax = plt.axes()
ax.set_xlim([0,11]) # 轴的界限即长度
ax.set_ylim([-1,11])
ax.set_xticks([1,2,3,4,5,6,7,8,9,10]) # 坐标刻度
ax.set_yticks([0,2,4,6,8,10])
ax.grid() # 绘制网格
plt.savefig('Test.png', format='png') # 需要在show前面,不然获得空白图,因为show新建了一个图
plt.legend(['x','y'],loc = 0) # 图例说明,loc为位置
plt.show()
# 饼形图
value3 = [5,8,9,10,4,7]
colors = ['b','g','r','c','m','y']
labels = ['A','B','C','D','E','F']
explode = [0,0.2,0,0,0,0] # 凸显值列表,0为扇形图保持不变,其他值为离中心移动距离
plt.pie(value3,colors=colors,labels=labels,explode=explode,autopct='%1.1f%%',counterclock = False,shadow=True) # autopct 为百分率显示,counterclock决定反向是顺时针还是逆时针,shadow 为阴影增加3D效果
plt.show()
# 柱形图
value4 = [5,8,9,10,4,7]
colors = ['b','g','r','c','m','y']
widths = [0.7,0.8,0.6,0.7,0.7,0.7]
plt.bar(range(0,6),value4,width=widths,color = colors,align='center')
plt.show()
# 散点图
x1 = 5 * np.random.rand(40)
x2 = 5 * np.random.rand(40) + 25
x3 = 25 * np.random.rand(20)
x = np.concatenate((x1,x2,x3)) # concatenate为数组拼接
y1 = 5 * np.random.rand(40)
y2 = 5 * np.random.rand(40) + 25
y3 = 25 * np.random.rand(20)
y = np.concatenate((y1,y2,y3))
color_array = ['b']*40 + ['g']*40 + ['r']*20
z = np.polyfit(x,y,1) # 最小二乘法拟合,返回系数向量
p = np.poly1d(z)
plb.plot(x,p(x),'m-')
plt.scatter(x,y,s=[100],c=color_array,marker='^') # s决定数据点大小,marker决定数据点形状 c决定数据点颜色
plt.show()

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值