【问题标题】:Seaborn Countplot Series Doesn't recognize inputSeaborn Countplot 系列无法识别输入
【发布时间】:2019-07-11 03:56:21
【问题描述】:

我正在尝试将一个系列绘制成水平条形图,但我遇到了问题。

这是我的系列:

HARRASSMENT 2                     80149
CRIMINAL MISCHIEF & RELATED OF    62059
ASSAULT 3 & RELATED OFFENSES      61133
GRAND LARCENY                     54090
DANGEROUS DRUGS                   35407
OFF. AGNST PUB ORD SENSBLTY &     34810
ROBBERY                           23399
BURGLARY                          22536
FELONY ASSAULT                    21941
GRAND LARCENY OF MOTOR VEHICLE    14094
MISCELLANEOUS PENAL LAW           13307
DANGEROUS WEAPONS                 12090
Name: OFNS_DESC, dtype: int64```


This is what I already tried: 
sns.countplot(y="OFNS_DESC", data=b) , b is the name of my series variable

This is my error:

ValueError: Could not interpret input 'OFNS_DESC'



【问题讨论】:

    标签: python pandas seaborn


    【解决方案1】:

    如果我正确理解您的数据,这些数字已经代表这些不同类别的计数 - 所以您实际上只需要一个简单的条形图而不是计数图。

    这里是使用 pandas/matplotlib 以及 seaborn 条形图函数绘制数据的代码:

    import pandas as pd
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    counts = [80149, 62059, 61133, 54090, 35407, 34810, 23399, 22536, 21941, 14094, 13307, 12090]
    categories = ['HARRASSMENT 2', 'CRIMINAL MISCHIEF & RELATED OF', 'ASSAULT 3 & RELATED OFFENSES', 'GRAND LARCENY', 'DANGEROUS DRUGS', 'OFF. AGNST PUB ORD SENSBLTY &', 'ROBBERY', 'BURGLARY', 'FELONY ASSAULT', 'GRAND LARCENY OF MOTOR VEHICLE', 'MISCELLANEOUS PENAL LAW', 'DANGEROUS WEAPONS']
    sr = pd.Series(data=counts, index=categories)
    
    # | using pandas/matplotlib barplot
    plt.figure()
    sr.plot.barh()
    
    # | using seaborn barplot
    plt.figure()
    sns.barplot(x=sr.values, y=sr.index)
    

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 2020-06-04
      • 2018-12-15
      • 1970-01-01
      • 1970-01-01
      • 2017-07-22
      • 2023-01-23
      • 1970-01-01
      • 2014-10-05
      相关资源
      最近更新 更多