Matplotlib 网格线

绘制添加网格线

应用 Pyplot 库, 您可以使用 grid() 函数在绘制时添加网格线。

实例

绘制时添加网格线:

  1. import sys
  2. import matplotlib
  3. matplotlib.use('Agg')
  4. import numpy as np
  5. import matplotlib.pyplot as plt
  6. x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
  7. y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])
  8. plt.title("Sports Watch Data")
  9. plt.xlabel("Average Pulse")
  10. plt.ylabel("Calorie Burnage")
  11. plt.plot(x, y)
  12. plt.grid()
  13. plt.show()
  14. plt.savefig(sys.stdout.buffer)
  15. sys.stdout.flush()
结果:


指定要显示的网格线

您可以在grid() 函数使用 axis 参数来指定那一条网格线可以显示。

参数可设置的值有: ‘x’, ‘y’, 和 ‘both’. 默认值是 ‘both’.

实例

只显示 x 轴的网格线:

  1. #Three lines to make our compiler able to draw:
  2. import sys
  3. import matplotlib
  4. matplotlib.use('Agg')
  5. import numpy as np
  6. import matplotlib.pyplot as plt
  7. x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
  8. y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])
  9. plt.title("Sports Watch Data")
  10. plt.xlabel("Average Pulse")
  11. plt.ylabel("Calorie Burnage")
  12. plt.plot(x, y)
  13. plt.grid(axis = 'x')
  14. plt.show()
  15. #Two lines to make our compiler able to draw:
  16. plt.savefig(sys.stdout.buffer)
  17. sys.stdout.flush()
结果:

实例

只显示 y 轴的网格线:

  1. import sys
  2. import matplotlib
  3. matplotlib.use('Agg')
  4. import numpy as np
  5. import matplotlib.pyplot as plt
  6. x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
  7. y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])
  8. plt.title("Sports Watch Data")
  9. plt.xlabel("Average Pulse")
  10. plt.ylabel("Calorie Burnage")
  11. plt.plot(x, y)
  12. plt.grid(axis = 'y')
  13. plt.show()
  14. plt.savefig(sys.stdout.buffer)
  15. sys.stdout.flush()
结果:


为 Grid 设置线属性

您也可以设置网格的线的属性, 比如这样: grid(color = 'color', linestyle = 'linestyle', linewidth = number)。

实例

设置网格线的属性:

  1. import sys
  2. import matplotlib
  3. matplotlib.use('Agg')
  4. import numpy as np
  5. import matplotlib.pyplot as plt
  6. x = np.array([80, 85, 90, 95, 100, 105, 110, 115, 120, 125])
  7. y = np.array([240, 250, 260, 270, 280, 290, 300, 310, 320, 330])
  8. plt.title("Sports Watch Data")
  9. plt.xlabel("Average Pulse")
  10. plt.ylabel("Calorie Burnage")
  11. plt.plot(x, y)
  12. plt.grid(color = 'green', linestyle = '--', linewidth = 0.5)
  13. plt.show()
  14. #Two lines to make our compiler able to draw:
  15. plt.savefig(sys.stdout.buffer)
  16. sys.stdout.flush()
结果: