『Python』Numpy学习指南第九章_使用Matplotlib绘图

坐标轴调节以及刻度调节参见:『Python』PIL&plt图像处理_矩阵转化&保存图清晰度调整

数据生成:

 1 import numpy as np
 2 import matplotlib.pyplot as plt
 3
 4 func = np.poly1d(np.array([1,2,3,4]))
 5 func1 = func.deriv(m=1)                 # 求一阶导数
 6 func2 = func.deriv(m=2)                 # 求二阶导数
 7
 8 x = np.linspace(-10,10,30)
 9 y = func(x)
10 y1 = func1(x)
11 y2 = func2(x)
1 ‘‘‘正常绘图‘‘‘
2
3 plt.plot(x,y,‘ro‘,x,y1,‘g--‘)
4 plt.xlabel(‘x‘)
5 plt.ylabel(‘y‘)
6 plt.show()
 1 ‘‘‘添加子图‘‘‘
 2
 3 plt.subplot(311)
 4 plt.plot(x,y,c=‘r‘,linestyle=‘-‘)
 5 plt.title(‘Polynomial‘)
 6
 7 plt.subplot(312)
 8 plt.plot(x,y1,c=‘b‘,linestyle=‘‘,marker=‘^‘)
 9 # plt.plot(x,y1,‘b^‘)
10 plt.title(‘First Derivative‘)
11
12 plt.subplot(313)
13 plt.plot(x,y2,c=‘g‘,linestyle=‘‘,marker=‘o‘)
14 plt.title(‘Second Derivative‘)
1 ‘‘‘对数坐标‘‘‘
2
3 plt.semilogx(x,y)  # 对x取对数
4 plt.semilogy(x,y)  # 对y取对数
5 plt.loglog(x,y)    # 同时取对数
 1 ‘‘‘颜色填充‘‘‘
 2
 3 fig = plt.figure()
 4
 5 ax = fig.add_subplot(211)
 6 ax.fill_between(x,y,y1,facecolor=‘b‘)
 7 ax.grid(True)
 8
 9 ax2 = fig.add_subplot(212)
10 ax2.fill(x,y,facecolor=‘b‘,alpha=0.3)
11 ax2.fill(x,y1,facecolor=‘g‘,alpha=0.3)
12 ax2.grid(True)
13 # plt.show()

 1 ‘‘‘三维绘图‘‘‘
 2
 3 from mpl_toolkits.mplot3d import Axes3D
 4
 5 u = np.linspace(-1,1,100)
 6 x,y = np.meshgrid(u,u)     # 网格坐标生成函数
 7 z = x**2+y**2
 8
 9 fig = plt.figure()
10 ax = Axes3D(fig)
11 # cmap = color_map,另外两个参数是瓦片步长
12 ax.plot_surface(x,y,z,rstride=4,cstride=4,cmap=‘rainbow‘)

 1 ‘‘‘三维绘等高线图‘‘‘
 2
 3 u = np.linspace(-1,1,100)
 4 x,y = np.meshgrid(u,u)     # 网格坐标生成函数
 5 z = x**2+y**2
 6
 7 fig = plt.figure()
 8 ax = fig.add_subplot(111)
 9 ax.contourf(x,y,z)
10 plt.show()

时间: 2024-08-01 10:46:54

『Python』Numpy学习指南第九章_使用Matplotlib绘图的相关文章

『Python』Numpy学习指南第十章_高端科学计算库scipy入门(系列完结)

简介: scipy包包含致力于科学计算中常见问题的各个工具箱.它的不同子模块相应于不同的应用.像插值,积分,优化,图像处理,,特殊函数等等. scipy可以与其它标准科学计算程序库进行比较,比如GSL(GNU C或C++科学计算库),或者Matlab工具箱.scipy是Python中科学计算程序的核心包;它用于有效地计算numpy矩阵,来让numpy和scipy协同工作. 在实现一个程序之前,值得检查下所需的数据处理方式是否已经在scipy中存在了.作为非专业程序员,科学家总是喜欢重新发明造轮子

『Python』Numpy学习指南第五章_矩阵和通用函数

简单的矩阵生成以及合并操作: np.mat('1 2 3;4 5 6;7 8 9')np.bmat('A B;B A')np.arange(1,10).reshape(3,3) 1 import numpy as np 2 3 4 5 '''通用函数''' 6 7 # 字符串创建矩阵 8 # 也可以使用数组创建 9 A = np.mat('1 2 3;4 5 6;7 8 9') 10 # 数组创建矩阵 11 A = np.mat(np.arange(1,10).reshape(3,3)) # n

『Python』Numpy学习指南第三章__常用函数

感觉心情渐渐变好了,加油! np.eye(2)np.savetxt('eye.txt',i2)c,v = np.loadtxt('data.csv', delimiter=',', usecols=(6,7), unpack=True) 1 # __*__coding=utf-8__*__ 2 3 import numpy as np 4 5 # 单位矩阵生成 6 i2 = np.eye(2) 7 print(i2) 8 9 # 保存为txt 10 np.savetxt('eye.txt',i2

『python』OpenCV3计算机视觉库第二弹_简单的图片处理

注意,本库基于python2.7,所以语法细节和之前有所不同 cv2和numpy深度契合,其图片读入后就是numpy.array,只不过dtype比较不常用而已,支持全部数组方法(废话... cv2.cvtColor(img,cv2.COLOR_BAYER_BG2BGR) img.item(0,0) img.itemset((0,0),0) cv2.imshow('my image',img) cv2.waitKey() cv2.destroyAllWindows() 1 # coding=ut

《Python基础教程(第二版)》学习笔记 -> 第九章 魔法方法、属性和迭代器

准备工作 >>> class NewStyle(object): more_code_here >>> class OldStyle: more_code_here 在这两个类中,NewStyle是新式的类,OldStyle是旧式的类,如果文件以__metaclass__ = type 开始,那么两个类都是新式类. 构造方法 构造方法,当一个对象被创建后,会立即调用构造方法.Python中创建一个构造方法,只要把init方法的名字从简单的init修改成__init__

分享《Python数据分析基础教程:NumPy学习指南(第2版)》高清中文PDF+英文PDF+源代码

下载:https://pan.baidu.com/s/1YSD97Gd3gmmPmNkvuG0eew更多资料分享:http://blog.51cto.com/3215120 <Python数据分析基础教程:NumPy学习指南(第2版)>高清中文PDF+高清英文PDF+源代码 高清中文版PDF,249页,带目录和书签,文字能够复制粘贴:高清英文版PDF,310页,带目录和书签,文字能够复制粘贴:中英文两版可以对比学习.配套源代码:经典书籍,讲解详细:其中高清中文版如图: 原文地址:http://

Numpy学习:《Python数据分析基础教程NumPy学习指南第2版》中文PDF+英文PDF+代码

NumPy是一个优秀的科学计算库,提供了很多实用的数学函数.强大的多维数组对象和优异的计算性能,不仅可以取代Matlab和Mathematica的许多功能,而且业已成为Python科学计算生态系统的重要组成部分.但与这些商业产品不同,它是免费的开源软件. 推荐学习<Python数据分析基础教程NumPy学习指南第2版>,通过书中丰富的示例,学会Matplotlib绘图,并结合使用其他Python科学计算库(如SciPy和Scikits),让工作更有成效,让代码更加简洁而高效. 学习参考: &l

『Python』常用函数实践笔记

库安装: 1).pip & conda 2).在win10下手动安装python库的方法: 『python』计算机视觉_OpenCV3库安装 原生: list.append():添加元素到list末尾 list.extend():使用一个list扩展另一个list 字典列表化:字典是有顺序的,而且list字典等于list字典的key dict = {'c':1,'b':2,'a':3} list(dict) # Out[13]: # ['c', 'b', 'a'] list(dict.keys(

『Python』内存分析_list和array的内存增长模式

『Python』内存分析_List对象内存占用分析 在Python中,列表是一个动态的指针数组,而array模块所提供的array对象则是保存相同类型的数值的动态数组.由于array直接保存值,因此它所使用的内存比列表少.列表和array都是动态数组,因此往其中添加新元素,而没有空间保存新的元素时,它们会自动重新分配内存块,并将原来的内存中的值复制到新的内存块中.为了减少重新分配内存的次数,通常每次重新分配时,大小都为原来的k倍.k值越大,则重新分配内存的次数越少,但浪费的空间越多.本节通过一系