需要使用到Numpy生成X和Y
在 anconda提供的编译器Spyder中:
import numpy as np
引用numpy库作为np来使用
先生成一个X数组作为X轴:
x=list(range(10,29))
输出10到28的一个数组,但是这个数组不适用于我们的图像构建,所以要引用numpy库中的array函数
x= np.array(x)
通过这个函数将原数组转换成我们需要用到的数组
因为是要构建一个线性关系,也就是确立y=x+b的关系,我们需要生成随机扰动项,也就是需要通过numpy提供的random方法来确立关系
e = np.random.randn(19)
19表示生成19个随机数
array([-1.09966045, -0.00527499, -0.99471305, -1.39432261, -1.93133477, -0.88176476, -0.30119564, 0.30721595, -0.42166133, 0.48725303, 1.10091878, 0.19685779, 1.09610661, -0.48125626, -0.00474868, -0.73581372, -0.68684776, -1.54691135, 1.77830768])
使用pandas来生成 DATAFrame(数据框架)
首先 import pandas as pd
pd.DataFrame({"x":x,"y":y}) Out[12]: x y 0 10 8.900340 1 11 10.994725 2 12 11.005287 3 13 11.605677 4 14 12.068665 5 15 14.118235 6 16 15.698804 7 17 17.307216 8 18 17.578339 9 19 19.487253 10 20 21.100919 11 21 21.196858 12 22 23.096107 13 23 22.518744 14 24 23.995251 15 25 24.264186 16 26 25.313152 17 27 25.453089 18 28 29.778308
使用DataFrame的结果就是将两组数组组成一个表格形式
使用Matplotlib将数据可视化
import matplotlib.pyplot as plt
引用matplotlib库中的图画工具pyplot
fig=plt.figure(figsize=(6,6),dpi=80)
设置图像框,确定大小6X6,设置分辨率80
ax = fig.add_subplot(111)
设置一行一列,并且选择第一个位置画图
ax.scatter(data.x,data.y,color="b",label="$y = x + \epsilon$")
data.x 引用数据或y,color="b"将点用蓝色,label图示,将线性关系的表达式展示出来
plt.legend(shadow=True)
展示所画的图像
plt.show()
展示图片
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vVPBZRDG-1583672890927)(C:\Users\86189\AppData\Roaming\Typora\typora-user-images\image-2