第一章,机器学习常用python框架

第一部分matplotlib

1,什么是matplotlib?

绘图工具。主要做数据可视化图表。

2,matplotlib是怎么样的?

matplotlib图像的三层结构:

图像层:plot 折线, scatter散点图,hist柱状图,pie饼图等方法绘制的图像

辅助显示层:axis坐标轴,axis label坐标轴名称,spines边距线,tick坐标轴刻度,tick label坐标轴刻度标签,title标题,grid网格线,legend图例

容器层:(最底层)画板Canvas,画布Figure,图表Axes

实例一
画一个折线图

'画一个折线图'

from matplotlib import pyplot as plt
'导入pyplot包'
x=range(2,26,2)
y=[15,13,14.5,17,20,25,26,22,24,22,18,15]
'x轴和y轴的个数要相对应'
plt.plot(x,y)
plt.show()

添加改变图片大小和保存,但x轴的刻度没有发生改变

'画一个折线图'

from matplotlib import pyplot as plt
'导入pyplot包'

fig=plt.figure(figsize=(10,20),dpi=50)
'调整图像大小(长,宽),dpi参数使图像更清晰'
x=range(2,26,2)
y=[15,13,14.5,17,20,25,26,22,24,22,18,15]
'x轴和y轴的个数要相对应'
plt.plot(x,y)
plt.saxefig("./tupian.png")
'保存图片'
plt.show()

修改x轴的刻度

'画一个折线图'

from matplotlib import pyplot as plt
'导入pyplot包'

fig=plt.figure(figsize=(10,5),dpi=50)
'调整图像大小(长,宽),dpi参数使图像更清晰'
x=range(2,26,2)
y=[15,13,14.5,17,20,25,26,22,24,22,18,15]
'x轴和y轴的个数要相对应'
plt.plot(x,y)
plt.xticks(x[::2])
'[::2]表示有12个数,12/2取6个坐标'
'设置x轴的刻度2,6,10,14,18,20'
plt.show()

实例二
列表a表示10到12点的每一分钟的气温
a=[random.randint(20,35)for i in range(120)]

【补充知识点:
函数原型: numpy.random.uniform(low,high,size)

功能:从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high】

【补充知识点:
函数format()通过位置来填充字符串

print(‘hello {0} i am {1}’.format(‘Kevin’,‘Tom’))

#hello Kevin i am Tom】

【补充知识点:
设置pycharm中中文字体的方法
pyplot.rcParams[‘font.family’]=‘Arial Unicode MS’
‘设置中文字体’】

from matplotlib import pyplot as plt
'导入pyplot包'
import random
plt.rcParams['font.family']='Arial Unicode MS'
'设置中文字体'

fig=plt.figure(figsize=(10,5),dpi=50)
'调整图像大小(长,宽),dpi参数使图像更清晰'
x=range(120)
random.seed(10)
'设置随机种子,让不同时候随机得到的结果都一样'
y=[random.uniform(20,35) for i in range(120)]
'如果i在range(120)中,与随机产生的(20,35)之间的数相互对应'
plt.plot(x,y)

_x_ticks=["10点{}分".format(i) for i in x if i<60]
'设置10点的横坐标,如果i<60,则i从x中取得'
_x_ticks+=["11点{}分".format(i-60) for i in x if i>60]
plt.xticks(x[::5],_x_ticks[::5],rotation=90)

plt.xlabel("时间")
plt.ylabel("温度")
plt.title("10点到12点每一分钟的温度变化")

plt.show()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值