更改直方图数据的 bin 大小
Posted
技术标签:
【中文标题】更改直方图数据的 bin 大小【英文标题】:change bin size of histogram data 【发布时间】:2016-12-25 00:43:07 【问题描述】:我有来自类似 SQL 语句的数据
'select action_count, count(*) "num_users" from customers group by action_count;'
并将其加载到 pandas 数据框中。我可以在数据上运行一个简单的绘图命令,或者 barplot 让它看起来像一个直方图。但是我怎样才能轻松地改变这个数据集的 bin 大小呢?然后我如何正确绘制 bin,即 x 轴?
谢谢!
【问题讨论】:
【参考方案1】:您可以使用pandas
hist
中的列表指定 bin 边缘的位置。例如,使用自定义序列,bin 从-2.0
到-0.5
,然后-0.5
到0.0
,然后是0.1
的几个增量,
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df =pd.DataFrame('col1':np.random.randn(10000))
df.hist(bins=[-2.,-0.5,0.,0.1,0.2,0.3])
plt.show()
哪些情节,
【讨论】:
是的,这是我所知道的正常方式。但我拥有的数据不再是原始数据(参见 SQL 语句)。就像我要在你的例子中写[((-2,-.5),2700), ((-.5,0), 1900), ...]
一样。只是我只有整数作为'bins'。
所以你已经有了直方图数据(例如numpy.histogram
的输出)?您是否希望绘制的条形宽度与这些匹配(在这种情况下,您可以将width
参数用于带有上述数组的条形)。或者您是否需要从您拥有的数据中获得不同的宽度(某种形式的插值)?您能否包括一些示例数据,也许还有输出草图?以上是关于更改直方图数据的 bin 大小的主要内容,如果未能解决你的问题,请参考以下文章
更改 matplotlib 中子图的“xticks”和“Yticks”的字体大小和粗体 [重复]
R语言plotly可视化:plotly可视化多个数据集归一化直方图(historgram)设置不同的直方图使用不同的分箱大小(bin size)在直方图的底部边缘添加边缘轴须图rug
R语言plotly可视化:可视化多个数据集归一化直方图(historgram)并在直方图中添加密度曲线kde设置不同的直方图使用不同的分箱大小(bin size)在直方图的底部边缘添加边缘轴须图