如何使用matplotlib绘制x和y线?

时间:2018-04-04 06:34:46

标签: python matplotlib plot

如何绘制x与y线?通过x对y,我的意思是如果x和y轴已经固定,如何绘制x与y线的关系,就像这条线的轴是相反的一样。

更新 有人问我为什么不反转参数和轴标签。这是我的理由:这个x vs y线只是2D图(主图)的一部分,主轴是2D图。更重要的是,在同一个2D图中也有y对x线。我这样做是因为我想清楚地表明某一行。

更新 这是我想要的一个例子: what I want

我想绘制我手动绘制的图中的黑线(实际上我想绘制高斯曲线)。这是时间与电压。我仍然想保留现有的蓝线,我不应该反转时间/电压标签。

1 个答案:

答案 0 :(得分:0)

您可以在matplotlib的同一子图中轻松绘制多条曲线。作为示例,请参阅此带注释的代码:

import matplotlib.pyplot as plt
import numpy as np

# Data for plotting
t = np.arange(0.0, 2.0, 0.01)
s = 1 + np.sin(2 * np.pi * t)

# Note that using plt.subplots below is equivalent to using
# fig = plt.figure() and then ax = fig.add_subplot(111)
fig, ax = plt.subplots()
#plot sine wave
ax.plot(t, s, label = "sine wave")

#now create y values for the second plot
y = np.linspace(0, 2, 1000)
#calculate the values for the Gaussian curve
x = 2 * np.exp(-0.5 * np.square(-4 * (y - 1)))
#plot the Gaussian curve
ax.plot(x, y, label = "Gaussian curve")

ax.set(xlabel='time (s)', ylabel='voltage (mV)',
       title='About as simple as it gets, folks')
ax.grid()

#show the legend
plt.legend()
plt.show()

输出:

enter image description here