Python Matplotlib工作流

Python Matplotlib工作流,python,pandas,matplotlib,plot,Python,Pandas,Matplotlib,Plot,我正在做一个学校项目,我正在使用matplotlib绘制我的所有绘图,但我发现复制第一个绘图,然后更改变量名称以添加其他绘图(子绘图)是非常乏味的 你可以在这个链接上看到我是如何做到这一点的: 非常感谢您对如何改进我的工作流程的反馈。请考虑将绘图机制隔离到它们自己的函数中,这样您就可以为每个变量创建一个调用该函数的for循环。下面是一个示例(我只复制了两个参数列表,但您可以看到如何添加其余的参数列表) 写这篇文章的方法有很多,但重要的是将建模和绘图与各个参数分开,这样就可以根据需要添加任意参数

我正在做一个学校项目,我正在使用matplotlib绘制我的所有绘图,但我发现复制第一个绘图,然后更改变量名称以添加其他绘图(子绘图)是非常乏味的

你可以在这个链接上看到我是如何做到这一点的:


非常感谢您对如何改进我的工作流程的反馈。

请考虑将绘图机制隔离到它们自己的函数中,这样您就可以为每个变量创建一个调用该函数的
for
循环。下面是一个示例(我只复制了两个参数列表,但您可以看到如何添加其余的参数列表)


写这篇文章的方法有很多,但重要的是将建模和绘图与各个参数分开,这样就可以根据需要添加任意参数。

考虑将绘图机制隔离到它们自己的功能中,因此,您可以为创建一个循环,为每个变量调用该函数。下面是一个示例(我只复制了两个参数列表,但您可以看到如何添加其余的参数列表)


写这篇文章的方法有很多,但重要的是将建模和绘图与单个参数分开,这样就可以根据需要添加任意参数。

如果这样做,可以调用绘图函数&只需将要绘图的轴发送给它(使用.reshpae(-1)允许您展平轴)和要打印的变量列表。您还可以向其发送其他参数列表,如颜色或字幕

def Plotter(axes,Yvars,Colors,x):
for ax, yvar, c in zip(axes,Yvars,Colors):
    ax.plot(x,yvar,color = c)

fig, axes = plt.subplots(nrows=3, ncols= 2, figsize=(10,10))

Yvars = [y1,y2,y3,y4,y5]
Colors = ['b','b','g','g','r']
ax_to_plot = axes.reshape(-1)[0:5]
Plotter(ax_to_plot,Yvars,Colors,x)
plt.tight_layout()

如果执行类似操作,可以调用plotting函数&只需将要打印的轴(使用.reshpae(-1)可以展平轴)和要打印的变量列表发送给它即可。您还可以向其发送其他参数列表,如颜色或字幕

def Plotter(axes,Yvars,Colors,x):
for ax, yvar, c in zip(axes,Yvars,Colors):
    ax.plot(x,yvar,color = c)

fig, axes = plt.subplots(nrows=3, ncols= 2, figsize=(10,10))

Yvars = [y1,y2,y3,y4,y5]
Colors = ['b','b','g','g','r']
ax_to_plot = axes.reshape(-1)[0:5]
Plotter(ax_to_plot,Yvars,Colors,x)
plt.tight_layout()

既然他们都回答了你的问题,你应该考虑把这些答案中的一个标记为“接受”。你应该考虑把这些答案中的一个当作是被接受的,因为他们都回答了你的问题。