几周前我开始使用python,因此我对python的了解很少。
我希望用一些连续数据绘制条形图,但不想用任何颜色填充它。我想只看到最后的边缘像线直方图。我不能使用白色,因为我将在同一画布中使用错误条图重叠不同的条形图。有关如何将其更改为线性直方图并设置其线条颜色的任何线索?
对于x轴,我使用了numpy.array。 对于y轴,我需要的高度是numpy.histogram形式。
我使用以下方法:
import matplotlib.pyplot as plt
plt.bar(np_array_bins, np_histogram,width=binwidth,
label='data', alpha=0.5, edgecolor = 'red',
color = 'green', linewidth=0.1)
忽略显示的数据。我只关心情节的风格。 谢谢!
答案 0 :(得分:2)
根据您的说明,您似乎想要step plot或histogram。
步骤图可以通过以下方式实现:
matplotlib.pyplot.step(np_array_bins, np_histogram, color="red", label="data")
直方图可以通过以下方式实现:
matplotlib.pyplot.hist(values, histtype="step", edgecolor="red", label="data")
此处的重要参数是histtype
,将其设置为step
会在直方图周围绘制一条未填充的线条。在此示例中,将传入原始数组,matplotlib将计算bin边缘。您可以自己定义bin边缘并设置其他参数以获得对最终绘图的更多控制,这些在the matplotlib docs中进行了描述。