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.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()

  

 

posted @ 2020-05-06 17:37  猪小叶  阅读(151)  评论(0编辑  收藏  举报