私は、バス停などの2つのポイント間の関係を示すデータセットを扱っています。たとえば、バス停A、B、C、Dがあります。python - seaborn:共有Xラベルが正常に動作しない
ヒストグラムプロットを作成して、バス停ごとに3つのバス停に行くまでの所要時間を示します。
明らかに、AからAまでの時間はないので、空白にする必要があります。
プロットすると、最初の行がB C Dを示し、2番目の行がA、C、Dなどを示していることがわかります。列の位置がずれるため、色が各行の同じ列を表しません。
sharex = Trueを追加すると、各軸のxラベルが削除されます。それは明らかに私がここで見たいものではありません。
私はA、B、C、Dの順に4つの列を見るのが好きです。AからAのときは空白にし、色は一貫していなければなりません。
誰でもこれを達成する方法を知っていますか?文字列のリスト、
でカテゴリレベルをプロットする 注文オプション、それ以外のレベル:
import pandas as pd
import numpy as np
import seaborn as sns
%matplotlib inline
time=np.random.randn(1000)
point1 = ['A','B','C','D'] * 250
point2 = ['A'] * 250 + ['B'] * 250 + ['C'] * 250 + ['D'] * 250
df_time = pd.DataFrame(
{'point1': point1,
'point2': point2,
'time': time
})
df_time=df_time[df_time['point1']!=df_time['point2']] ##cannot sell to another
fig, ax = plt.subplots(nrows=4, sharey=True)
fig.set_size_inches(12, 16)
for point1i, axi in zip(point1, ax.ravel()):
sns.boxplot(data=df_time[df_time['point1']==point1i], x='point2', y='time', ax=axi)
the documentationから分かるように