Python 如何在直方图上设置轴并交换x轴和y轴?
我有一个数据集,我想在其中绘制每个深度的测量数量直方图。我想在深度列中绘制每个测量频率的柱状图。我想把数据分成5米长,从0米开始,一直到155米。这段代码给了我一个直方图,它看起来是一个合理的形状,但是值似乎是错误的,我不能让它从0开始。此外,我希望能够交换x轴和y轴,以便深度在y轴上,频率在x轴上Python 如何在直方图上设置轴并交换x轴和y轴?,python,matplotlib,histogram,bin,Python,Matplotlib,Histogram,Bin,我有一个数据集,我想在其中绘制每个深度的测量数量直方图。我想在深度列中绘制每个测量频率的柱状图。我想把数据分成5米长,从0米开始,一直到155米。这段代码给了我一个直方图,它看起来是一个合理的形状,但是值似乎是错误的,我不能让它从0开始。此外,我希望能够交换x轴和y轴,以便深度在y轴上,频率在x轴上 import numpy as np import datetime as dt import matplotlib.pyplot as plt import glo
import numpy as np
import datetime as dt
import matplotlib.pyplot as plt
import glob
#The data is read in, and then formatted so that an array Dout (based on depth) is created. This is done since multiple files will be read into the code, and so I can create the histogram for all the files I have up until this point.
Dout = np.array(depthout)
bins = np.linspace(0, 130, num=13) #, endpoint=True, retstep=False)
plt.hist(Dout, bins)
plt.xlabel('Depth / m')
plt.ylabel('Frequency')
plt.show()
# the end
数据采用以下格式:
TagID ProfileNo ProfileDirn DateTime Lat Lon Depth Temperature
您需要
hist
()的orientation
kwarg
阅读标题后单击问题时,我预期会出现完全不同的代码块。也许您可以发布一个不需要所有数据管理的最小示例,这更适合标题。对于水平条形图,请查看matplotlib图库中的barh_演示:这听起来是pandas软件包的完美工作。使用pd.read\u clipboard()在数据框中获取代码。然后df.Temperature.hist()为您提供histrogram。有很多切片选项可以用很少的代码完成你想做的事情。这对多个文件有效吗?我以前从未用过熊猫对不起。@Nras这样更好吗?该链接提供了必要的装箱信息!谢谢然而,频率仍然是绝对错误的。。。
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
data = np.random.randn(1500)
bins = np.linspace(-5, 5, 25, endpoint=True)
ax.hist(data, bins, orientation='horizontal')
ax.set_ylim([-5, 5])
plt.show()