春江暮客

春江暮客的个人学习分享网站

python画横线竖线作为分界线

2019-01-07 杂谈

在作图的时候,经常会碰到需要添加分界线的情况,那么python里面那些函数可以方便的画出水平横线或者垂直竖线呢,下面介绍两种可以方便的添加水平或者垂直直线的函数。

1.使用matplotlib.pyplot的hlines和vlines

    ######导入需要模块
    import numpy as np
    import matplotlib.pyplot as plt
    ######这是蝴蝶曲线部分
    t = np.arange(0.0, 12*np.pi, 0.01)
    x = np.sin(t)*(np.e**np.cos(t) - 2*np.cos(4*t)-np.sin(t/12)**5)
    y = np.cos(t)*(np.e**np.cos(t) - 2*np.cos(4*t)-np.sin(t/12)**5)
    plt.figure(figsize=(8,6))

    plt.plot(x,y,color='blue',linewidth = '3')
    #######这是分割线部分
    plt.hlines(0, -3, 3,color="red")#横线
    plt.vlines(0, -2, 3,color="red")#竖线

《python画横线竖线作为分界线》

matplotlib.pyplot.hlines(y, xmin, xmax)表示横线,参数(y的值,横线开始横坐标,横线结束横坐标)

matplotlib.pyplot.vlines(x, ymin, ymax)表示竖线,参数(x的值,竖线开始纵坐标,竖线结束纵坐标)

2.使用matplotlib.pyplot的axhline和axvline

    ######导入模块
    import numpy as np
    import matplotlib.pyplot as plt
    ######这是蝴蝶曲线部分
    t = np.arange(0.0, 12*np.pi, 0.01)
    x = np.sin(t)*(np.e**np.cos(t) - 2*np.cos(4*t)-np.sin(t/12)**5)
    y = np.cos(t)*(np.e**np.cos(t) - 2*np.cos(4*t)-np.sin(t/12)**5)
    plt.figure(figsize=(8,6))

    plt.plot(x,y,color='blue',linewidth = '3')
    #######这是分割线部分
    plt.axhline(0, color="red")#横线
    plt.axvline(0, color="red")#竖线

《python画横线竖线作为分界线》

matplotlib.pyplot.axhline(y)表示横线,默认横跨当前坐标轴宽度。

matplotlib.pyplot.axvline(x)表示竖线,默认纵跨当前坐标轴高度。

总结

hlinesaxhline 都能画横线,但适用场景不同:前者更适合你明确指定线段起止范围,后者更适合画贯穿整个坐标区域的参考线。

同理,vlines 用来画指定长度的竖线,axvline 更适合画整张图的垂直参考线。

请根据需要选用不同的matplotlib.pyplot函数。

友情链接

其它