Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在直方图上设置轴并交换x轴和y轴?_Python_Matplotlib_Histogram_Bin - Fatal编程技术网

Python 如何在直方图上设置轴并交换x轴和y轴?

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

我有一个数据集,我想在其中绘制每个深度的测量数量直方图。我想在深度列中绘制每个测量频率的柱状图。我想把数据分成5米长,从0米开始,一直到155米。这段代码给了我一个直方图,它看起来是一个合理的形状,但是值似乎是错误的,我不能让它从0开始。此外,我希望能够交换x轴和y轴,以便深度在y轴上,频率在x轴上

    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()