我有以下问题。我需要在plt.hist()上的X轴上将标签居中。我在这里找到了一些答案:How to center labels in histogram plot建议使用align = "left/mid/right"
。但是,它没有给我正确的输出:
plt.hist(data['Col1'], align='left')
plt.hist(data['Col1'], align='mid')
plt.hist(data['Col1'], align='right')
全部代码:
plt.style.use('ggplot')
plt.xticks(rotation='vertical')
plt.locator_params(axis='y', integer=True)
plt.suptitle('My histogram', fontsize=14, fontweight='bold')
plt.ylabel('Frequency', fontweight='bold')
plt.hist(data['Col1'], align='mid')
plt.show()
Matplotlib的
hist()
带有默认参数,主要用于连续数据。 如果未给出任何参数,matplotlib会将值的范围划分为10个大小相同的容器当给定字符串数据时,matplotlib在内部用数字
0, 1, 2, ...
替换字符串。在本例中,“ok”得到值0
,“18 let”得到值1
。将该范围划分为10,将创建10个容器:0.0-0.1, 0.1-0.2, ..., 0.9-1.0
。条形图放置在箱子中心(0.05, 0.15, ..., 0.95
)和默认对齐的'mid'
。(当您想要绘制更窄的条形图时,这种居中方式会有所帮助。)在这种情况下,除第一个和最后一个条形图外,所有条形图都将具有高度0
这里是正在发生的事情的可视化。垂直线显示放置垃圾箱边界的位置
为了更好地控制离散数据的柱状图,最好在给定值(例如
plt.hist(..., bins=[-0.5, 0.5, 1.5])
)周围给出明确的BIN。更好的方法是创建计数图:计算各个值并绘制条形图(柱状图只是一种特定类型的条形图)下面是这样一个“计数图”的示例。(请注意,numpy的^{} 的
return_counts=
参数仅适用于1.9及更高版本。)请注意,seaborn的^{} 可以更好地处理离散数据。使用字符串或显式设置
discrete=True
时,会自动计算相应的存储箱相关问题 更多 >
编程相关推荐