python中绘制2D曲线图需要使用到Matplotlib,Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形,通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。

1. 绘制折线图

plt.plot() 可以用于绘制折线图。只传入一维的散点(n个)p1时,横坐标对应散点的次序,从0到n-1,纵坐标对应散点的值。示例:

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np p1=[0,1.1,1.8,3.1,4.0] # 数据点 #创建绘图图表对象,可以不显式创建,跟cv2中的cv2.namedWindow()用法差不多
plt.figure('Draw') plt.plot(p1) # plot绘制折线图 plt.draw() # 显示绘图 plt.pause(5) #显示5秒 plt.savefig("easyplot01.jpg") #保存图象 plt.close() #关闭图表

绘图:



plt.plot() 传入二维的散点p1,p2(p1和p2的长度要一样)时,横坐标x绘制p1,纵坐标y绘制p2,示例:

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np p1=[0,1.1,1.8,3.1,4.0] # 数据点
p2=[2,2.4,4.3,3.5,2.5] #创建绘图图表对象,可以不显式创建,跟cv2中的cv2.namedWindow()用法差不多
plt.figure('Draw') plt.plot(p1,p2) # plot绘制折线图 plt.draw() # 显示绘图 plt.pause(5) #显示5秒 plt.savefig("easyplot01.jpg") #保存图象 plt.close() #关闭图表

绘图:

2. 绘制散点图

plt.scatter()用于绘制散点图,传入参数必须是二维的:plt.scatter(p1,p2),示例:

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np p1=[0,1.1,1.8,3.1,4.0] # 数据点
p2=[2,2.4,4.3,3.5,2.5] #创建绘图图表对象,可以不显式创建,跟cv2中的cv2.namedWindow()用法差不多
plt.figure('Draw') plt.scatter(p1,p2) # scatter绘制散点图 plt.draw() # 显示绘图 plt.pause(10) #显示10秒 plt.savefig("easyplot.jpg") #保存图象 plt.close() #关闭图表

绘图:



plt.plot() 也可以用于绘制散点图,plt.plot(p1,p2,'ro')表示散点的颜色是红色,形状是o,示例:

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np p1=[0,1.1,1.8,3.1,4.0] # 数据点
p2=[2,2.4,4.3,3.5,2.5] #创建绘图图表对象,可以不显式创建,跟cv2中的cv2.namedWindow()用法差不多
plt.figure('Draw') plt.plot(p1,p2,'ro') plt.draw() # 显示绘图 plt.pause(10) #显示10秒 plt.savefig("easyplot.jpg") #保存图象 plt.close() #关闭图表

绘图:

3. 添加坐标轴说明、添加标题、图片中插入文字、显示网格

坐标轴说明:plt.xlabel()、plt.ylabel()

添加标题: plt.title()

插入文字: plt.text(60, .025, r'$number=5, sigma=0$')

显示网格: plt.grid(True)

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np p1=[0,1.1,1.8,3.1,4.0] # 数据点
p2=[2,2.4,4.3,3.5,2.5] #创建绘图图表对象,可以不显式创建,跟cv2中的cv2.namedWindow()用法差不多
plt.figure('Draw') plt.plot(p1,p2,'ro') plt.xlabel('number of samples')
plt.ylabel('value of samples') plt.title('sample data') plt.text(1.1, 3.6, r'$number=5, sigma=0$') plt.grid(True) plt.draw() # 显示绘图 plt.pause(10) #显示10秒 plt.savefig("easyplot.jpg") #保存图象 plt.close() #关闭图表

绘图:

4. 绘制3D图曲面图

plot_surface()用于绘制3D曲面图:

# -*- coding: utf-8 -*-
from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D fig = plt.figure()
ax = Axes3D(fig) X = [0,1.1,1.8,3.1,4.0]
Y = [2,2.4,4.3,3.5,2.5]
X, Y = np.meshgrid(X, Y)
Z = [2,2.4,4.3,3.5,2.5] ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='rainbow') plt.draw()
plt.pause(10)
plt.savefig('3D.jpg')
plt.close()

绘图:

使用plot_surface()绘制另一个3D曲面:

# -*- coding: utf-8 -*-
from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D fig = plt.figure()
ax = Axes3D(fig)
X = np.arange(-4, 4, 0.25)
Y = np.arange(-4, 4, 0.25)
X, Y = np.meshgrid(X, Y)
R = np.sqrt(X**2 + Y**2)
Z = X*Y ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='rainbow') plt.draw()
plt.pause(10)
plt.savefig('3D.jpg')
plt.close()

绘图:

5. 绘制3D散点图

scatter()用于绘制3D散点图:

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D x = [0,1.1,1.8,3.1,4.0]
y = [2,2.4,4.3,3.5,2.5]
z = [1,2,3,4,5] ax = plt.subplot(projection='3d') # 创建一个三维的绘图工程 ax.scatter(x, y, z, c='r') # 绘制数据点,颜色是红色 ax.set_zlabel('Z') # 坐标轴
ax.set_ylabel('Y')
ax.set_xlabel('X') plt.draw()
plt.pause(10)
plt.savefig('3D.jpg')
plt.close()

绘图:

python 绘图---2D、3D散点图、折线图、曲面图的更多相关文章

  1. Python 绘图与可视化 matplotlib 制作Gif动图

    参考链接:https://blog.csdn.net/theonegis/article/details/51037850 官方文档:https://matplotlib.org/3.1.0/api/ ...

  2. Python的可视化包 – Matplotlib 2D图表(点图和线图,.柱状或饼状类型的图),3D图表(曲面图,散点图和柱状图)

    Python的可视化包 – Matplotlib Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型地2D图表和一些基本的3D图表.Matplotlib最早是为了可 ...

  3. 【python】pandas & matplotlib 数据处理 绘制曲面图

    Python matplotlib模块,是扩展的MATLAB的一个绘图工具库,它可以绘制各种图形 建议安装 Anaconda后使用 ,集成了很多第三库,基本满足大家的需求,下载地址,对应选择pytho ...

  4. FusionCharts 2D柱状图和折线图的组合图调试错误

    在设计FusionCharts 2D柱状图和折线图的组合图的时候,我发现不管怎么重启服务器,组合图就是不出来.后来,我通过调试发现我犯了一个致命的错误,运用平常一贯的思维,认为3D图有这种类型,那么2 ...

  5. 06. Matplotlib 2 |折线图| 柱状图| 堆叠图| 面积图| 填图| 饼图| 直方图| 散点图| 极坐标| 图箱型图

    1.基本图表绘制 plt.plot() 图表类别:线形图.柱状图.密度图,以横纵坐标两个维度为主同时可延展出多种其他图表样式 plt.plot(kind='line', ax=None, figsiz ...

  6. Python交互图表可视化Bokeh:4. 折线图| 面积图

    折线图与面积图 ① 单线图.多线图② 面积图.堆叠面积图 1. 折线图--单线图 import numpy as np import pandas as pd import matplotlib.py ...

  7. FusionCharts 2D柱状图和折线图的组合图

    1.设计思路 (1)了解组合图的特性以及用法,选用图的类型: (2)设计出两根柱子和两根折线,分开展示. 2.设计步骤 (1)设计页面 Column2DLine.html: <!DOCTYPE ...

  8. HighCharts之2D柱状图、折线图的组合多轴图

    HighCharts之2D柱状图.折线图的组合多轴图 1.实例源码 SomeAxis.html: <!DOCTYPE html> <html> <head> < ...

  9. HighCharts之2D柱状图、折线图的组合双轴图

    HighCharts之2D柱状图.折线图的组合双轴图 1.实例源码 DoubleAxis.html: <!DOCTYPE html> <html> <head> & ...

随机推荐

  1. IE调试页面总结

    随着IE版本的升级,IE变的越来越强大,随之带来的问题也是越来越明显,如:如何调试在低版本的浏览器中 的情况 IE9的方法: 出于未知需求,用户在安装了较高版本IE浏览器(IE9)之后,又需要使用低版 ...

  2. 查询前几条记录 top limit

    SQL Server 数据库中的Top关键字可实现查询数据库表中的前几条数据,但是需要注意的是,Top关键字只能在SQL Server数据库中可以使用,而在MySQL数据库中就要使用具有同样功能的LI ...

  3. 发送邮件——stamplib

    配置文email.ini件信息: [email]sender=xxxxxxxxxxxpwd=xxxxxxxxxxxxreciver=xxxxxxxxxxxxxpython 3.x代码如下: impor ...

  4. 高亮显示QSS文件

    转[作者:一去丶二三里 博客地址:http://blog.csdn.net/liang19890820] 简述 语法高亮是文本编辑器用来显示文本的,特别是源代码,根据不同的类别来用不同的颜色和字体显示 ...

  5. Linux系统基本的内存管理知识讲解

    内存是Linux内核所管理的最重要的资源之一.内存管理系统是操作系统中最为重要的部分,因为系统的物理内存总是少于系统所需要的内存数量.虚拟内存就是为了克服这个矛盾而采用的策略.系统的虚拟内存通过在各个 ...

  6. idea中如何debug本地maven项目

    方法一:使用maven中的jetty插件调试本地maven项目 1.打断点 2.右击“jetty:run”,选择Debug运行 3.浏览器发送http请求,开始调试 方法二:利用远程调试功能调试本地m ...

  7. 《大型网站系统与JAVA中间件实践》读书笔记-消息中间件

    消息中间件 1.消息中间件的价值 1.1 透过示例看消息中间件对应用的解耦 1.1.1.通过服务调用让其他系统感知事件发生的方式 假设我们要做一个用户登录系统,其中需要支持的一个功能是,用户登录成功 ...

  8. USACO 简易题解(蒟蒻的题解)

    蒟蒻难得可以去比赛,GDOI也快到了,还是认真刷题(不会告诉你之前都在颓废),KPM 神犇既然都推荐刷USACO, 辣就刷刷. 现在蒟蒻还没刷完,太蒟刷得太慢,so 写了的搞个简易题解(没代码,反正N ...

  9. orecle 函数

    --创建函数语法 create [or replace] function [schema.]function_name (函数参数列表) --参数有IN.OUT.IN OUT三种类型:IN代表需要输 ...

  10. 正则表达式【TLCL】

    grep[global regular expression print] print lines matching a pattern grep [options] regex [file...] ...