python任务22
numpy库函数基本使用
import numpy as np
1、创建数组的函数(ndarray)
2、ndarray类型的常用属性
3、ndarray类型的型态操作方法
4、ndarray 类型的索引与切片方法
5、ndarray类型的算术运算函数
6、ndarray类型的比较运算函数
7、ndarray类型的其他运算函数
matplotlip学习笔记
1、基本指令
import matplotlib.pyplot as plt plt.figure plt.plot(x,y,label="sin(x)",width=2) plt.show()
2、使用它画简单图
import matplotlib.pyplot as plt y=[0,10,20,30,40,50,60] x=len(y) x=range(x) plt.plot(x,y)
Plot的图表函数
plt.plot(x,y , fmt) :绘制坐标图
plt.plot(x,y , fmt) :绘制坐标图
plt.boxplot(data, notch, position): 绘制箱形图
plt.bar(left, height, width, bottom) : 绘制条形图
plt.barh(width, bottom, left, height) : 绘制横向条形图
plt.polar(theta, r) : 绘制极坐标图
plt.pie(data, explode) : 绘制饼图
plt.scatter(x, y) :绘制散点图
plt.hist(x, bings, normed) : 绘制直方图
2、复杂指令
plt.figure() :自定义画布大小
plt.subplot() :设置画布划分以及图像在画布上输出的位置
plt.xticks():设置x轴刻度的表现方式
plt.xlim():设置x轴刻度的取值范围
成绩雷达图
import matplotlib.pyplot as plt import numpy as np course = ['第一周','第二周','第三周','第四周','第五周','第六周'] scores = [62.5,87.9,90,97.7,100,81.9] dataLength = len(scores) angles = np.linspace(0,2*np.pi,dataLength,endpoint=False) scores.append(scores[0]) angles = np.append(angles,angles[0]) plt.polar(angles,scores,'rv--',lw=2) plt.thetagrids(angles*180/np.pi,course,fontproperties = 'simhei') plt.fill(angles,scores,facecolor='r',alpha = 0.4) plt.figtext(0.52,0.95,'猪小叶的python123成绩单',ha='center') plt.show()
手绘风
from PIL import Image import numpy as np a = np.asarray(Image.open("a.jpg").convert("L")).astype("float") depth = 13 grad = np.gradient(a) grad_x, grad_y = grad grad_x = grad_x*depth/100 grad_y = grad_y*depth/100 A = np.sqrt(grad_x**2 + grad_y**2 + 1.) uni_x = grad_x/A uni_y = grad_y/A uni_z = 1./A vec_el = np.pi/2.2 vec_az = np.pi/4. dx = np.cos(vec_el)*np.cos(vec_az) dy = np.cos(vec_el)*np.sin(vec_az) dz = np.sin(vec_el) b = 255*(dx*uni_x + dy*uni_y + dz*uni_z) b = b.clip(0, 255) im = Image.fromarray(b.astype('uint8')) im.save("b.jpg")
科学坐标绘图
import matplotlib.pyplot as plt import numpy as np a = np.linspace(0, 2 * np.pi, 50) b = np.sin(a) plt.plot(a,b) c=np.cos(a) plt.plot(a,c) mask = c >= b plt.plot(a[mask], c[mask], 'bo') mask = (b>= c) plt.plot(a[mask], b[mask], 'go') plt.show()