【发布时间】:2021-03-24 06:32:10
【问题描述】:
我有下面附加的数据框,我需要绘制一个条形图,显示在 x 轴上的运行得分和在 y 轴上的频率/计数。
我已经尝试过这个命令,但它没有显示正确的结果 -
箱 = [0,10,20,30,40]
plt.hist(df.Runs, bins, histtype='bar')
plt.xlabel('x') plt.ylabel('y')
我得到下图:-
我想要的预期情节-
【问题讨论】:
-
“它没有显示正确的结果”是什么意思?你能描述一下到底出了什么问题吗?顺便说一句,如果你提供
bins = [0,10,20,30,40],预计大于40的值将不会被表示。 -
@JohanC 我已经添加了从我的代码中获得的图表以及我期望它出现的图表。
-
可能您的“运行”是字符串而不是数字。如果您使用
pd.read_csv()之类的函数读取数据帧,则通常会自动进行正确的转换。否则,df['DataFrame Column'] = df['DataFrame Column'].astype(int)应该进行转换。请注意,您有多个应该是数字的列。 -
@JohanC 我只使用 pd.read_csv
-
用例如
df.info()你可以找到列的类型。您也可以尝试使用df.hist()获取 pandas 直方图,或者使用 seaborn 的histplot()
标签: python pandas dataframe matplotlib bar-chart