亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將來自不同列的標記添加到 seaborn pandas barplot

如何將來自不同列的標記添加到 seaborn pandas barplot

繁花不似錦 2022-12-20 12:10:35
我有以下數據集、代碼和繪圖:import matplotlib.pyplot as pltimport seaborn as snsimport pandas as pddata = [['tom', 10,15], ['matt', 13,10]]df3 = pd.DataFrame(data, columns = ['Name', 'Attempts','L4AverageAttempts']) f,ax = plt.subplots(nrows=1,figsize=(16,9))sns.barplot(x='Attempts',y='Name',data=df3)plt.show()如何獲得某些描述(點、*、形狀等)的標記以顯示tom平均為 15(因此低于他的平均水平)并且 matt平均為 10 所以高于平均水平。因此,一個標記會根據L4AverageAttempts每個人的價值來計算。我已經調查過了axvline,但這似乎只是一個固定數字,而不是每個 y 軸類別的特定值。任何幫助將非常感激!謝謝!
查看完整描述

1 回答

?
溫溫醬

TA貢獻1752條經驗 獲得超4個贊

L4AverageAttempts您可以使用x 值在條形圖的頂部簡單地繪制散點圖:


您可以為此使用seaborn.scatterplot。確保設置zorder參數,使標記出現在條形圖的頂部。


import seaborn as sns

import pandas as pd

data = [['tom', 10,15], ['matt', 13,10]]


df3 = pd.DataFrame(data, columns = ['Name', 'Attempts','L4AverageAttempts'])


f,ax = plt.subplots(nrows=1,figsize=(16,9))

sns.barplot(x='Attempts',y='Name',data=df3)


sns.scatterplot(x='L4AverageAttempts', y="Name", data=df3, zorder=10, color='k', edgecolor='k')


plt.show()

http://img1.sycdn.imooc.com//63a135e80001012511070693.jpg

查看完整回答
反對 回復 2022-12-20
  • 1 回答
  • 0 關注
  • 97 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號