📜  Matplotlib-网格(1)

📅  最后修改于: 2023-12-03 14:44:13.055000             🧑  作者: Mango

Matplotlib-网格

Matplotlib是一个用于绘制高质量图表的Python库。网格是Matplotlib中用于帮助调整图形位置和大小,描述数据点的边界以及网格线是否可见的一种工具。

网格的基本功能

Matplotlib中绘制网格的函数是plt.grid(), 它有以下两个参数:

  • which: 提供可选的值:major, minor,或both

    • major:用于绘制主要刻度线的网格线。
    • minor:用于绘制次要刻度线的网格线。
    • both: 将包含两者的网格线。
  • axis: 提供可选的值:x, yboth

    • x: 用于显示x轴网格线。
    • y: 用于显示y轴网格线。
    • both: 将包含两者的网格线。
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10, 10, 500)
y = np.sin(x)

fig, ax = plt.subplots()

ax.plot(x, y)

# 显示x轴和y轴的主要刻度线网格线
ax.grid(which='major', axis='both')

plt.show()

grid1.png

定制网格线

Matplotlib中的网格线可以定制线型、颜色、宽度等属性。以下是plt.grid()支持的一些关键字参数:

  • linewidth: 确定网格线的线宽程度,如linewidth=2

  • color: 确定网格线的颜色,如color='red'

  • linestyle: 确定网格线的样式,如linestyle='dashed'

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10, 10, 500)
y = np.sin(x)

fig, ax = plt.subplots()

ax.plot(x, y)

# 显示x轴和y轴的主要刻度线网格线,线宽为1,红色,虚线
ax.grid(which='major', axis='both', linewidth=1, color='red', linestyle='dashed')

plt.show()

grid2.png

仅显示次要网格线

对于绘图中需要更多细节的情况,可以使用which='minor'参数来绘制次要网格线。然后,可以使用linestylelinewidthcolor等关键字参数自定义次要网格线的外观。

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10, 10, 500)
y = np.sin(x)

fig, ax = plt.subplots()

ax.plot(x, y)

# 仅显示次要y轴刻度线网格线,线宽为0.5,灰色,点线
ax.grid(which='minor', axis='y', linewidth=0.5, color='gray', linestyle='dotted')

plt.show()

grid3.png

去掉网格线

如果不需要网格线,可以使用plt.grid(False)ax.grid(False)来将网格线关闭。

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10, 10, 500)
y = np.sin(x)

fig, ax = plt.subplots()

ax.plot(x, y)

# 关闭网格线
ax.grid(False)

plt.show()

grid4.png

以上就是关于Matplotlib中使用网格的简单介绍。通过自定义网格线的外观和位置,可以更清晰地表达数据的趋势和模式。