人工智能—TensorFlow(七):matplotlib图形可视化

往期的文章,我们介绍了TensorFlow如何添加层,如何使用激励函数,但是我们输出的结果都是TensorFlow训练的误差值,并没有看到TensorFlow训练的过程,还好matplotlib可以实现可视化的操作

Matplotlib

matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形,Matplotlib试图让简单的事情变得更简单,让无法实现的事情变得可能实现。 只需几行代码即可生成绘图,直方图,功率谱,条形图,错误图,散点图等。为了简单绘图,pyplot模块提供了类似于MATLAB的界面,特别是与IPython结合使用时。

绘制坐标图:

import numpy as np
import matplotlib.pyplot as plt
x = np.array([1,2,3,4,5,6,7,8])
y = np.array([3,15,27,6,32,61,10,15])
plt.plot(x,y,'r')#r表示线的颜色为红色
plt.show()

绘制柱状图:

x1 = np.array([1,2,3,4,5,6,7,8])
y1 = np.array([13,25,17,36,21,16,10,15])
plt.bar(x1,y1,0.2,alpha=1,color='b')
plt.show()

绘制函数:

x = np.linspace(-1, 1,100)
y = 3*x**2-0.5
plt.plot(x, y)
plt.show()

绘制3D图:

from mpl_toolkits.mplot3d import Axes3D#需要导入3D库
# 创建 3D 图形对象
fig = plt.figure()
ax = Axes3D(fig)

通过以上代码就建立了一个3D坐标轴,我们在坐标轴的基础上添加数据:

# 生成数据
X = np.arange(-2, 2, 0.1)
Y = np.arange(-2, 2, 0.1)
# 生成网格数据
X, Y = np.meshgrid(X, Y)
Z = np.sqrt(X ** 2 + Y ** 2)

生成 X Y Z三维数据,可视化3D:

# 绘制曲面图,并使用 cmap 着色
ax.plot_surface(X, Y, Z, cmap=plt.cm.rainbow)
plt.show()
 cmap=plt.cm.rainbow#paried、gary_r、

采用matplotlib自带的着色生成图形,大家可以根据自己的喜好配置不同的着色方案

matplotlib还有很多不同的设置,大家可以参考官网来学习:

官网教程文档:https://matplotlib.org/users/index.html 

当然matplotlib还可以生成动态图,小伙伴们可以自己学习

下期预告

回到我们重点介绍的TensorFlow中来,下期利用matplotlib可视化我们的TensorFlow神经网络

谢谢大家的观看点赞与转发,关于分享的文章,大家有任何问题,可以在评论区一起探讨学习!!!