Python Matplotlib打印设置

Python Matplotlib打印设置,python,matplotlib,Python,Matplotlib,我已经使用pyplot/MatplotLib为我绘制了一组数据,但是,我使用了相当多的代码行来完成这项工作: fig1,axes1 = plt.subplots(figsize = (12,8)) axes1.set_title(label='Stress vs Strain', fontsize=30, weight='bold', va = 'bottom') axes1.set_xlabel(xlabel='Strain', fontsize=24, va = 'top') axes1.s

我已经使用pyplot/MatplotLib为我绘制了一组数据,但是,我使用了相当多的代码行来完成这项工作:

fig1,axes1 = plt.subplots(figsize = (12,8))
axes1.set_title(label='Stress vs Strain', fontsize=30, weight='bold', va = 'bottom')
axes1.set_xlabel(xlabel='Strain', fontsize=24, va = 'top')
axes1.set_ylabel(ylabel='Stress (Pa)', fontsize=24)
axes1.ticklabel_format(style='sci',scilimits=(0,0), axis='y')
axes1.tick_params(labelsize=24, pad=10)
axes1.xaxis.offsetText.set_fontsize(20)
axes1.yaxis.offsetText.set_fontsize(20)
是否有更简洁的方法来设置上述属性等


谢谢您的帮助。

您可以将所有绘图格式封装在一个函数中,并在每次需要绘图时调用该函数,这样,如果您有很多图形,就不必重复代码。下面是一个非常简单的例子:

import matplotlib.pyplot as plt

def format_plot(ax, xlabel, ylabel, title):
    ax.set_title(title)
    ax.set_xlabel(xlabel)
    ax.set_ylabel(ylabel)

fig1, axes1 = plt.subplots(figsize = (12, 8))
format_plot(axes1, "some x label", "some y label", "a title")

plt.show()
您可以将此与设置一些参数结合起来,这些参数将在整个脚本中保持不变:

import matplotlib
matplotlib.rcParams['xtick.labelsize'] = 24

您可以使用预设部分(但不是全部)提到的属性。除此之外,代码看起来还不错。感谢@ImportanceOfBeingErnest,我将按照DavidG的建议将rcparams和函数结合起来。请注意,您在这里使用的示例过于简化,因为这种特殊情况可以在一行
ax.set(title=“a title”,xlabel=“some x label”,ylabel=“some y y label”)中轻松实现
无需任何额外功能。