Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么尽管在函数中生成,但打印标签仍在更改?_Python_Matplotlib - Fatal编程技术网

Python 为什么尽管在函数中生成,但打印标签仍在更改?

Python 为什么尽管在函数中生成,但打印标签仍在更改?,python,matplotlib,Python,Matplotlib,我有一些生成绘图的代码,并将绘图保存为当前目录中的.png文件。出于某种原因,生成的一个打印包含适合打印面板的文本,而第二个打印(由相同代码生成)实际上放大了轴文本标签。有人能解释这种行为吗 将熊猫作为pd导入 将matplotlib.pyplot作为plt导入 导入glob 导入操作系统 def get_基本名称(fp): “获取文件路径的基本名称,以便/PATH/TO/FILE.csv返回文件” 返回os.path.splitext(os.path.basename(fp))[0] def

我有一些生成绘图的代码,并将绘图保存为当前目录中的
.png
文件。出于某种原因,生成的一个打印包含适合打印面板的文本,而第二个打印(由相同代码生成)实际上放大了轴文本标签。有人能解释这种行为吗

将熊猫作为pd导入
将matplotlib.pyplot作为plt导入
导入glob
导入操作系统
def get_基本名称(fp):
“获取文件路径的基本名称,以便/PATH/TO/FILE.csv返回文件”
返回os.path.splitext(os.path.basename(fp))[0]
def get_模型_类型(fp,前缀):
“”“所有文件都表示“线性”或“四元”模型。
例如,所有文件都是线性文件或四元文件,
此函数将根据所需前缀“”筛选列表中的
返回筛选器(lambda x:get_basename(x).startswith(前缀),文件路径)
def读取分配(fp,列名称):
“”“此函数将从输入文件路径读取csv并分配
特定模型的唯一列标识符。这很重要
在打印数据“”时
返回pd.read\U csv(fp.assign)(模型id=列名称)
def PRODUCT_绘图(df,绘图名称):
颜色标签=df['model\u id'].unique()
颜色=黑色、红色、青色、棕色、紫色
color\u map=dict(zip(彩色标签、彩色pal))
分组用户识别码=df.groupby('model用户识别码')
对于密钥,分组sim卡中的组:
plt.绘图(组['平均燃料],组['平均条件],
标签=键,颜色=颜色(映射[键])
plt.ylabel('导热系数',fontsize=20)
plt.xlabel(“温度(K)”,fontsize=20)
plt.图例(loc=“左上”,prop=dict(weight='bold'))
plt.grid(b=True,其中=“主”,axis=“两个”,linestyle=“-”)
plt.rc('xtick',标签大小=15)
plt.rc('ytick',标签大小=15)
plt.savefig(绘图名称)
plt.close()
工作目录=os.path.abspath('.'))
file_path=glob.glob(os.path.join(working_dir,*_out.csv'))
线性文件=获取模型类型(文件路径“线性”)
线性\u模型\u ID=[为线性\u文件中的文件获取\u基本名称(文件)]
四元文件=获取模型类型(文件路径“四元”)
quad_model_ids=[为quad_文件中的文件获取\u basename(文件)]
原始线性数据=pd.concat(映射(读取分配、线性文件、线性模型ID))
原始四元数据=pd.concat(映射(读取分配、四元文件、四元模型ID))
生成绘图(原始线性数据,“线性温度条件png”)
生成绘图(原始四元数据,“四元温度条件png”)


在创建轴后设置rc参数。因此,它们将不适用于该轴,而仅适用于下一个轴

确保在创建轴之前设置应用于轴的参数

plt.rc('xtick', labelsize=15)
plt.rc('ytick', labelsize=15)
#only after that call...
plt.plot(...)

您是否尝试过在函数中的循环之前添加plt.figure()?只是为了确保你从干净的内存开始?只是猜测