我们已经搞定了曲线的颜色、线型和标记点的自定义,下面我们继续设置绘图的图例和网格线。先看代码:
=(0,10,100)y=4+2*(2*x)y2=4+2*(2*x)fig,ax=()line1,line2=(x,y,x,y2)_label('sin')_color('b')_linewidth(3)_marker('*')_markersize(15)_markeredgecolor('r')_markerfacecolor('y')_label('cos')_color('39;)即可在输出中显示好看的公式。
Matplotlib的设置功能太强大了,大家自己多尝试一下。
网格线的设置Matplotlib的函数往往有非常多的默认设置,这使用我们只需要简单的自定义就能实现不错的功能。网格线的设置也是一样。我们只需要在代码中加入如下一句:
#再次提醒,所有的设置都应在()之前(True)
就会在绘图区域生成带网格的图像:
带网格线的绘图
grid()函数有一个参数axis,默认值为:'both',用于确定要增加网格线的坐标轴,默认情况下两个坐标轴都会加,也可以设置为:
(True,axis='y')
这样就只会在y轴上增加水平的网格线。也可以像绘制曲线那样设置网格线的颜色、线型、宽度等样式:
(True,axis='y',color='g',linestyle='-.',linewidth=1)
当然,我们还可以控制是在我们的主刻度上显示网格线还是次要刻度上显示网格线,亦或者两种刻度上都设置网格线。
(True,which='major')
更多关于网格线的设置方法,可以查看官方的API文档。
使用样式Matplotlib提供了关于曲线、标记点、图例和网格等的丰富的设置功能,但正因为其丰富的功能,可能就会让自定义的工作相对较多,有时候也会让人觉得有些烦琐。这种情况下,我们也可以适当地偷偷懒,使用Matplotlib内置的样式来绘制我们的图形。比如,在代码的最开始部分,我们增加这样一句:
我们删除所有对绘图的自定义,还可以看到如下的图像。
使用样式设置图像
这比我们没有使用样式时可能更加好看一些,在已有一定样式的基础之上,再结合我们自定义的一些设置,相信大家都绘制出满意的图形。要查看Matplotlib都支持哪些内置样式,可以使用以下语句:
print()
你可能会得到下面的输出,用列表中的字符串替代('ggplot')代码中的'ggplot',看看有没有你心仪的样式。试试看,向你的小伙伴炫一炫。
['Solarize_Light2','_classic_test_patch','_mpl-gallery','_mpl-gallery-nogrid','bmh','classic','dark_background','fast','fivethirtyeight','ggplot','grayscale','seaborn','seaborn-bright','seaborn-colorblind','seaborn-dark','seaborn-dark-palette','seaborn-darkgrid','seaborn-deep','seaborn-muted','seaborn-notebook','seaborn-paper','seaborn-pastel','seaborn-poster','seaborn-talk','seaborn-ticks','seaborn-white','seaborn-whitegrid','tableau-colorblind10']