Python绘图库Matplotlib.pyplot之网格线设置(plt.grid())

您所在的位置:网站首页 横线图画 Python绘图库Matplotlib.pyplot之网格线设置(plt.grid())

Python绘图库Matplotlib.pyplot之网格线设置(plt.grid())

2024-01-21 13:41| 来源: 网络整理| 查看: 265

很多时候为了可视化效果的美观,就不得不从细节上下手,这里我们就介绍一下这些细节之一的网格线。

首先导入需要用到的库,matplotlib.pyplot是必须的,Numpy是为了生成画布用的。

import numpy as np import matplotlib.pyplot as plt

生成网格

plt.gcf().set_facecolor(np.ones(3)* 240 / 255) # 生成画布的大小 plt.grid() # 生成网格 plt.show()

参数

matplotlin.pyplot.grid(b, which, axis, color, linestyle, linewidth, **kwargs)

grid()参数有很多,这里只列举了我此次工作中用到的几个:

    b : 布尔值。就是是否显示网格线的意思。官网说如果b设置为None, 且kwargs长度为0,则切换网格状态。但是没弄明白什            么意思。如果b设置为None,但是又给了其它参数,则默认None值失效。

    which : 取值为'major', 'minor', 'both'。 默认为'major'。看别人说是显示的,我的是Windows7下,用Sublime跑的,minor只是一个白画板,没有网格,major和both也没看出什么效果,不知道为什么。

    axis : 取值为‘both’, ‘x’,‘y’。就是以什么轴为刻度生成网格。例如我输入参数x就会在x轴方向上生成纵向的网格刻度。没有输入的方向则不会显示网格刻度。这里多谢 @湖尘 指正。

    color : 这就不用多说了,就是设置网格线的颜色。或者直接用c来代替color也可以。

    linestyle :也可以用ls来代替linestyle, 设置网格线的风格,是连续实线,虚线或者其它不同的线条。 | '-' | '--'                        | '-.' | ':' | 'None' | ' ' | '']

    linewidth : 设置网格线的宽度

设置axis='y'

plt.grid(axis="y") plt.show()

 

设置axis='x'

 

设置color='r'

plt.grid(c='r') plt.show()

红色

plt.grid(c='g') plt.show()

绿色

设置linestyle

plt.grid(linestyle='-.') plt.show()

 

 

 

plt.grid(ls='--') plt.show()

因为b和which没有显示效果。所以这里就不上图了。

 

--------------------------更******新--------------------------

今天又试了下,当which='major'的时候,是可以显示网格线的。同时感谢机器不学习o_o的指导,在which="minor"时,需要设置次刻度线。

plt.grid(axis='y', which='major') plt.show()

plt.grid(axis="x", which="major") plt.show()

which='minor'

ax = plt.gca() ax.set_xlim(0, 10) miloc = plt.MultipleLocator(1) ax.xaxis.set_minor_locator(miloc) ax.grid(axis='x', which='minor') plt.show()



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3