Kop*_*ogy 17 matplotlib seaborn loglog
我正在尝试使用seaborn JointGrid对象创建一个带有KDE和与每个轴相关联的直方图的loglog图.这让我非常接近,但直方图箱不能很好地转换为logspace.有没有办法在不重新创建边缘轴的情况下轻松完成这项工作?
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
data = sns.load_dataset('tips')
g = sns.JointGrid('total_bill', 'tip', data)
g.plot_marginals(sns.distplot, hist=True, kde=True, color='blue')
g.plot_joint(plt.scatter, color='black', edgecolor='black')
ax = g.ax_joint
ax.set_xscale('log')
ax.set_yscale('log')
g.ax_marg_x.set_xscale('log')
g.ax_marg_y.set_yscale('log')
Run Code Online (Sandbox Code Playgroud)

小智 15
对于日志直方图,我发现通常用于设置自己的箱子np.logspace().
mybins=np.logspace(0,np.log(100),100)
Run Code Online (Sandbox Code Playgroud)
然后就bins=进去吧_marginals
data = sns.load_dataset('tips')
g = sns.JointGrid('total_bill', 'tip', data,xlim=[1,100],ylim=[0.01,100])
g.plot_marginals(sns.distplot, hist=True, kde=True, color='blue',bins=mybins)
g.plot_joint(plt.scatter, color='black', edgecolor='black')
ax = g.ax_joint
ax.set_xscale('log')
ax.set_yscale('log')
g.ax_marg_x.set_xscale('log')
g.ax_marg_y.set_yscale('log')
Run Code Online (Sandbox Code Playgroud)

| 归档时间: |
|
| 查看次数: |
7658 次 |
| 最近记录: |