擅长:python、mysql、java
<p>您可以在函数中放置<code>if</code>条件。您可以将<code>pos2</code>的默认值设置为<code>None</code>。因此,如果需要<code>:</code>,则在调用<code>diagram</code>时不传递任何值。然后检查函数内部是否为<code>pos2</code>传递了任何值。如果不是,则使用<code>:</code>,否则使用传递的值</p>
<p>下面是修改后的函数。我没有你的数据,但可以用</p>
<hr/>
<pre><code>def diagram(y, y2, yachse, titel, pos1, pos2=None):
if not pos2:
ax = fig.add_subplot(gs[pos1, :])
else:
ax = fig.add_subplot(gs[pos1, pos2])
ax.plot(zeit, y, "go", markersize = 2.5)
ax.plot(zeit, y2, "ro", markersize = 2.5)
ax.autoscale(enable = False, axis = "both", tight = None)
ax.grid(True)
ax.set_title(titel)
plt.gcf().canvas.set_window_title("Diagramme")
diagram(strecke, strecke2, "Strecke in Metern/s", "S(t) Diagramm", 0) # < No pos2
diagram(geschwindigkeit, geschwindigkeit2, "Geschwindigkeit in Metern/s", "V(t) Diagramm", 1, 0)
diagram(beschleunigung, beschleunigung2, "Beschleunigung in Metern/s^2", "a(t) Diagramm", 1, 1 )
plt.show()
</code></pre>