是否可以使用python matplotlib垂直绘制绘图?
我需要画一个这样的图:是否可以使用python matplotlib垂直绘制绘图?,python,matplotlib,Python,Matplotlib,我需要画一个这样的图: 可能吗?我该怎么做?我不知道你的数据是什么。。。但这是一个“垂直”图,假设近海表面的氧气水平 请注意,不需要任何特殊要求。只需对x和y值进行排序,以便从第一个坐标到第二个坐标绘制的直线,依此类推,就可以得到所需的垂直线 (我在这里做的一件特别的事情——可能是,也可能不是你想要的——就是使用勾选顶部将xticks放在绘图的顶部。) 这将产生: 我希望它能有所帮助……我相信关键词是“条纹图”。也许你可以适应?你有什么理由不能只翻转x和y坐标吗?@wtm,注意,为了美观,你
可能吗?我该怎么做?我不知道你的数据是什么。。。但这是一个“垂直”图,假设近海表面的氧气水平 请注意,不需要任何特殊要求。只需对
x
和y
值进行排序,以便从第一个坐标到第二个坐标绘制的直线,依此类推,就可以得到所需的垂直线
(我在这里做的一件特别的事情——可能是,也可能不是你想要的——就是使用勾选顶部将xticks
放在绘图的顶部。)
这将产生:
我希望它能有所帮助……我相信关键词是“条纹图”。也许你可以适应?你有什么理由不能只翻转x和y坐标吗?@wtm,注意,为了美观,你可以做一个小小的改进,就是把xtitle(氧气水平)放在顶部,而不是现在的位置。但我不会破坏所有的乐趣,让你一个人发现;-)
import matplotlib.pyplot as plt
# define data
Oxygen = [ 0.1 , 0.5, 1, 10, 15, 20, 15, 10, 1, 0.5, 0.5]
Depth = [ 0, 1, 2, 4, 8, 10, 12, 14, 16, 20, 40 ]
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(Oxygen, Depth, 'go--')
ax.xaxis.tick_top()
ax.set_ylabel('depth')
ax.set_ylim(50, 0)
ax.set_xlim(0, 25)
ax.set_xlabel('Oxygen level [ppm]')
plt.show()