使用Matplotlib画图系列(一)

实现一个最简单的plot函数调用:

1 import matplotlib.pyplot as plt
2
3 y=pp.DS.Transac_open  # 设置y轴数据,以数组形式提供
4
5 x=len(y)           # 设置x轴,以y轴数组长度为宽度
6 x=range(x)      # 以0开始的递增序列作为x轴数据
7
8 plt.plot(x,y)  #  只提供x轴,y轴参数,画最简单图形

图形输出结果类似于:

加入新方法:

plt.figure() :自定义画布大小

plt.subplot() :设置画布划分以及图像在画布上输出的位置

import matplotlib.pyplot as plt

y=pp.DS.Transac_open  # 设置y轴数据,以数组形式提供

x=len(y)           # 设置x轴,以y轴数组长度为宽度
x=range(x)      # 以0开始的递增序列作为x轴数据

#==============================
plt.figure(figsize=(8,8),dpi=80)  # 画图之前首先设置figure对象,此函数相当于设置一块自定义大小的画布,使得后面的图形输出在这块规定了大小的画布上,其中参数figsize设置画布大小
plt.subplot(221) # 将figure设置的画布大小分成几个部分,参数‘221’表示2(row)x2(colu),即将画布分成2x2,两行两列的4块区域,1表示选择图形输出的区域在第一块,图形输出区域参数必须在“行x列”范围                       ,此处必须在1和2之间选择——如果参数设置为subplot(111),则表示画布整个输出,不分割成小块区域,图形直接输出在整块画布上
plt.plot(y,xx) # 在2x2画布中第一块区域输出图形
plt.subplot(222)
plt.plot(y,xx)    #在2x2画布中第二块区域输出图形
plt.show()
plt.subplot(223)  #在2x2画布中第三块区域输出图形
plt.plot(y,xx)
plt.subplot(224)  # 在在2x2画布中第四块区域输出图形
plt.plot(y,xx)
#==============================

plt.plot(x,y)  #  只提供x轴,y轴参数,画最简单图形

输出结果:

加入新方法:

plt.xticks():设置x轴刻度的表现方式

plt.xlim():设置x轴刻度的取值范围

 1 import matplotlib.pyplot as plt
 2 import numpy as nu
 3
 4 y=pp.DS.Transac_open  # 设置y轴数据,以数组形式提供
 5
 6 x=len(y)           # 设置x轴,以y轴数组长度为宽度
 7 x=range(x)      # 以0开始的递增序列作为x轴数据
 8
 9 plt.figure(figsize=(8,8),dpi=80)  # 画图之前首先设置figure对象,此函数相当于设置一块自定义大小的画布,使得后面的图形输出在这块规定了大小的画布上,其中参数figsize设置画布大小
10 plt.subplot(111) # 将figure设置的画布大小分成几个部分,参数‘221’表示2(row)x2(colu),即将画布分成2x2,两行两列的4块区域,1表示选择图形输出的区域在第一块,图形输出区域参数必须在“行x列”范围                       ,此处必须在1和2之间选择——如果参数设置为subplot(111),则表示画布整个输出,不分割成小块区域,图形直接输出在整块画布上
11 plt.plot(y,x)
12 #================================
13 plt.xlim(0,1000)  #  设置x轴刻度范围,从0~1000
14 plt.ylim(0,20)   # 设置y轴刻度的范围,从0~20
15
16 plt.xticks(nu.linspace(0,1000,15,endpoint=True))  # 设置x轴刻度
17 plt.yticks(nu.linspace(0,20,10,endpoint=True))  # 设置y轴刻度
18 #numpy.linspace()方法返回一个等差数列数组,第一个参数表示等差数列的第一个数,第二个参数表示等差数列最后一个数,第三个参数设置组成等差数列的元素个数,endpoint参数设置最后一个数是否包含在该等差数列。数列中相邻元素间的步长值为随机
19 如:nu.linspace(0,1000,15,endpoint=True)表示:第一个元素为0,最后一个数为1000,在这个 范围内,取15个值,构成一个等差数列,步长值随机,且1000包含在该数列中
20 #================================
21 plt.show()

图形输出结果:

修改plot方法,新加入参数:

plt.plot(y,xx,color=‘red‘,linewidth=2.5,linestyle=‘-‘) # color参数设置曲线颜色,linewidth设置曲线宽度,linestyle设置曲线风格

输出结果:

时间: 2024-10-19 15:27:49

使用Matplotlib画图系列(一)的相关文章

用python matplotlib 画图

state-machine environment object-oriente interface figure and axes backend and frontend user interface bankends hardcopy backends or non-interactive backends confugure your backends renderer : AGG import matplotlib.pyplot as plt plt.plot() 可一次画好几个, r

ArcGIS10中matplotlib画图时的中文设置

利用GIS的数据批量生成XY的图形图像文件,可以直接使用Python.一般大家都是用matplotlib,中文设置的问题参看了许多内容,结论是对错不一,让我折腾了三天,现总结如下: 1.软件的版本.安装测试的为numpy-1.6.1和matplotlib-1.1.0,WindowsXP系统.我原来系统安装的numpy-1.6和matplotlib-1.1.0有冲突. 2.修改matplotlibrc文件.ArcGIS10下安装后,该文件在C:\Python26\ArcGIS10.0\Lib\si

python3 使用matplotlib画图出现中文乱码的情况

python3使用matplotlib画图,因python3默认使用中unicode编码,所以在写代码时不再需要写 plt.xlabel(u'人数'),而是直接写plt.xlabel('人数'). 注意: 在有中文的地方加上中文相关的字体,不然会因为没有字体显示成放框,因为默认的使用的字体里没有中文的,使用例子如下: # -*- coding: utf-8 -*- import pandas as pd import numpy as np from pandas import Series,D

Android画图系列(二)——自己定义View绘制基本图形

这个系列主要是介绍下Android自己定义View和Android画图机制.自己能力有限.假设在介绍过程中有什么错误.欢迎指正 前言 在上一篇Android画图系列(一)--自己定义View基础中我们了解自己定义View相关的基本知识.只是,这些东西依然还是理论,接下来我们就实际绘制一些东西 在本篇文章中,我们先了解下面Canvas,而且画一些主要的图形 Canvas简单介绍 Canvas我们能够称之为画布.能够在上面绘制各种东西.是安卓平台2D图形绘制的基础.非常强大. 一般来说,比較基础的东

matplotlib画图报错This figure includes Axes that are not compatible with tight_layout, so results might be incorrect.

之前用以下代码将实验结果用matplotlib show出来 plt.plot(np.arange(len(aver_reward_list)), aver_reward_list) plt.ylabel('Average Reward') plt.xlabel('Episode') plt.tight_layout() plt.savefig("AverageReward.eps") plt.show() 画出的图都没什么问题,但忽然有一次数据量比较大,matplotlib开始报错,

matplotlib画图出现乱码情况

python3使用matplotlib画图,因python3默认使用中unicode编码,所以在写代码时不再需要写 plt.xlabel(u’人数’),而是直接写plt.xlabel(‘人数’). 注意: 在有中文的地方加上中文相关的字体,不然会因为没有字体显示成放框,因为默认的使用的字体里没有中文的,使用例子如下: # -*- coding: utf-8 -*- import pandas as pd import numpy as np from pandas import Series,D

Anaconda3使用matplotlib画图报错问题的解决方法

在Anaconda3中使用matplotlib画图报错:ModuleNotFoundError: No module named 'PyQt4' 试了网上的几种方法都不奏效,最后在http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4 上下载和Python版本对应PyQt4的.whl文件,然后用pip命令安装. 此刻再执行程序不报上述错误,在执行到plt.figure()命令时又报:TypeError:'figure' is an unkown keyw

读书笔记5基于matplotlib画图

一.导入需要的模块 import numpy as np import matplotlib.pyplot as plt import seaborn as sns import scipy.stats as stats 二.画基本图形 1.plot画图 y=np.random.randn(100) plt.plot(y,'b-') plt.xlabel('x') plt.ylabel('y') plt.title(u'title') plt.show() 可选参数如下所示: 也可以通过更改参数

matplotlib画图

常用的几个画图. import matplotlib.pyplot as plt x=[1,2,3,4] y=[5,4,3,2] plt.figure() plt.subplot(231) plt.plot(x,y) plt.subplot(232) plt.bar(x,y) plt.subplot(233) plt.barh(x,y) plt.subplot(234) plt.bar(x,y) y1=[7,8,5,3] plt.bar(x,y1,bottom=y,color='r') plt.