ves*_*and 16 python plot matplotlib seaborn
使用seaborn.pydata.org和Python DataScience手册中的示例,我可以使用以下代码段生成组合分布图:
码:
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
# some settings
sns.set_style("darkgrid")
# Create some data
data = np.random.multivariate_normal([0, 0], [[5, 2], [2, 2]], size=2000)
data = pd.DataFrame(data, columns=['x', 'y'])
# Combined distributionplot
sns.distplot(data['x'])
sns.distplot(data['y'])
Run Code Online (Sandbox Code Playgroud)
如何将此设置与垂直线组合,以便我可以说明这样的阈值:
我知道我可以用matplotlib这样做动态直方图子图用线标记目标,但我真的很喜欢seaborn情节的简单性,并且真的想知道是否可以更优雅地做到这一点.(是的,我知道seaborn建立在顶级matplotlib上)
谢谢你的任何建议!
She*_*ore 23
只是用
plt.axvline(2.8, 0,0.17)
Run Code Online (Sandbox Code Playgroud)
对于另一条线也一样
在这里,您可以使用某些变量(例如maxx = max(data)
类似的东西)来代替0.17,而不是0.17 .2.8是x轴上的位置.哦,请记住,y值必须介于0和1之间,其中1是曲线的顶部.您可以相应地重新调整您的值.另一个明显的选择很简单
plt.plot([2.8, 2.8], [0, max(data)])
Run Code Online (Sandbox Code Playgroud)