我想用seaborn將點圖和箱線組合成一個地塊。該組合本身起作用,但由於兩個數據幀的x軸值不在相同的範圍內,所以我得到錯誤的輸出(第二個數據幀的x值將被忽略)。 這裏是我的數據集的部分:Python:將兩個不同的地塊組合在一個地塊中,但不同的x值範圍
import pandas as pd
bpdata=pd.DataFrame({'Ldate': [20150202, 20150202, 20150202, 20151117, 20151117, 20151117, 20160205, 20160205, 20160205], 'Lreflectance': [0.067, 0.0482, 0.0555, 0.099, 0.0956, 0.0931, 0.0757, 0.0663, 0.0566]})
Mplotdata=pd.DataFrame({'Mdate':[20150202, 20150407,20160202], 'Mreflectance': [0.0868, 0.0833,0.0719]})
Plottet獨立:
import seaborn as sns
plot=sns.pointplot(data=Mplotdata, x='Mdate', y='Mreflectance', color='dimgrey', marker='o')
for item in plot.get_xticklabels():
item.set_rotation(45)
plot=sns.boxplot(data=bpdata, x='Ldate', y='Lreflectance', color='lightgray')
for item in plot.get_xticklabels():
item.set_rotation(45)
是這樣的: pointplot (left) and boxplot (right)
但是,當我試圖把兩者pointplot和箱線圖成一個情節
plot=sns.boxplot(data=bpdata, x='Ldate', y='Lreflectance', color='lightgray')
plot=sns.pointplot(data=Mplotdata, x='Mdate', y='Mreflectance', color='dimgrey', marker='o')
for item in plot.get_xticklabels():
item.set_rotation(45)
它看起來像這樣:
在此圖中,x軸僅顯示第一個圖的值。如果我改變pointplot和boxplot的順序,它也將使用第一個數據幀的x值,第二個將被忽略。
任何想法如何解決這個問題?
我在這個論壇,谷歌或matplotlib/seaborn文檔中還沒有找到任何解決方案。 @JürgMerlinSpaak
你可以包括([編輯])一些最小的數據集,重現問題?請求調試幫助時請查看[mcve]。 – MSeifert
謝謝@MSeifert,完成了。 – kimjanas
目前還不清楚你希望看到哪些值在劇情中。此外,您顯示的圖像似乎不符合數據。請記住,你在這裏交談的人可能是數據分析和Python繪圖專家,但他們不知道你的特殊問題,所以你需要向他們解釋。 – ImportanceOfBeingErnest