首页 > 其他分享 >无涯教程-NumPy - Matplotlib

无涯教程-NumPy - Matplotlib

时间:2023-10-16 12:32:38浏览次数:35  
标签:plt 标签 pyplot 无涯 Matplotlib matplotlib np import NumPy

Matplotlib是Python的绘图库,它与NumPy一起使用,提供了一个环境,是MatLab的有效开源替代方案,它可以与PyQt和wxPython等图形工具包一起使用

Matplotlib模块最初由John D. Hunter编写。自2012年以来,Michael Droettboom是主要开发人员。目前,Matplotlib版本。 1.5.1是可用的稳定版本。该软件包以二进制形式提供,也可以以源代码形式在www.matplotlib.org 

按照惯例,通过添加以下语句将包导入到Python脚本中-

from matplotlib import pyplot as plt

这里 pyplot()是matplotlib库中最重要的函数,用于绘制2D数据。以下脚本绘制了等式 y=2x + 5

import numpy as np 
from matplotlib import pyplot as plt 

x = np.arange(1,11) 
y = 2 * x + 5 
plt.title("Matplotlib demo") 
plt.xlabel("x axis caption") 
plt.ylabel("y axis caption") 
plt.plot(x,y) 
plt.show()

通过 np.arange()函数作为 x轴上的值创建ndarray对象x。 y轴上的相应值存储在另一个 ndarray对象y 中。这些值是使用matplotlib软件包的pyplot子模块的 plot()函数绘制的。

图形表示由 show()函数显示。

Matplotlib Demo

  

通过向 plot()函数添加格式字符串,可以离散地显示值,而不是线性图。可以使用以下格式字符。

Sr.No. Character & 描述
1

'-'

实线样式

2

'-'

虚线样式

3

'-.'

点划线样式

4

':'

虚线样式

5

'.'

点标签

6

','

像素标签

7

'o'

圆形标签

8

'v'

Triangle_down标签

9

'^'

Triangle_up标签

10

'<'

Triangle_left标签

11

'>'

Triangle_right标签

12

'1'

Tri_down标签

13

'2'

Tri_up标签

14

'3'

Tri_left标签

15

'4'

Tri_right标签

16

's'

方形标签

17

'p'

五角大楼标签

18

'*'

星标

19

'h'

Hexagon1标签

20

'H'

Hexagon2标签

21

'+'

加号标签

22

'x'

X标签

23

'D'

钻石笔

24

'd'

细钻石标签

25

'|'

Vline标签

26

'_'

划线器

还定义了以下颜色缩写。

字符 颜色
'b' 蓝色
'g' 绿色
'r' 红色
'c' 青色
'm' 洋红色
'y' 黄色
'k' 黑色
'w' 白色

要显示代表点的圆,而不是上面的示例中的线,请使用" ob" 作为plot()函数中的格式字符串。

import numpy as np 
from matplotlib import pyplot as plt 

x = np.arange(1,11) 
y = 2 * x + 5 
plt.title("Matplotlib demo") 
plt.xlabel("x axis caption") 
plt.ylabel("y axis caption") 
plt.plot(x,y,"ob") 
plt.show() 

上面的代码应产生以下输出-

Color Abbreviation

正弦波图

以下脚本使用matplotlib生成正弦波图。

import numpy as np 
import matplotlib.pyplot as plt  

# 计算正弦曲线上点的 x 和 y 坐标
x = np.arange(0, 3 * np.pi, 0.1) 
y = np.sin(x) 
plt.title("sine wave form") 

# 使用 matplotlib 绘制点
plt.plot(x, y) 
plt.show() 
Sine Wave

subplot()

subplot()函数允许您在同一图中绘制不同的事物。在以下脚本中,绘制了正弦和余弦值。

import numpy as np 
import matplotlib.pyplot as plt  
   
# 计算正弦和余弦曲线上点的 x 和 y 坐标
x = np.arange(0, 3 * np.pi, 0.1) 
y_sin = np.sin(x) 
y_cos = np.cos(x)  
   
# 设置一个高度为 2 和宽度为 1 的子图网格,
#并将第一个这样的子图设置为活动。
plt.subplot(2, 1, 1)
   
# 制作第一个子图
plt.plot(x, y_sin) 
plt.title('Sine')  
   
# 将第二个子图设置为活动,并制作第二个图。
plt.subplot(2, 1, 2) 
plt.plot(x, y_cos) 
plt.title('Cosine')  
   
# 显示图。
plt.show()

上面的代码应产生以下输出-

Sub Plot

bar()

pyplot子模块提供了 bar()函数来生成条形图。下面的示例生成两组 x 和 y 数组的条形图。

from matplotlib import pyplot as plt 
x = [5,8,10] 
y = [12,16,6]  

x2 = [6,9,11] 
y2 = [6,15,7] 
plt.bar(x, y, align = 'center') 
plt.bar(x2, y2, color = 'g', align = 'center') 
plt.title('Bar graph') 
plt.ylabel('Y axis') 
plt.xlabel('X axis')  

plt.show()

此代码应产生以下输出-

Bar Graph

参考链接

https://www.learnfk.com/numpy/numpy-matplotlib.html

标签:plt,标签,pyplot,无涯,Matplotlib,matplotlib,np,import,NumPy
From: https://blog.51cto.com/u_14033984/7881858

相关文章

  • 【matplotlib 实战】--南丁格尔玫瑰图
    南丁格尔玫瑰图是一种用极坐标下的柱状图或堆叠柱状图来展示数据的图表。虽然南丁格尔玫瑰图外观类似饼图,但是表示数据的方式不同,它是以半径来表示数值的,而饼图是以扇形的弧度来表达数据的。所以,南丁格尔玫瑰图在视觉上会夸大数据的比例,因为半径和面积之间是平方关系。因此,当需......
  • 无涯教程-NumPy - 算术运算
    用于执行算术运算(如add(),subtract(),multipli()和divide())的输入数组必须具有相同的维度或符合数组broadcasting规则。importnumpyasnpa=np.arange(9,dtype=np.float_).reshape(3,3)print'Firstarray:'printaprint'\n'print'Secondarray:'b=......
  • 无涯教程-NumPy - 数学函数
    可以理解,NumPy包含大量的各种数学运算,NumPy提供标准的三角函数,算术运算功能,处理复数等。三角函数NumPy具有标准三角函数,该函数返回给定角度的弧度的三角比例。importnumpyasnpa=np.array([0,30,45,60,90])print'Sineofdifferentangles:'#通过乘以pi/180转......
  • 无涯教程-NumPy - 按位运算符
    以下是NumPy包中可用的按位运算功能。Sr.No.描述1bitwise_and计算数组元素的按位与运算2bitwise_or计算数组元素的按位或运算3invert按位计算NOT4left_shift将二进制表示形式的位向左移动5right_shift将二进制表示形式的位向右移参考链接https://ww......
  • 无涯教程-NumPy - 数组操作
    NumPy包中提供了一些例程来处理ndarray 对象中的元素。它们可以分为以下类型-Changing维度Sr.No.Shape&Remark1reshape在不更改数据的情况下为数组赋予新的维度2flat数组上的一维迭代器3flatten返回折叠成一维的数组的副本4ravel返回一个连续的扁平数组Tr......
  • 无涯教程-NumPy - 遍历数组
    NumPy包含一个迭代器对象numpy.nditer,这是一个有效的多维迭代器对象,使用它可以遍历数组。使用Python的标准Iterator迭代接口访问数组的每个元素。让无涯教程使用arange()函数创建一个3X4数组,并使用nditer对其进行迭代。示例1importnumpyasnpa=np.arange(0,60,5)a=a......
  • 无涯教程-NumPy - 数值范围
    在本章中,无涯教程将看到如何从数值范围创建数组。numpy.arange此函数返回一个ndarray对象,该对象包含给定范围内的均匀间隔的值。该函数的格式如下-numpy.arange(start,stop,step,dtype)构造函数采用以下参数。Sr.No.Parameter&描述1start间隔的开始。如果省略,则......
  • 无涯教程-NumPy - 高级索引
    有两种类型的高级索引-Integer索引和Boolean索引。整数索引根据数组的N维索引选择数组中的任意项,每个整数数组代表该维度的索引数,当索引与目标ndarray的维数一样时,它变得很简单。示例1importnumpyasnpx=np.array([[1,2],[3,4],[5,6]])y=x[[0,1,2],[0,1......
  • 无涯教程-NumPy - 数组属性
    在本章中,无涯教程将讨论NumPy的各种数组属性。ndarray.shape此数组属性返回一个由数组维组成的元组。它也可以用来调整数组的大小。示例1importnumpyasnpa=np.array([[1,2,3],[4,5,6]])printa.shape输出如下-(2,3)示例2#这会调整ndarray的大小importnump......
  • 无涯教程-Matplotlib - 图像(Images)
    Matplotlib软件包中的图像模块提供了加载,重新缩放和显示图像所需的功能。Pillow库支持加载图像数据,Matplotlib本机仅支持PNG图像,如果本机读取失败,则下面显示的命令将退回到Pillow上。本示例中使用的图像是PNG文件,但请记住您对自己的数据的Pillow要求。imread()函数用于读取f......