1.散点图

import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']#正常显示字体
mpl.rcParams['axes.unicode_minus'] = False#正常显示图像中的负号x=np.random.randint(low=2,high=10,size=10)
y=np.random.randint(low=2,high=10,size=10)
plt.scatter(x,y)
plt.title('散点图')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

2.折线图

import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsex=np.linspace(start=0,stop=30,num=300)
y=np.sin(x)
plt.plot(x,y)
plt.title('折线图')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

3.柱状图
更多柱状图
python画柱状图并数值显示

import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsex=['a','b','c','d']
y=[3,5,7,9]
plt.bar(x,y,width=0.5)
plt.title('柱状图')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

4.直方图

import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsex=np.random.normal(loc=10,scale=1,size=100)plt.hist(x,bins=50)
plt.title('直方图')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

6.图形属性
常用的颜色属性

cnames = {'aliceblue':            '#F0F8FF',
'antiquewhite':         '#FAEBD7',
'aqua':                 '#00FFFF',
'aquamarine':           '#7FFFD4',
'azure':                '#F0FFFF',
'beige':                '#F5F5DC',
'bisque':               '#FFE4C4',
'black':                '#000000',
'blanchedalmond':       '#FFEBCD',
'blue':                 '#0000FF',
'blueviolet':           '#8A2BE2',
'brown':                '#A52A2A',
'burlywood':            '#DEB887',
'cadetblue':            '#5F9EA0',
'chartreuse':           '#7FFF00',
'chocolate':            '#D2691E',
'coral':                '#FF7F50',
'cornflowerblue':       '#6495ED',
'cornsilk':             '#FFF8DC',
'crimson':              '#DC143C',
'cyan':                 '#00FFFF',
'darkblue':             '#00008B',
'darkcyan':             '#008B8B',
'darkgoldenrod':        '#B8860B',
'darkgray':             '#A9A9A9',
'darkgreen':            '#006400',
'darkkhaki':            '#BDB76B',
'darkmagenta':          '#8B008B',
'darkolivegreen':       '#556B2F',
'darkorange':           '#FF8C00',
'darkorchid':           '#9932CC',
'darkred':              '#8B0000',
'darksalmon':           '#E9967A',
'darkseagreen':         '#8FBC8F',
'darkslateblue':        '#483D8B',
'darkslategray':        '#2F4F4F',
'darkturquoise':        '#00CED1',
'darkviolet':           '#9400D3',
'deeppink':             '#FF1493',
'deepskyblue':          '#00BFFF',
'dimgray':              '#696969',
'dodgerblue':           '#1E90FF',
'firebrick':            '#B22222',
'floralwhite':          '#FFFAF0',
'forestgreen':          '#228B22',
'fuchsia':              '#FF00FF',
'gainsboro':            '#DCDCDC',
'ghostwhite':           '#F8F8FF',
'gold':                 '#FFD700',
'goldenrod':            '#DAA520',
'gray':                 '#808080',
'green':                '#008000',
'greenyellow':          '#ADFF2F',
'honeydew':             '#F0FFF0',
'hotpink':              '#FF69B4',
'indianred':            '#CD5C5C',
'indigo':               '#4B0082',
'ivory':                '#FFFFF0',
'khaki':                '#F0E68C',
'lavender':             '#E6E6FA',
'lavenderblush':        '#FFF0F5',
'lawngreen':            '#7CFC00',
'lemonchiffon':         '#FFFACD',
'lightblue':            '#ADD8E6',
'lightcoral':           '#F08080',
'lightcyan':            '#E0FFFF',
'lightgoldenrodyellow': '#FAFAD2',
'lightgreen':           '#90EE90',
'lightgray':            '#D3D3D3',
'lightpink':            '#FFB6C1',
'lightsalmon':          '#FFA07A',
'lightseagreen':        '#20B2AA',
'lightskyblue':         '#87CEFA',
'lightslategray':       '#778899',
'lightsteelblue':       '#B0C4DE',
'lightyellow':          '#FFFFE0',
'lime':                 '#00FF00',
'limegreen':            '#32CD32',
'linen':                '#FAF0E6',
'magenta':              '#FF00FF',
'maroon':               '#800000',
'mediumaquamarine':     '#66CDAA',
'mediumblue':           '#0000CD',
'mediumorchid':         '#BA55D3',
'mediumpurple':         '#9370DB',
'mediumseagreen':       '#3CB371',
'mediumslateblue':      '#7B68EE',
'mediumspringgreen':    '#00FA9A',
'mediumturquoise':      '#48D1CC',
'mediumvioletred':      '#C71585',
'midnightblue':         '#191970',
'mintcream':            '#F5FFFA',
'mistyrose':            '#FFE4E1',
'moccasin':             '#FFE4B5',
'navajowhite':          '#FFDEAD',
'navy':                 '#000080',
'oldlace':              '#FDF5E6',
'olive':                '#808000',
'olivedrab':            '#6B8E23',
'orange':               '#FFA500',
'orangered':            '#FF4500',
'orchid':               '#DA70D6',
'palegoldenrod':        '#EEE8AA',
'palegreen':            '#98FB98',
'paleturquoise':        '#AFEEEE',
'palevioletred':        '#DB7093',
'papayawhip':           '#FFEFD5',
'peachpuff':            '#FFDAB9',
'peru':                 '#CD853F',
'pink':                 '#FFC0CB',
'plum':                 '#DDA0DD',
'powderblue':           '#B0E0E6',
'purple':               '#800080',
'red':                  '#FF0000',
'rosybrown':            '#BC8F8F',
'royalblue':            '#4169E1',
'saddlebrown':          '#8B4513',
'salmon':               '#FA8072',
'sandybrown':           '#FAA460',
'seagreen':             '#2E8B57',
'seashell':             '#FFF5EE',
'sienna':               '#A0522D',
'silver':               '#C0C0C0',
'skyblue':              '#87CEEB',
'slateblue':            '#6A5ACD',
'slategray':            '#708090',
'snow':                 '#FFFAFA',
'springgreen':          '#00FF7F',
'steelblue':            '#4682B4',
'tan':                  '#D2B48C',
'teal':                 '#008080',
'thistle':              '#D8BFD8',
'tomato':               '#FF6347',
'turquoise':            '#40E0D0',
'violet':               '#EE82EE',
'wheat':                '#F5DEB3',
'white':                '#FFFFFF',
'whitesmoke':           '#F5F5F5',
'yellow':               '#FFFF00',
'yellowgreen':          '#9ACD32'}

marker可选参数

'.'       point marker
','       pixel marker
'o'       circle marker
'v'       triangle_down marker
'^'       triangle_up marker
'<'       triangle_left marker
'>'       triangle_right marker
'1'       tri_down marker
'2'       tri_up marker
'3'       tri_left marker
'4'       tri_right marker
's'       square marker
'p'       pentagon marker
'*'       star marker
'h'       hexagon1 marker
'H'       hexagon2 marker
'+'       plus marker
'x'       x marker
'D'       diamond marker
'd'       thin_diamond marker
'|'       vline marker
'_'       hline marker

linestyle可选参数:

'-'       solid line style
'--'      dashed line style
'-.'      dash-dot line style
':'       dotted line style
import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsex=np.linspace(start=0,stop=30,num=30)
y=np.sin(x)
plt.plot(x,y,color='r',marker='d',linestyle='--',linewidth=2,alpha=0.8)
plt.title("颜色:红,标记:菱形,线性:虚线,线宽:2,透明度:0.8")
plt.xlabel('x')
plt.ylabel('y')
plt.show()

7.子图

import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定画布大小
ax1=fig.add_subplot(2,2,1)#添加一个子图,返回子图句柄
ax2=fig.add_subplot(2,2,2)
ax3=fig.add_subplot(2,2,3)
ax4=fig.add_subplot(2,2,4)#子图1
x=np.linspace(start=0,stop=30,num=30)
y=sin(x)
ax1.plot(x,y)
ax1.set_xlabel('x')
ax1.set_ylabel('y')
ax1.set_title('子图1')#子图2
x=np.random.randint(low=2,high=10,size=10)
y=np.random.randint(low=2,high=10,size=10)
ax2.scatter(x,y)
ax2.set_xlabel('x')
ax2.set_ylabel('y')
ax2.set_title('子图2')
#子图3
x=['a','b','c','d']
y=[3,5,7,9]
ax3.bar(x,y,width=0.5)
ax3.set_xlabel('x')
ax3.set_ylabel('y')
ax3.set_title('子图3')#子图4
x=np.random.normal(loc=10,scale=1,size=100)
ax4.hist(x,bins=50)
ax4.set_xlabel('x')
ax4.set_ylabel('y')
ax4.set_title('子图4')plt.show()

或者


import numpy as np
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定画布大小
#fig.suptitle('大标题', fontsize=18)#子图1
plt.subplot(2,2,1)
x=np.linspace(start=0,stop=30,num=30)
y=sin(x)
plt.plot(x,y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('子图1')#子图2
plt.subplot(2,2,2)
x=np.random.randint(low=2,high=10,size=10)
y=np.random.randint(low=2,high=10,size=10)
plt.scatter(x,y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('子图2')
#子图3
plt.subplot(2,2,3)
x=['a','b','c','d']
y=[3,5,7,9]
plt.bar(x,y,width=0.5)
plt.xlabel('x')
plt.ylabel('y')
plt.title('子图3')#子图4
plt.subplot(2,2,4)
x=np.random.normal(loc=10,scale=1,size=100)
plt.hist(x,bins=50)
plt.xlabel('x')
plt.ylabel('y')
plt.title('子图4')
plt.show()

8.三维图:曲线

import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定画布大小
ax=fig.gca(projection='3d')#指定为3D#子图1
theta=np.linspace(-4*np.pi,4*np.pi,100)z=np.linspace(start=-2,stop=2,num=100)
r=z**2+1
x=r*np.sin(theta)
y=z*np.cos(theta)
ax.plot(x,y,z)
plt.show()

9.三维图:散点图

import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定画布大小
ax=fig.gca(projection='3d')#指定为3D#子图1
x1=np.random.random(100)*20
y1=np.random.random(100)*20
z=x1+y1
ax.scatter(x1,y1,z)
plt.show()

10.三维图:曲面图

import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定画布大小
ax=fig.gca(projection='3d')#指定为3Dx=np.arange(-5,5,0.25)
y=np.arange(-5,5,0.25)
x,y=np.meshgrid(x,y)#用np.meshgrid生成坐标网格矩阵
z=np.sin(np.sqrt(x**2+y**2))
#使用plot_surface函数
#cmap=cm.coolwarm是颜色属性
surf=ax.plot_surface(x,y,z,cmap=cm.coolwarm)
plt.show()

11.动态图

import matplotlib.pyplot as plt
import numpy as npPOINTS = 100
sin_list = [0] * POINTS
indx = 0
# fig, ax = plt.subplots()
while True:if indx == 40:indx = 0indx += 1# 更新绘图数据sin_list = sin_list[1:] + [np.sin((indx / 20) * np.pi)]# 显示时间plt.pause(0.01)# 清除上一次显示plt.cla()plt.plot(sin_list)# plt.draw()也可以放在这个位置,不会阻塞
plt.draw()

12.使图片可以手动保存
    前面画的图,我们只能copy,不能自己手动保存。
添加一行代码import matplotlib; matplotlib.use('TkAgg') 即可实现

不加这行代码

import numpy as np
import matplotlib.pyplot as plt
import matplotlib; matplotlib.use('TkAgg')
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False
x=np.linspace(-2*np.pi,2*np.pi,400)
siny=np.sin(x)
cosy=np.cos(x)plt.plot(x,siny,color="red",label="sin(x)")
plt.plot(x,cosy,color="blue",label="cos(x)",linestyle="--")
plt.xlabel("输入数据 x")
plt.ylabel("sin(x) 或者 cos(x)")
plt.title("三角函数图")
plt.legend()
plt.show()

然后我们可以手动保存,可以保存为不同格式。

13.调整坐标轴刻度大小
在绘图里加一行代码即可

plt.tick_params(labelsize=23)

14.高级三维 曲线图

import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定画布大小
ax=fig.gca(projection='3d')#指定为3D#子图1
theta=np.linspace(-4*np.pi,4*np.pi,100)
x=np.sin(theta)
y=np.cos(theta)ax.plot(np.ones(len(x)),np.arange(len(x)),x)
ax.plot(2*np.ones(len(x)),np.arange(len(x)),x)
ax.plot(3*np.ones(len(y)),np.arange(len(y)),y)
#plt.axis('off')#关闭所有坐标轴
ax.set_xlabel('个数')
ax.set_ylabel('长度')
ax.set_zlabel('数')
plt.legend()
plt.show()


作者:电气余登武

python matplotlib 绘图相关推荐

  1. python画图显示不了中文_完美解决Python matplotlib绘图时汉字显示不正常的问题

    Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下: 1.在python安装目录的Lib目录下创建ch.py文件. 文件中代码为: 保存,以后通过 ...

  2. Python+matplotlib绘图时显示中文的设置方法

    封面图片:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: =================== 在使用Python+mat ...

  3. python 3d绘图 汉字_完美解决Python matplotlib绘图时汉字显示不正常的问题

    Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下: 1.在python安装目录的Lib目录下创建ch.py文件. 文件中代码为: 保存,以后通过 ...

  4. 科研论文绘图:ppt, word,latex,python matplotlib绘图 ,矢量图,高清图,放大不失真

    目录 1. 用PPT绘图,保存为高清图片,不推荐使用,方法链接 2. 用PPT绘图,保存为emf矢量图,适合插入word,方法链接 3. 用PPT画图,保存为eps文件,适合插入latex,方法链接 ...

  5. Python Matplotlib绘图的正确打开方式

    Python Matplotlib绘图的正确打开方式 文章目录 Python Matplotlib绘图的正确打开方式 1.先搞懂fig.axes.axis `Figure` `Axes` `Axis` ...

  6. 解决 Python Matplotlib 绘图时不连续x轴自动补全的问题(xsticks)

    问题 发现一个奇怪的问题,记录一下: 用 Python Matplotlib绘图的时候,x轴为不连续的日期,但是画出来的图,对于不连续的部分x轴会自动补全,空出来的部分是没有值的.(x轴数据明明是明确 ...

  7. python绘制3d图-Python matplotlib绘图示例 - 绘制三维图形

    Python matplotlib模块是扩展的MATLAB的一个绘图工具库.它可以绘制各种图形,下面就学习了下Python中的matplotlib模块,如何绘制三维图形. 示例代码一: # codin ...

  8. 使用Python Matplotlib绘图并输出图像到文件中的实践

    在大数据及深度学习的背景下,随着卷积神经网络(CNN)的成功应用,图像识别能力好像唾手可得.最近实际工作中,却遇到了困难,难题是用于可学习的图像贫乏,很难形成用于学习的样本. 其实,也是有一定解决图像 ...

  9. python matplotlib绘图 axes和pyplot用法的区别是什么?子图subplot

    在matplotlib绘图过程中,经常会出现axes绘图和pyplot绘图这两种方法,但是如果不搞清楚它们的区别,往往会得不到你想要的图形.所谓axes绘图是指调用axes对象(坐标轴对象)去完成绘图 ...

  10. Python+matplotlib绘图使用Latex引擎渲染坐标轴刻度文本上标

    问题描述: 在使用matplotlib进行数据可视化或科学计算可视化时,有时候数值过大或过小,使得坐标轴刻度显示不方便,这时可以考虑使用科学计数法,例如把10000显示为,把0.00001显示为. 在 ...

最新文章

  1. Image转Base64镶嵌网页中
  2. redis学习-列表(list)常用命令
  3. Scrum立会报告+燃尽图(Final阶段第四次)
  4. 内容页超连接关键词的完美实现
  5. [转] 39万的一节课:让你悟透“近朱者赤,近墨者黑”的道理
  6. android原生滑块验证
  7. 树莓派-1、上手及资源
  8. 计算机应用系特色活动,职教桥:用匠心打造计算机应用专业特色课程体系
  9. http的长连接和短连接(史上最通俗!)以及应用场景
  10. ftp服务器可以异地传文件吗,FTP图片上传到异地服务器
  11. 笔记本电脑触控板突然失灵的解决办法
  12. DNS正反向域名解析与主从切换 服务搭建
  13. Celery 全面学习笔记
  14. 基于Cortex-A7架构的嵌入式linux ARM裸机开发<2>——LED灯闪烁(C版本)
  15. python 密码验证
  16. 改变PPT导出图片分辨率
  17. 3.线程安全之可见性、有序性、原子性是什么?
  18. Elmedia Player Pro for Mac专业破解版永久激活方法
  19. 新冠「阳了」,如何稳定情绪,做好心理自救?
  20. Vue学习之路(8)------快餐店收银系统

热门文章

  1. python怎么玩pdf_如何使用Python玩转PDF各种骚操作?
  2. JavaScript——易班优课YOOC课群在线测试自动答题解决方案(二十二)脚本更新3.1
  3. Tensorflow——[Could not load dynamic library cudart64_101.dll]解决方案
  4. BugKuCTF 加密 ok
  5. Ajax和JSON-学习笔记04【JSON_解析器】
  6. zzuliOJ【土豪婷婷请吃饭】【解法:Java二维数组】
  7. 宝塔使用webhook自动部署php项目
  8. html 常用的标签
  9. 对称加密算法原理--OpenSSL演示、iOS代码运用及CCCrypt安全隐患
  10. java 动态代理深度学习(Proxy,InvocationHandler)