如何在seaborn tsplot情节上翻转轴?

时间:2017-03-09 16:18:46

标签: python matplotlib plot graphics seaborn

我拥有与这些测量相关的各种测量和深度的数据。我能够将阴影误差范围的数据绘制为y轴,将深度绘制为x轴。但是,我希望带有误差界限的数据位于x轴和y上的深度。有没有办法告诉tsplot使用数据参数作为x轴和深度作为y或翻转轴?基本上我想转这个

enter image description here

进入这个

enter image description here

如果您只是在matplotlib中转换数组,那么所有正确的轴格式化都会如此。

1 个答案:

答案 0 :(得分:2)

tsplot需要水平轴上的时间。因此,它不能直接转换它。但是,我们可以从水平图中获取相应的数据,并使用它从相同的数据生成垂直图。

enter image description here

import numpy as np; np.random.seed(22)
import seaborn as sns
import matplotlib.pyplot as plt

X = np.linspace(0, 15, 31)
data = np.sin(X) + np.random.rand(10, 31) + np.random.randn(10, 1)

plt.figure(figsize=(4,6))
ax = sns.tsplot(time=X, data=data)
#get the line and the shape from the tsplot
x,y =ax.lines[0].get_data()
c = ax.collections[0].get_paths()[0].vertices
# discart the tsplot
ax.clear()

# create new plot on the axes, inverting x and y
ax.fill_between(c[:,1], c[:,0], alpha=0.5)
ax.plot(y,x)

plt.show()