Python Matplotlib绘图基础详细教程

目录
  • 1. 画图的基本步骤
    • 1.1一步一步看
  • 2.散点图
  • 3.条形图的绘制
  • 4.四幅子图的绘制
  • 5.饼状图的绘制
  • 6.热力图的绘制
  • 总结

plt是最常用的接口

1. 画图的基本步骤

1.导入模块

import matplotlib as mpl
import matplotlib.pyplot as plt

2.创建画板,然后对画板进行调整

3.定义数据

4.绘制图形(包含坐标轴的设置,数据的导入,线条的样式,颜色,还有标题,图例,等等)

5.plt.show()

1.1一步一步看

1.1.1**(一)第一步:创建并定义一个"画板"**(你将要在你定义的画板上面进行画图操作).

fig=plt.figure()#定义一张画板命名为fig

在plt.figure()括号里面还有一些参数

例如:

huaban=plt.figure(figsize=(6,10),facecolor='b',dpi=500)
#figsize是调整你的图像的比例大小,上面所示就是:长/宽=6/10
#facecolor是设置画板的背景颜色,一般颜色代码为英文的首字母
#dpi设置图像的分辨率,分辨率越图像越清晰
#edgcolor是设置边框颜色的参数

1.1.2**(二).第二步:定义你的x,y数据**

这里我们使用numpy库函数来制造一些数据

所以我们还得导入numpy函数

import numpy as np
#设置xy的值
x=np.linspace(-5,5,11)#这里就是把-5到5平均分成十一份,(-5,-4,-3,.....)
y=[1,6,3,-3,6,8,3,6,9,1,-5]

1.1.3**(三).第三步:设置x,y轴的大小,刻度,…**

#添加p1到画板
p1=fig.add_subplot(111)#这里的111是指把画板分成一行一列,把p1添加到第一副图

#限制函数坐标轴的长度
p1.axis([-5,5,-10,10])#x轴长度为-5到5,y轴长度为-10到10

#设置x,y轴的刻度
plt.xticks(x)
plt.yticks(y)
#这里是指:x,y轴的刻度为之前定义的x,y数据列表

#设置坐标轴的上下限
plt.xlim(-5,5)
plt.ylim(-10,10)

1.1.4(四).绘制图像,导入x,y数据,设置线条样式,颜色,粗细,添加图例,标题…

#绘制图像
p1.plot(x,y,marker='o',ms=5,lw=2,ls='--',label='band')
#x,y就是最开始定义的数据
#marker是设置拐点样式:o/h/^/./+等等
#ms是设置拐点的标记大小
#lw就是设置线条粗细,数值越大线条越粗
#ls是设置线条样式,这里'--'为虚线
#label是设置此线条的名称标题

p1.legend(loc='best')#添加图例,其中best是指将图例的位置添加到最佳位置,
#你也可以自己设置位置,例如:upper left(左上角)

#添加标题
plt.title('NUM',fontsize=24)#设置图像的标题,fontsize是设置标题文字的大小
plt.xlabel('Value',fontsize=14)#设置x轴的标题
plt.ylabel('ARG',fontsize=14)#设置y轴的标题

现在基本上就设置好了,因为我是在脚本中画图,所以我需要在代码的最后添加一个:plt.show(),它会自动启用一个事件循环,并找到所有当前可用的图形对象,然后打开一个交互式窗口来显示图形.

1.1.5上述的完整的代码(有一些细节的添加):

import matplotlib.pyplot as plt
import numpy as np
#设置xy的值
x=np.linspace(-5,5,11)
y=[1,6,3,-3,6,8,3,6,9,1,-5]
#创建一张画板
huaban=plt.figure(figsize=(6,10))
#添加p1到画板
p1=huaban.add_subplot(111)

#限制函数坐标轴的长度
p1.axis([-5,5,-10,10])

#设置x,y轴的刻度
plt.xticks(x)
plt.yticks(y)

#去除右边边框
p1.spines['right'].set_color('none')
#去除顶部边框
p1.spines['top'].set_color('none')

#下面两行代码是将xy轴的交点改为(0,0)
p1.spines['bottom'].set_position(('data',0))
p1.spines['left'].set_position(('data',0))

#绘制图像
p1.plot(x,y,marker='^',ms=5,lw=2,ls='--',label='band')
p1.legend(loc='upper left')
#添加标题
plt.title('NUM',fontsize=24)
plt.xlabel('Value',fontsize=14)
plt.ylabel('ARG',fontsize=14)

#添加辅助虚线
for i in range(len(x)):
    x1=[x[i],x[i]]
    y1=[0,y[i]]
    plt.plot(x1,y1,'r-.')
for i in range(len(x)):
    x2=[0,x[i]]
    y2=[y[i],y[i]]
    p1.plot(x2,y2,'r-.')

#添加每个折点的坐标
for i in range(len(x)):
    p1.text(x[i],y[i],(x[i],y[i]),c='green')

plt.grid(c='b',ls='--')#这个函数是生成网格的函数
plt.show()

输出结果:

2.散点图

散点图其实大部分语法和上述差不多,只需要将折线图中的plt.polt()改为plt.scatter()

这里我们只需要画一幅图来做个例子,就省去创建画板的步骤,创建画板的步骤在后面才会有用.

import numpy as np
import matplotlib.pyplot as plt

#随机生成一些数据
N=20
x=np.random.rand(N)
y=np.random.rand(N)
x1=np.random.rand(N)
y1=np.random.rand(N)

plt.scatter(x,y,s=100,c='red',marker='^',label='red')#c是color的简称,设置颜色
plt.legend(loc='best')

plt.scatter(x1,y1,s=50,c='blue',marker='o',label='blue')
plt.legend(loc='upper left')#在左上角添加图例

plt.xlabel('x')#给横坐标添加标签
plt.ylabel('y')#给纵坐标添加标签
plt.title('picture')#给图像添加标签
plt.show()#显示图像

输出结果:

3.条形图的绘制

使用plt.bar()进行绘制

import numpy as np
import matplotlib.pyplot as plt

x=[1,2,3,4,5]
y=np.random.rand(5)
plt.figure(figsize=(8,4))
plt.bar(x,y)
x_t=list(range(len(x)))
plt.xticks(x,x_t)
plt.show()

输出结果:

4.四幅子图的绘制

画子图就需要创建画板,然后对画板进行分割,然后在分出来的位置进行绘制不同的图像.

重点是这里:

p1 = huaban.add_subplot(221)p2=huaban.add_subplot(222)p3=huaban.add_subplot(223)p4=huaban.add_subplot(224)#这些数字的意思就是,把画板分成两行两列,四个位置,然后p1在位置1,p2在位置2,p3在位置3.......
import numpy as np
import matplotlib.pyplot as plt

x=range(-10,10,1)
y=np.random.rand(20)
huaban=plt.figure(facecolor='pink',figsize=(8,8),dpi=100)

p1 = huaban.add_subplot(221)
p1.plot(x,y,label="sinx",marker='o')
plt.legend(loc='best')
plt.grid(c='r',linestyle=':')

p2=huaban.add_subplot(222)
x1=np.linspace(-np.pi*2,np.pi*2,1000)
y1=np.sin(x1)
p2.plot(x1,y1,label="sinx",color='blue')
plt.legend(loc='best')
plt.grid(c='b',linestyle='--')

p3=huaban.add_subplot(223)
x2=np.random.rand(10)
y2=np.random.rand(10)
x3=np.random.rand(10)
y3=np.random.rand(10)
p3.scatter(x2,y2,c='red',marker='o',label="散点图")
p3.scatter(x3,y3,c='red',marker='^',label="散1")

p4=huaban.add_subplot(2,2,4)
p4.plot(x1,np.cos(x1),label="cosx")
plt.legend('best')
plt.grid(c='c',linestyle=':')
plt.show()

输出结果:

5.饼状图的绘制

import matplotlib.pyplot as plt
x=[35,25,25,15]
colors=["#14615E", "#F46C40", "#3E95C0", "#A17D3B"]
name=['A','B','C','D']
label=['35.00%','25.00%','25.00%','15.00%']
huaban=plt.figure()
p1=huaban.add_subplot(111)

p1.pie(x,labels=name,colors=colors,autopct='%1.2f%%',explode = (0, 0.2, 0, 0))
plt.axis('equal')
plt.show()

输出结果:

6.热力图的绘制

import matplotlib.pyplot as plt
import numpy as np
plt.figure(figsize=(4,4))
# Fixing random state for reproducibility
#np.random.seed(19680801)
#创建子图1
plt.subplot(211)
plt.imshow(np.random.random((10, 10)), cmap="hot")

#创建子图2
plt.subplot(212)
plt.imshow(np.random.random((5, 5)), cmap="winter")

plt.subplots_adjust(bottom=0.09, right=0.5, top=0.9)
cax = plt.axes([0.75, 0.1, 0.065, 0.8])
plt.colorbar(cax=cax)

plt.show()

输出结果:

总结

到此这篇关于Python Matplotlib绘图基础的文章就介绍到这了,更多相关Python Matplotlib绘图基础内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python绘图库Matplotlib的安装

    本文简单介绍了Python绘图库Matplotlib的安装,简介如下: matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地 进行制图.Matplotlib的安装可以参见:官网链接 http://matplotlib.org/users/installing.html 安装总结步骤如下: windows 平台上下载.exe格式 直接安装. 1.python下载安装 下载地址:http://www.python.org/download/

  • 学习python中matplotlib绘图设置坐标轴刻度、文本

    总结matplotlib绘图如何设置坐标轴刻度大小和刻度. 上代码: from pylab import * from matplotlib.ticker import MultipleLocator, FormatStrFormatter xmajorLocator = MultipleLocator(20) #将x主刻度标签设置为20的倍数 xmajorFormatter = FormatStrFormatter('%1.1f') #设置x轴标签文本的格式 xminorLocator = M

  • Python 绘图库 Matplotlib 入门教程

    运行环境 由于这是一个Python语言的软件包,因此需要你的机器上首先安装好Python语言的环境.关于这一点,请自行在网络上搜索获取方法. 关于如何安装Matplotlib请参见这里:Matplotlib Installing. 笔者推荐大家通过pip的方式进行安装,具体方法如下: sudo pip3 install matplotlib 本文中的源码和测试数据可以在这里获取:matplotlib_tutorial 本文的代码示例会用到另外一个Python库:NumPy.建议读者先对NumPy

  • Python matplotlib绘图可视化知识点整理(小结)

    无论你工作在什么项目上,IPython都是值得推荐的.利用ipython --pylab,可以进入PyLab模式,已经导入了matplotlib库与相关软件包(例如Numpy和Scipy),额可以直接使用相关库的功能. 本文作为学习过程中对matplotlib一些常用知识点的整理,方便查找. 这样IPython配置为使用你所指定的matplotlib GUI后端(TK/wxPython/PyQt/Mac OS X native/GTK).对于大部分用户而言,默认的后端就已经够用了.Pylab模式

  • Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度

    前言 matplotlib.pyplot是一些命令行风格函数的集合,使matplotlib以类似于MATLAB的方式工作.每个pyplot函数对一幅图片(figure)做一些改动:比如创建新图片,在图片创建一个新的作图区域(plotting area),在一个作图区域内画直线,给图添加标签(label)等.matplotlib.pyplot是有状态的,亦即它会保存当前图片和作图区域的状态,新的作图函数会作用在当前图片的状态基础之上. 在开始本文之前,不熟悉的朋友可以先看看这篇文章:Python

  • Python使用matplotlib绘图无法显示中文问题的解决方法

    本文实例讲述了Python使用matplotlib绘图无法显示中文问题的解决方法.分享给大家供大家参考,具体如下: 在python中,默认情况下是无法显示中文的,如下代码: import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxstyle = "sawtooth", fc = "0.8") leafNode = dict(boxstyle = "round4", f

  • python matplotlib绘图,修改坐标轴刻度为文字的实例

    工作中偶尔需要做客流分析,用pyplot 库绘图.一般情况下, x 轴刻度默认显示为数字. 例如: 我希望x 轴刻度显示为星期日期. 查询pyplot 文档, 发现了 xtick() 函数可以修改刻度. 代码如下: import matplotlib.pyplot as plt import numpy as np #val_ls = [np.random.randint(100) + i*20 for i in range(7)] scale_ls = range(7) index_ls =

  • python的绘图工具matplotlib使用实例

    matplotlib是功能十分强大的绘制二维图形的Python模块,它用Python语言实现了MATLAB画图函数的易用性,同时又有非常强大的可定制性.它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中.它的文档相当完备,并且Gallery页面中有上百幅缩略图,打开之后都有源程序.因此如果你需要绘制某种类型的图,只需要在这个页面中浏览.复制.粘贴一下,基本上都能搞定! 实例代码如下: 1. 柱状图 import matp

  • Python的matplotlib绘图如何修改背景颜色的实现

    在主图中背景颜色不知道怎么改,plt.plot()中没有axisbg参数. 但是子图可以对plt.subplot的参数做修改,下面是对子图的背景颜色修改代码 import matplotlib.pyplot as plt import numpy as np # Fixing random state for reproducibility np.random.seed(19680801) dt = 0.01 t = np.arange(0, 30, dt) nse1 = np.random.r

  • Python Matplotlib绘图基础详细教程

    目录 1. 画图的基本步骤 1.1一步一步看 2.散点图 3.条形图的绘制 4.四幅子图的绘制 5.饼状图的绘制 6.热力图的绘制 总结 plt是最常用的接口 1. 画图的基本步骤 1.导入模块 import matplotlib as mpl import matplotlib.pyplot as plt 2.创建画板,然后对画板进行调整 3.定义数据 4.绘制图形(包含坐标轴的设置,数据的导入,线条的样式,颜色,还有标题,图例,等等) 5.plt.show() 1.1一步一步看 1.1.1*

  • Python Matplotlib绘图基础知识代码解析

    1.Figure和Subplot import numpy as np import matplotlib.pyplot as plt #创建一个Figure fig = plt.figure() #不能通过空figure绘图,必须使用add_subplot创建一个或多个subplot #图像为2x2,第三个参数为当前选中的第几个 ax1 = fig.add_subplot(2, 2, 1) ax2 = fig.add_subplot(2, 2, 2) ax3 = fig.add_subplot

  • 用pip给python安装matplotlib库的详细教程

    Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形. 1.首先在python里安装pip,打开安装python的文件夹,找到python\scripts查看是否有pip.exe,如果有说明python里已经安装了pip,直接进入下一步.如果没有pip.exe,则需要先安装pip,官网上有详细教程,此处不再介绍.链接https://pip.pypa.io/en/stable/installing/ 2.添加环境变量,右键我的电脑

  • python/Matplotlib绘制复变函数图像教程

    今天发现sympy依赖的库mpmath里也有很多数学函数,其中也有在复平面绘制二维图的函数cplot,具体例子如下 from mpmath import * def f1(z): return z def f2(z): return z**3 def f3(z): return (z**4-1)**(1/4) def f4(z): return 1/z def f5(z): return atan(z) def f6(z): return sqrt(z) cplot(f1) cplot(f2)

  • 完美解决Python matplotlib绘图时汉字显示不正常的问题

    Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下: 1.在python安装目录的Lib目录下创建ch.py文件. 文件中代码为: 保存,以后通过以下代码调用: #-*-coding:utf-8-*- #文件名: ch.py def set_ch(): from pylab import mpl mpl.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 mpl.rcParams['axes

  • python matplotlib 绘图 和 dpi对应关系详解

    我就废话不多说啦! dpi=1 600×400 dpi=2 1200×800 dpi=3 1800×1200 ........ dpi=21 (21×600)×(21×400) ---> 12600×8400 示例代码: ............... ............... plt_temp=y_axis plt_temp.resize(len(y_axis) , 1) plt_arr=np.concatenate((plt_arr,plt_temp ), axis=1) #print

  • 解决Python Matplotlib绘图数据点位置错乱问题

    在绘制正负样本在各个特征维度上的CDF(累积分布)图时出现了以下问题: 问题具体表现为: 1.几个负样本的数据点位置倒错 2.X轴刻度变成了乱七八糟一团鬼东西 最终解决办法 造成上述情况的原因其实是由于输入matplotlib.plot()函数的数据x_data和y_data从CSV文件中直接导入后格式为string,因此才会导致所有数据点的x坐标都被直接刻在了x轴上,且由于坐标数据格式错误,部分点也就表现为"乱点".解决办法就是导入x,y数据后先将其转化为float型数据,然后输入p

  • python UIAutomator2使用超详细教程

    一.环境要求 python 3.6+ android 4.4+ 二.介绍 uiautomator2 是一个可以使用Python对Android设备进行UI自动化的库.其底层基于Google uiautomator,Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作. 三.库地址 GitHub地址: https://github.com/openatx/uiautomator2 https://github.com/openatx/uiau

  • Python打包为exe详细教程

    一.安装 → pyinstaller 1.1 方式1:cmd 1. 调出运行窗口:win + r, 并输入 cmd 2. 切换到 pip.exe 目录(Scripts,参考如下:) cd C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32\Scripts # D: # 若是其它盘,如 D # cd D:\xx 3. 执行命令 pip install pyinstaller 1. 切换到 pip.exe 的目录(找到你本

随机推荐