练习很简单,难在把简单的过程汇聚成一个相对复杂的程序。加上今天分享的,这些还远远不够不足以支撑去写一个比较大的应用。但,也只是开始。今天来看一些画图相关的,也是快速入门的最后一次分享,虽然这些还远远不够。(下面的分享参考scipy 官网和斯坦福大学python入门讲解)
# 图片处理
from scipy.misc import imread, imsave,imresize
img = imread('mountain.jpg')
# img的类型,图片的大小,3代表了颜色的三原色红绿蓝,
# 输出第一个像素点的三原色的值,两种方式输出都可以
print (img.dtype, img.shape, img[0,0],img[0][0])
# 图片值的矩阵
print (img)
# 修改图片的颜色,红绿蓝值分别乘以一个参数
img_tint = img * [0.5,0.8,0.9]
# 改变图片的尺寸
img_tint = imresize(img_tint,(1000,1000))
# 保存图片
imsave('img_tint.jpg',img_tint)
import numpy as np
from scipy.spatial.distance import pdist,squareform
x = np.array([[0,1],[1,1],[1,0],[2,0]])
print (x)
# 各位置元素差平方和开根号,结果是n*n的对称矩阵,对角线元素是0
dist = squareform(pdist(x, 'euclidean'))
更多操作,参考:https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.distance.pdist.html
import matplotlib.pyplot as plt
x = np.arange(-3*np.pi, 3*np.pi, 0.1) # (起始,最终,每0.1长度画点)
y = np.sin(x)
# 画图
plt.plot(x,y)
# 画多个图,按照指定的数量和位置
x = np.arange(0, 3 * np.pi, 0.1)
y_sin = np.sin(x)
y_cos = np.cos(x)
y_line = 0.5 + 0.1 * x
# 2*2的方格,每个放一张图片
plt.subplot(2, 2, 1)
plt.plot(x, y_sin)
plt.title('Sine')
# subplot, imshow函数
img = imread('mountain.jpg')
img_tint = imread('img_tint.jpg')
plt.subplot(1,2,1)
plt.imshow(np.uint8(img))
更多参考官网链接:
https://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.subplot
这些python的学习只是冰山一角,距离用python去实现一个完整的project还有距离,通过这样的一个了解的过程,相信后面多加练习会越来越熟练。Python 快速入门的分享到这就告一段落,后面一起来学习机器学习,从入门开始,从基本的编程开始,来快速的上手一个现在非常热门的学科。