第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

seaborn countplot 不顯示所有類別

seaborn countplot 不顯示所有類別

寶慕林4294392 2022-07-05 19:24:57
我正在嘗試使用 countplot 在堆積條形圖中繪制子類別。我遇到的問題是堆積條沒有顯示所有類別import seaborn as snsfrom matplotlib import pyplotflatui = ["#9b59b6", "#3498db", "#95a5a6", "#e74c3c", "#34495e", "#2ecc71"]fig, ax = pyplot.subplots(figsize=(20,15))g = sns.countplot(ax=ax,            y="LV1",            hue="LV2",            palette=sns.color_palette("hls", 8) + sns.color_palette("Paired") + sns.color_palette(flatui),            dodge=False,            data=plot_data);g.legend(loc='center left', bbox_to_anchor=(1, 0.6), ncol=3)描述數(shù)據(jù)框內(nèi)容:LV1 是包含上層類別的列,LV2 是子類別。這里有一個例子,你可以看到 R 只有兩個子類別,但它不是有 21 個子類別,其中前 1 有 20 次出現(xiàn),前 2 和 3 有 9 次出現(xiàn)。
查看完整描述

1 回答

?
largeQ

TA貢獻2039條經(jīng)驗 獲得超8個贊

可能的條相互重疊,并且較大的條疊加所有其他較小的條,因為您調(diào)用dodge=False. 如果您將plot_data數(shù)據(jù)限制為僅R帶有 的類別dodge=True,則所有類別都應(yīng)存在。由于計數(shù)圖不堆疊,請考慮堆疊條形圖而不是計數(shù)圖,這或多或少與分類變量的直方圖同義。


為了演示,請參見以下可重現(xiàn)的示例:


數(shù)據(jù)


import numpy as np

import pandas as pd


from  matplotlib import pyplot

import seaborn as sns


### DATA BUILD

data_tools = ['sas', 'stata', 'spss', 'python', 'r', 'julia']

np.random.seed(12220)

random_df = pd.DataFrame({'group': np.random.choice(data_tools, 500),

                          'int': np.random.randint(1, 10, 500)})

第一個圖 (查看只有 int=6 處的大“stata”欄如何顯示)


flatui = ["#9b59b6", "#3498db", "#95a5a6", "#e74c3c", "#34495e", "#2ecc71"]


fig, ax = pyplot.subplots(figsize=(8,4))


g = sns.countplot(ax=ax,

                  y="int",

                  hue="group",

                  palette=(sns.color_palette("hls", 8) + 

                           sns.color_palette("Paired") + 

                           sns.color_palette(flatui)),

                  dodge=False,

                  data=random_df)


g.legend(loc='upper center', ncol=3)

http://img1.sycdn.imooc.com//62c41ff40001dc1b04840258.jpg

第二個圖 (在 int=6 時僅顯示“stata”處的最大條之外的其他類別)


fig, ax = pyplot.subplots(figsize=(8,4))


g = sns.countplot(ax=ax,

                  y="int",

                  hue="group",

                  palette=(sns.color_palette("hls", 8) + 

                           sns.color_palette("Paired") + 

                           sns.color_palette(flatui)),

                  dodge=True,                              # CHANGING DODGE PARAM

                  data=random_df.query("int==6"))          # FILTERING DATA


g.legend(loc='upper center',ncol=3)

http://img1.sycdn.imooc.com//62c4200000018e4204810257.jpg

查看完整回答
反對 回復(fù) 2022-07-05
  • 1 回答
  • 0 關(guān)注
  • 276 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號