python+matplotlib+绘制不同图标类型
#==================================================================
#首先需要导入两个文件
import matplotlib.pyplot as plt
import numpy as np
#==================================================================
#==================================================================
#首先需要导入两个文件
import matplotlib.pyplot as plt
import numpy as np
#==================================================================
#绘制线性图
x = np.arange(-2*np.pi,2*np.pi,0.01)#定义横轴范围(-2pi 2pi)
y = np.sin(3*x)/x#函数
y2 = np.sin(2*x)/x
y3 = np.sin(x)/x
plt.plot(x,y)#绘制,matplotlib默认展示不同的颜色
plt.plot(x,y2,'--')
plt.plot(x,y3)
plt.xticks([-2*np.pi,-np.pi,0,np.pi,2*np.pi],[r'$-2\pi$',r'$\pi$','$0$','$\pi$','$2\pi$'])#显示横坐标刻度值,不加第二个参数,将显示的是数值而不是字母
plt.yticks([-1,0,1,2,3],[r'$-1$','$0$','$+1$','$+2$','$+3$'])
plt.legend(['y1','y2','y3'])
plt.title('NEO-Karl')
plt.show()
运行结果:

#将坐标轴移到中间,即笛卡尔坐标轴。
# 路径:将图形上,右边隐藏,将下,左边移动到中间,需要用到gac函数获取Axes对象
# 接着通过这个对象指定每条边的位置,使用set_color设置成none。实现代码如下:
x = np.arange(-2*np.pi,2*np.pi,0.01)#定义横轴范围
y = np.sin(3*x)/x#函数
y2 = np.sin(2*x)/x
y3 = np.sin(x)/x
plt.plot(x,y)#绘制,matplotlib默认展示不同的颜色
plt.plot(x,y2,'--')
plt.plot(x,y3)
plt.xticks([-2*np.pi,-np.pi,0,np.pi,2*np.pi],[r'$-2\pi$',r'$\pi$','$0$','$\pi$','$2\pi$'])#显示横坐标刻度值,不加第二个参数,将显示的是数值而不是字母
plt.yticks([-1,0,1,2,3],[r'$-1$','$0$','$+1$','$+2$','$+3$'])
plt.legend(['y1','y2','y3'])
plt.title('NEO-Karl')
ax = plt.gca()#使用gca函数获取axes对象
ax.spines['right'].set_color('none')#右侧边隐藏
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')#将底边设为横坐标
ax.spines['bottom'].set_position(('data',0))#将坐标置于坐标0处
ax.yaxis.set_ticks_position('left')#左边设置为纵坐标
ax.spines['left'].set_position(('data',0))
plt.show()
运行结果:

x = np.arange(-2*np.pi,2*np.pi,0.01)#定义横轴范围
y = np.sin(3*x)/x#函数
y2 = np.sin(2*x)/x
y3 = np.sin(x)/x
plt.plot(x,y)#绘制,matplotlib默认展示不同的颜色
plt.plot(x,y2,'--')
plt.plot(x,y3)
plt.xticks([-2*np.pi,-np.pi,0,np.pi,2*np.pi],[r'$-2\pi$',r'$\pi$','$0$','$\pi$','$2\pi$'])#显示横坐标刻度值,不加第二个参数,将显示的是数值而不是字母
plt.yticks([-1,0,1,2,3],[r'$-1$','$0$','$+1$','$+2$','$+3$'])
plt.legend(['y1','y2','y3'])
plt.title('NEO-Karl')
#添加注释,使用annotate函数,第一个参数为:latex表达式,即要现实的字符,xy是注释在图表的数据点位置,xytext表示注释与数据点距离,textcoords='offset points'似乎是必须选?使用arrowprops控制箭头
plt.annotate(r'$\lim_{x\to 0}\frac{\sin(x)}{x}=1$',xy=[0,1],xytext=[30,30],fontsize=16,textcoords='offset points',arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2'))
ax = plt.gca()#使用gca函数获取axes对象
ax.spines['right'].set_color('none')#右侧边隐藏
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')#将底边设为横坐标
ax.spines['bottom'].set_position(('data',0))#将坐标置于坐标0处
ax.yaxis.set_ticks_position('left')#左边设置为纵坐标
ax.spines['left'].set_position(('data',0))
plt.show()
运行结果:

python+matplotlib+绘制不同图标类型的更多相关文章
- python+matplotlib 绘制等高线
python+matplotlib 绘制等高线 步骤有七: 有一个m*n维的矩阵(data),其元素的值代表高度 构造两个向量:x(1*n)和y(1*m).这两个向量用来构造网格坐标矩阵(网格坐标矩阵 ...
- 【转】使用Python matplotlib绘制股票走势图
转载出处 一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使 ...
- Python Matplotlib绘制气温图表
代码中数据从 www.wunderground.com/history/ 下载 #coding=utf-8 import csv from datetime import datetime from ...
- python matplotlib绘制六种可视化图表
1. 折线图 绘制折线图,如果你数据不是很多的话,画出来的图将是曲折状态,但一旦你的数据集大起来,比如下面我们的示例,有100个点,所以我们用肉眼看到的将是一条平滑的曲线. 这里我绘制三条线,只要执行 ...
- Python matplotlib绘制圆环图
一.语法和参数简介 plt.pie(x2,labels=labels, autopct = '%0.2f%%', shadow= False, startangle =0,labeldistance= ...
- Python学习(一) —— matplotlib绘制三维轨迹图
在研究SLAM时常常需要对其输出的位姿进行复现以检测算法效果,在ubuntu系统中使用Python可以很好的完成相关的工作. 一. Ubuntu下Python的使用 在Ubuntu下使用Python有 ...
- Python 使用 matplotlib绘制3D图形
3D图形在数据分析.数据建模.图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何在Python中使用 matplotlib进行3D图形的绘制,包括3D散点.3D表面.3D轮廓.3D直线( ...
- python使用matplotlib绘制折线图教程
Matplotlib是一个Python工具箱,用于科学计算的数据可视化.借助它,Python可以绘制如Matlab和Octave多种多样的数据图形.下面这篇文章主要介绍了python使用matplot ...
- Python——使用matplotlib绘制柱状图
Python——使用matplotlib绘制柱状图 1.基本柱状图 首先要安装matplotlib(http://matplotlib.org/api/pyplot_api.htm ...
随机推荐
- 网络协议 HTTP入门学习
概述 Web 的诞生,源于三大技术的诞生,它们都是当年 Web 之父 Tim Berners-Lee 自己 开发的,世界上第一个网站诞生的时间是 1991 年,三大技术的诞生也就是在此之前的不久: 1 ...
- setLocale(java.util.Locale), setCharacterEncoding(java.lang.String),setContentType(java.lang.String type)
对于setCharacterEncoding(java.lang.String),这个方法是javax.servlet.ServletRequest和javax.servlet.ServletResp ...
- 最近面试被问到一个问题,AtomicInteger如何保证线程安全?
最近面试被问到一个问题,AtomicInteger如何保证线程安全?我查阅了资料 发现还可以引申到 乐观锁/悲观锁的概念,觉得值得一记. 众所周知,JDK提供了AtomicInteger保证对数字的操 ...
- javascript浏览器事件
1. Js浏览器对象层级结构:Window 窗口对象(location地址对象.document文档对象(Form表单对象(表单控件))) 2. Window对象属性: 名称 描述 documen ...
- 【gitlab】gitlab快速部署教程
gitlab快速部署教程 部署环境 Ubuntu 16.04(亲测可用) 开始部署 安装依赖 sudo apt-get install curl openssh-server ca-certifica ...
- Image 上传下载Api
1.配置 "UploadConfig": { // 自定义存放位置,无需放到站点内部 "Path": "C:\\Users\\kxy\\Desktop ...
- 阿里云服务器ftp连接后21端口无法使用的问题
今天在阿里云Centos上搭了一个ftp 服务,开启了20和21端口的权限.但是用工具和ftp命令登录,均超时. ftp命令登录成功后不能使用ls 命令,直接超时. 工具登录成功后 获取根目录失败,也 ...
- 虎牙直播弹幕转换字幕格式 基于Node.js 的 huya-danmu
1 首先安装nodejs运行环境, 从 http://nodejs.cn/download/ 下载对应的版本 2 安装 huya-danmu 模块, https://github.com/BacooT ...
- sublime text3输出窗口中文显示乱码问题解决方案
1 前言 略 2 方案 修改Python3.sublime-build内容为 { "cmd": ["C:/Users/Administrator/AppData/Loca ...
- .net基础学java系列(八)SpringBoot
嘟嘟独立博客 Spring-Boot干货系列 http://tengj.top/categories/Spring-Boot干货系列/ 龙码精神 Java Spring Boot VS .NetCor ...