我的问题很简单:我想使用Seaborn模块可视化多个直方图,然而,由于许多条柱包含非常少的计数,我想使用对数刻度来可视化垂直轴。
到目前为止,我的代码如下:
更新二:以下代码解决了我的问题:
到目前为止,我的代码如下:
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.DataFrame(np.random.rand(100,2), columns=['A','B'])
df = pd.melt(df, var_name='Category')
g = sns.FacetGrid(df, col='Category', sharex=True, sharey=False, aspect=1.5)
g = g.map(plt.hist, "value", color="r")
如何以最“Pythonic”/“Seabornic”的方式将垂直轴更改为对数比例?我在各种答案中查找,但迄今为止都不满意。
更新: 按照这里的答案添加以下代码会使我的条形图消失:
g.fig.get_axes()[0].set_yscale('log')
更新二:以下代码解决了我的问题:
df = pd.DataFrame(np.random.rand(100,2), columns=['A','B'])
df = pd.melt(df, var_name='Category')
g = sns.FacetGrid(df, col='Category', sharex=True, sharey=False, aspect=1.5)
g = g.map(plt.hist, "value", color="r", log=True)