2018-08-21 16:53:44

matplotlib

Matplotlib 是 Python 的一个绘图库。 它包含了大量的工具,你可以使用这些工具创建各种图形,包括简单的散点图,正弦曲线,三维图形。

安装

pip install matplotlib

快速体验

import matplotlib.pyplot as plt
import numpy as np

## 产生0 到10之间100个等差数列
x = np.linspace(0, 10, 100)
## ^ 平方
y = x**2
plt.plot(x, y)
## 显示
plt.show()

alt

功能按钮

alt

  • Home 单击它可以返回原始视图, 在浏览图表之前单击此按钮将不会生效。

  • Forward/Back 像浏览器中的前进和后退按钮一样使用。 可以单击这些来移回到之前的位置,或再次前进。

  • Pan 点击之后可以拖拽图表。

  • Zoom 单击并拖动出要放大的方形区域。 放大需要左键单击并拖动。 你也可以右键单击并拖动来缩小。

  • Configure Subplots 此可以对图形和绘图配置各种间距选项。 alt
    wspace和hspace对应于绘制多个子图时,它们的水平或竖直间距。

  • Save 允许以各种形式保存图形。

图例、标题和标签

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-5, 5, 100)
y = np.sin(x)
y1 = np.cos(x)

# 直接画在一起
# plt.plot(x,y,x,y1)

# 中文乱码
# plt.xlabel("x轴")
# plt.ylabel("y轴")

plt.xlabel("x")
plt.ylabel("y")

plt.title('title')

plt.plot(x, y, label='sin')
plt.plot(x, y1, label='cos')
# 生成图例
plt.legend()
plt.show()

alt

条形图

import matplotlib.pyplot as plt

x=[1,3,5,7,9]
y=[1,2,3,5,4]

x1=[2,4,6,8,10]
y1=[5,4,3,1,2]

plt.bar(x,y)
plt.bar(x1,y1)
plt.show()

alt

直方图

直方图非常像条形图,倾向于通过将区段组合在一起来显示分布

import matplotlib.pyplot as plt
y = [23, 56,  63, 46,  22, 23, 35, 43,  43, 5, 100, 123, 131, 112, 116, 113, 81, 76,   66,  55]
print(y)
bins = [0, 50, 100, 150]
#plt.hist(y, 10, rwidth=0.8)
plt.hist(y, bins, rwidth=0.8)
plt.show()

alt

散点图

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-5, 5, 100)
y = np.sin(x)

plt.scatter(x,y,label='sin', color='b', s=3, marker="o")#颜色,大小,形状
plt.legend()
plt.show()

alt

展示图片

png

import matplotlib.pyplot as plt
import matplotlib.image as mpimg 

# 读取图片
lena = mpimg.imread('lena.png')
# 绘制图片
plt.imshow(lena)
# 关闭坐标轴
plt.axis('off')
plt.show()

本文链接:https://www.paishouba.com/post/python-matplotlib.html

-- EOF --

Comments