1.简单折线图
导入matplotlib包中的pyplot函数,重命名为plt
创建一个数字列表
plt.plot(调用创建的数字列表)
plt调用show将绘制的好的折线图显示出来
import matplotlib.pyplot as plt
costs = [1,2,3,4,5,6,3,7,2]
plt.plot(costs)
plt.ylabel('cost')
plt.xlabel('epochs (per 100)')
plt.title("Learning rate = ")
plt.show()
2.校正图形
上面因为只对x轴做了定义所以y轴都是不确定性的导致不准确
导入matplotlib包中的pyplot函数,重命名为plt
创建一个数字列表(1)
再创建一个数字列表(2)
plt.plot(调用创建的数字列表(1),(2),lienwidth = 数字)
plt调用show将绘制的好的折线图显示出来
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y, linewidth=5)
plt.show()
3.散状图
在神经网络中为了描绘数据集中不同样本的分布情况,常常要绘制散状图。
用scatter()绘制散点图并设置其样式。
plt.scatter(x轴的点的位置,y轴的点的位置,s = 数字(散点的大小)) #创建为散点图
plt.title(“标题”,fontsize = 数字) #添加标题,并修改标题字体大小
plt.xlabel(“横坐标标签”,fontsize = 数字) #添加横坐标标签并修改字体大小
plt.ylabel(“纵坐标标签”,fontsize = 数字) #添加纵坐标标签并修改字体大小
plt.tick_params(axis = “both”,which = ‘major’,labelsize= 数字) #axis = ‘’设定修改哪个坐标进行修改,both为全部修改,xl为只修改横坐标,y为只修改纵坐标(不设定为默认both),labelsize用于设置刻度线标签的字体大小
参数which的值为 ‘major’、’minor’、’both’,分别代表设置主刻度线、副刻度线以及同时设置,默认值为’major’ (主刻度线、副刻度线类似于厘米尺。CM与MM的区别)
plt调用show将绘制的好的折线图显示出来
下面是单个点的散状图:
plt.scatter(2, 4, s=200)
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value", fontsize=14)
plt.ylabel("Square of Value", fontsize=14)
plt.tick_params(axis='both', which='major', labelsize=14)
plt.show()
下面是多个点的散状图,并用不同颜色表示其分类不同,用参数c表示对应的颜色值(color),如果是两种数值,那么点就是两种颜色,多种数值,点就是多种颜色。
参数c可以是一个序列,如:plt.scatter(a,b,c=['b','r','b','r','b'],s=80)
此时c的序列是一个颜色序列,除了上述的简洁写法,还可以使用RGB或RBGA:plt.scatter(a,b,c=['#f00','#0f0','#f00','#0f0','#f00'],s=80)
x1 = [1,2,5,3,4,6,7,2,10,12]
x2 = [5,12,15,13,14,16,17,12,13,22]
c = ['b','b','b','r','b','r','b','b','r','b']
#c = ['#0000ff','#0000ff','#0000ff','#ff0000','#0000ff','#ff0000','#0000ff','#0000ff','#ff0000','#0000ff']
plt.scatter(x1,x2,c=c,s=30)
plt.show()
但是,在数据集中,我们一般不会设置颜色,因为标签Y本身就是分好类的,这种情况就需要使用cmap参数,cmap=plt.cm.Spectral。注意,plt.cm.Spectral是一个颜色映射集,参数Y的序列中出现了n个不同的值,然后为每一个值分配一个颜色。
x1 = [1,2,5,3,4,6,7,2,10,12]
x2 = [5,12,15,13,14,16,17,12,13,22]
y = [1,1,1,0,1,0,1,1,0,1]
plt.scatter(x1,x2,c=y,s=10,cmap=plt.cm.Spectral)
plt.show()
上面样本太少,看不出效果,再来一个模拟图,这样就清晰多了:
import sklearn.datasets
import numpy as np
np.random.seed(3)
train_X, train_Y = sklearn.datasets.make_moons(n_samples=300, noise=.2) #300 #0.2
# Visualize the data
plt.scatter(train_X[:, 0], train_X[:, 1], c=train_Y, s=40, cmap=plt.cm.Spectral);
train_X = train_X.T
train_Y = train_Y.reshape((1, train_Y.shape[0]))
plt.show()
print(train_X)
下面这篇文章中记录了许多方法,可以参考。
https://blog.csdn.net/aa29629...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。