在Matplotlib中创建堆叠直方图时,我注意到箱宽缩小了。在这个简单的例子中:
import numpy as np
import matplotlib
import matplotlib.pylab as plt
#Create histograms and plots
fig = plt.figure()
gs = matplotlib.gridspec.GridSpec(1, 2)
h1 = fig.add_subplot(gs[0])
h2 = fig.add_subplot(gs[1])
x = np.random.normal(0, 5, 500)
y = np.random.normal(0, 20, 500)
bins = np.arange(-60,60, 5)
h1.hist([x, y], bins=bins, stacked=True)
h2.hist(x, bins=bins, alpha=1)
h2.hist(y, bins=bins, alpha=0.5)
plt.tight_layout()
plt.show()
filename = 'sample.pdf'
plt.savefig(filename)
我得到以下输出:
请注意,左侧的直方图在每个存储区之间都有行间距,即使左侧和右侧直方图都使用相同的存储区。
有没有办法纠正这种行为?我想在左边的直方图使用完整的箱子宽度,这样相邻的箱子共享一条边。
如果aax的第一个参数。hist
-调用是一个列表列表(或2d numpy数组或两者的组合),它将自动使垃圾箱变小。ax的
-call是确定箱子宽度的参数。将其设置为1将执行您希望它执行的操作:rwidth
参数。hist
h1。历史([x,y],存储箱=存储箱,堆叠=真,rwidth=1)
我正在制作一个有3个子绘图的图,尽管它们的宽度都相等,但一些直方图箱子的大小似乎不同。我的目标是创建一个具有相等宽度条的直方图。 我正在绘制来自三个不同数据框< code>df1、df2、df3的数据,每个数据框都有自己的轴。前两个数据帧(< code>df1,df2)有12个值,而第三个(< code>df3)有21个值。一个简单的工作示例: 在上图中,第三个子图 具有一个柱形图条,其条柱宽度显
我用matplotlib生成直方图。 我需要箱子的宽度不相等,因为我对最低的条柱最感兴趣。现在我正在这样做: 这创建了我想要的(前5个条柱的宽度为10,其余50条箱的宽度),但前五个条柱当然比后一个条柱窄,因为所有条柱都显示在同一轴上。 有没有办法影响x轴或直方图本身,这样我就可以在前5个箱之后打破刻度,这样所有箱都显示为等宽? (我意识到这将产生一个扭曲的视图,我对此很好,尽管我不介意在轴的两个
我正在matplotlib中创建直方图,但遇到了问题,因为当所有条的宽度都应该相同时,它们的宽度是不同的。这方面的一个例子如下: 显示迭代之间可变条形宽度的直方图 在图像中,左列具有完整的直方图,右列在完整直方图的各个部分中进行缩放。在完整的直方图中,由于某种未知的原因,两个试验之间的条形宽度不同,其中在缩放的右侧,它们具有相同大小的条形。我希望它们具有相同大小的条形图,其中 rwidth=1,并
我有一只熊猫。DataFrame我想基于两列绘制一个图表:(int)、(int-或)。现在我有这样的东西: 这是我使用的代码: 这是两个子图。这很好,但是很难看出在特定的年龄范围内,在幸存的列中有和的记录量之间的差异。 所以我想要这样的东西: 在这个场景中,您可以看到这种差异。有什么方法可以在(因为在那里我可以轻松地操作)?如果可能的话,我不想使用香草
我有一个带有值的数组,我想创建它的直方图。我主要对低端号码感兴趣,想把300以上的每一个号码都收集在一个箱子里。此箱应与所有其他(等宽)箱具有相同的宽度。我该怎么做呢? 注:此问题与此问题相关:在Matplotlib直方图中定义仓位宽度/x轴比例 这就是我迄今为止所尝试的: 然后,我更改了其中包含xlim的行: 它看起来或多或少像我想要的,但是最后一个垃圾箱现在看不见了。我错过了哪一个技巧来可视化
我试图从下面的论文(http://dx.doi.org/10.1016/j.envsci.2011.08.004)中复制图表图1的概念: 它是一个直方图,其箱子宽度取决于的值,其高度取决于变量。图表中的精确值并不重要,而是要了解如何复制它。 以下代码为每个创建了一个具有两个特征的数据帧(and measure的宽度是减量,