python中matplotlib 的简单使用
1、简单折线图的画图,轴标签、图的颜色,风格,等等参数,本文只介绍最常用的几个参数:
import matplotlib.pyplot as plt
import numpy as np x = np.linspace(-3,3,50)
y1 = 2 * x + 1
y2 = x ** 2 plt.figure() # figure 下面的图形都出现再这个figure中
plt.plot(x,y2,label = 'up') #label 为该图像的图例
plt.plot(x,y1,color = 'red',linewidth = 1.0,linestyle = '--',label = 'down')
plt.xlim((-1,2)) # 对x轴的范围限制
plt.ylim((-2,3))
plt.xlabel('I am X') # x轴的标签
plt.ylabel('I am Y') # 边框删除
ax = plt.gca() # gca: get current axis
ax.spines['right'].set_color('none') # 获取当前位置的边框,进行设置
ax.spines['top'].set_color('none') # 坐标轴(边框)移动
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
ax.spines['bottom'].set_position(('data',0)) # 底部移动到 0
ax.spines['left'].set_position(('data',0)) # 左边移动到 0 # 图例
plt.legend() # 打印出画图时加入的 label 参数 #注释
x0 = 1
y0 = 2 * x0 +1
plt.scatter(x0,y0,s = 50,color = 'b') # 找到要进行注释的一个坐标点
# plt.plot([x0,x0],[y0,0],'k--',linewidth = 2.5) # 画一条竖直线 # plt.annotate(r'$y=2x+1$',xy=(x0,y0),xycoords='data',xytext=(+30,-30),textcoords='offset points') plt.text(-1,2,r'$This\ is\ \mu\ \sigma_i\ \alpha_t$',
fontdict={'size':16,'color':'r'}) # 数学符号前面加\转义符,显示数学符号 plt.show()
2、散点图
import matplotlib.pyplot as plt
import numpy as np n = 1024
X = np.random.normal(0,1,n)
Y = np.random.normal(0,1,n)
# 散点图
T = np.arctan2(Y,X) # 颜色 plt.scatter(X,Y,s=75,c=T,alpha=0.5) # alpha 表示透明度
plt.xlim((-1.5,1.5))
plt.ylim((-1.5,1.5)) plt.show()
3、柱状图
# 柱状图
n = 12
X = np.arange(n)
Y1 = (1 - X / float(n)) * np.random.uniform(0.5,1.0,n)
Y2 = (1 - X / float(n)) * np.random.uniform(0.5,1.0,n) plt.bar(X,+Y1,facecolor='b',edgecolor = 'red')
plt.bar(X,-Y2) for x,y in zip(X,Y1): # 在柱状图上加上高度值
plt.text(x,y+0.05,'%.2f'%y,ha = 'center',va='bottom')#横向,纵向对齐方式 plt.show()
4、等高线
# 等高图
import matplotlib.pyplot as plt
import numpy as np def f(x,y): # 计算点(x,y)处的高度
return (1 - x / 2 + x ** 5 + y ** 3) * np.exp(-x ** 2 - y ** 2) n = 256
x = np.linspace(-3,3,n)
y = np.linspace(-3,3,n) X,Y = np.meshgrid(x,y) # use plt.contourf to filling contours
# X,Y and value for (X,Y) point plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)# 8 是分成几个高度 # use plt.contour to add contour lines contour:等高线
C = plt.contour(X,Y,f(X,Y),8,color='black',linewidth=0.5) # adding label
plt.clabel(C,inline=True,fontsize=10) # 标签在线里面 plt.show()
python中matplotlib 的简单使用的更多相关文章
- python 中matplotlib 绘图
python 中matplotlib 绘图 数学建模需要,对于绘图进行简单学习 matpoltlib之类的包安装建议之间用anaconda 绘制一条y=x^2的曲线 #比如我们要绘制一条y=x^2的曲 ...
- Python中json的简单读写操作
Python中json的简单读写操作 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的 ...
- python中argparse模块简单使用
python中argparse模块简单使用 简介 argparse是python用于解析命令行参数和选项的标准模块.argparse模块的作用是用于解析命令行参数. 使用步骤 1.首先导入该模块 2. ...
- python中matplotlib画折线图实例(坐标轴数字、字符串混搭及标题中文显示)
最近在用python中的matplotlib画折线图,遇到了坐标轴 "数字+刻度" 混合显示.标题中文显示.批量处理等诸多问题.通过学习解决了,来记录下.如有错误或不足之处,望请指 ...
- yaml在python中的应用简单整理
#简单介绍============================================================== YAML使用寄主语言的数据类型,这在多种语言中流传的时候可能会引 ...
- python 中面向对象编程简单总结2
1.python中继承的特点: (1)总是从一个类继承,默认为object类 (2)不要忘记调用super.__init__方法来初始化父类的方法 def __init__(self,args): s ...
- python中的类简单讲解
类似其它的语言, Python 中的函数使用小括号( () )调用.函数在调用之前必须先定义.如果函数中没有 return 语句, 就会自动返回 None 对象. Python 是通过引用调 ...
- python 中面向对象编程简单总结3--定制类
声明:资源来自慕课网python学习课程,以下只是个人学习总结,仅供参考 1.Python类的特殊方法 特征:以 __ 开头并结尾的方法,比如用于print的__str__() , __getatt ...
- Python中Tk模块简单窗口设计
Python中Tk和PyQt都可以设计小程序,区别在于:Tk界面美观度相对较差,但由于是Python的内置模块,最终生成的程序大小相比于PyQt较小. import tkinter # 导入TKint ...
随机推荐
- <转载> MySQL 性能优化的最佳20多条经验分享 http://www.jb51.net/article/24392.htm
当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能.这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库.希望下面的这 ...
- Andriod开发第一步-部署环境(搬运&&总结)
第一步:安装JDK 第二步:配置Windows上JDK的变量环境 第三步:下载安装Eclipse 第四步:下载安装Android SDK 配置了JDK变量环境, ...
- SPARK执行流程
RDD运行原理 1.创建 RDD 对象 2.DAGScheduler模块介入运算,计算RDD之间的依赖关系.RDD之间的依赖关系就形成了DAG 3.每一个JOB被分为多个Stage,划分Stage的一 ...
- node-disconf-client基本配置
node-disconf-client 需要cppm install node-disconf-client var disconf = require (' node-disconf-clien ...
- markdown的试用
因为markdown,我接触到latex,因为latex,我花了几个月去看相关的书籍 我看了以下相关的资料 1.<LaTeX入门> 刘海洋 2.英文 TeX - LaTeX Stack E ...
- filter map reduce函数的使用
#filter("处理逻辑","可迭代对象") 把可迭代对象依次处理逻辑处理,如果值为真就返回值,值为假就不返回; li = ['testA','yerA',' ...
- 浅谈 CAS
CAS: CAS:Compare and Swap, 翻译成比较并交换. java.util.concurrent包中借助CAS实现了区别于 synchronized 同步锁的一种乐观锁. CAS应用 ...
- netty为啥要二次开发
很早之前就看过李林峰写的netty的书,但是感觉没有直接用到还是理解不够深入,现在的公司有两套自己基于Netty开发的系统,感觉才真正理解为啥要这么做 借用别人文章回顾下 https://www.cn ...
- MethodInfo类的一般使用
1.MethodInfo类是在System.Reflection命名空间底下,既然是在Reflection空间底下.故名思议关于反射相关的操作,其中比较重要的方法是Invoke()方法,它 是加载相同 ...
- libcurl+OpenSSL 库分享
首先,我要感谢这两个博客给我的帮助: https://www.cnblogs.com/findumars/p/7496122.html https://blog.csdn.net/yannanxiu/ ...