Python初学小知识(十二):Matplotlib

Python初学小知识(十二):Matplotlib,第1张

Python初学小知识(十二):Matplotlib

Python初学小知识(十二):Matplotlib
  • 十二、Matplotlib
    • 1. 线型图
    • 2. 颜色、标记形状、线型
    • 3. 标签、图例
    • 4. 子图
    • 5. 散点图
    • 6. 直方图
    • 7. 饼图

十二、Matplotlib

Matplotlib是Python的绘图库,具备强大的绘图功能,且能在很多平台上使用。

1. 线型图
import matplotlib.pyplot as plt  #习惯于将“import matplotlib”写成“import matplotlib.pyplot as plt”
import numpy as np
%matplotlib inline   
#直接显示 Matplotlib 绘制的图像

np.random.seed(42)
x = np.random.randn(30)  #生成30个随机参数(均值为0,方差为1的正态分布)
plt.plot(x, 'r--o')

[]

2. 颜色、标记形状、线型

用于设置线型图中线条颜色的常用参数如下:
(1)“b”:指定绘制的线条颜色为蓝色。
(2)“g”:指定绘制的线条颜色为绿色。
(3)“r”:指定绘制的线条颜色为红色。
(4)“c”:指定绘制的线条颜色为蓝绿色。
(5)“m”:指定绘制的线条颜色为洋红色。
(6)“y”:指定绘制的线条颜色为黄色。
(7)“k”:指定绘制的线条颜色为黑色。
(8)“w”:指定绘制的线条颜色为白色。

用于设置线型图中标记参数点形状的常用参数如下:
(1)“o”:指定标记实际点使用的形状为圆形。
(2)“”:指定标记实际点使用“”符号。
(3)“+”:指定标记实际点使用“+”符号。
(4)“x”:指定标记实际点使用“x”符号。

用于设置线型图中连接参数点线条形状的常用参数如下:
(1)“-”:指定线条形状为实线。
(2)“–”:指定线条形状为虚线。
(3)“-.”:指定线条形状为点实线。
(4)“:”:指定线条形状为点线。

import matplotlib.pyplot as plt 
import numpy as np
%matplotlib inline 

a = np.random.randn(30)
b = np.random.randn(30)
c = np.random.randn(30)
d = np.random.randn(30)
plt.plot(a, 'r--o', b, 'b-*', c, 'g-.+', d, 'm:x')  #此时没有使用随机种子,结果有差异性

[,
,
,
]

3. 标签、图例
import matplotlib.pyplot as plt 
import numpy as np
%matplotlib inline 

np.random.seed(42)
x = np.random.randn(30)
y = np.random.randn(30)

plt.title('Example')
plt.xlabel('X')
plt.ylabel('Y')
X, = plt.plot(x, 'r--o')
Y, = plt.plot(y, 'b-x')
plt.legend([X, Y], ['X_value', 'Y_value'])

4. 子图
import matplotlib.pyplot as plt 
import numpy as np
%matplotlib inline 

a = np.random.randn(30)
b = np.random.randn(30)
c = np.random.randn(30)
d = np.random.randn(30)

fig = plt.figure()
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)

A, = ax1.plot(a, 'r--o')
ax1.legend([A], ["A"])
B, = ax2.plot(b, 'b-*')
ax2.legend([B], ["B"])
C, = ax3.plot(c, 'g-.+')
ax3.legend([C], ["C"])
D, = ax4.plot(d, 'm:x')
ax4.legend([D], ["D"])

5. 散点图
import matplotlib.pyplot as plt 
import numpy as np
%matplotlib inline 

np.random.seed(42)
x = np.random.randn(30)
y = np.random.randn(30)

plt.scatter(x, y, c='g', marker='o', label='(X, Y)')  
plt.title("Example")
plt.xlabel('X_value')
plt.ylabel('Y_value')
plt.legend(loc=1)
plt.show()

上面的代码中:

  • c='g’指定颜色是绿色;
  • marker='o’指定参数点的形状是圆形;
  • label=’(X, Y)'指定在散点图中绘制的参数点使用的图例,与线型图中的图例不同;
  • plt.legend(loc=1)对图例的位置进行强制设定,loc=0、1、2、3、4分别代表强制设定在最好的位置、右上角、左上角、左下角、右下角的位置。
6. 直方图
import matplotlib.pyplot as plt 
import numpy as np
%matplotlib inline 

np.random.seed(42)
x = np.random.randn(1000)
plt.hist(x, bins=20, color='g')  #bins=20指定直方图有20条
plt.title("Example")
plt.xlabel('X_value')
plt.ylabel('Y_value')
plt.show()

7. 饼图
import matplotlib.pyplot as plt 

mylabels = ['Dogs', 'Cats', 'Birds']
sizes = [15, 50, 35]  #mylabels每部分对应的占比

plt.pie(sizes, explode=(0, 0, 0.1), labels=mylabels, autopct='%1.1f%%', startangle=90)
plt.axis('equal')

plt.show()

上面的代码中:

  • explode定义每部分数据系列之间的间隔,设置(0, 0, 0.1)就能突出第3部分;
  • autopct就是将sizes中的数据以所定义的浮点精度进行显示;
  • startangle 是绘制第 1 块饼图时该饼图与X轴正方向的夹角度数,这里设置为90,如果不设置就默认为0;
  • plt.axis(‘equal’)是必不可少的,用于使X轴和Y轴的刻度保持一致,只有这样,最后得到饼图才是圆形的。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5572037.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存