【发布时间】:2016-04-20 07:44:05
【问题描述】:
我有一些与使用 mplot3D 在 Python 中创建简单线图相关的问题,其中填充了绘图下方的区域。我在 RedHatEnterprise 7.2、matplotlib 1.2.0 和 numpy 1.7.2 上使用 Python 2.7.5。
使用下面的代码,我可以生成线图。这将按预期显示,绘图的开始/结束由导入数据集的限制设置。
然后,我尝试使用 Bart 从Plotting a series of 2D plots projected in 3D in a perspectival way 给出的答案填充折线图和 -0.1 之间的区域。这是可行的,但是,填充区域超出了数据集的限制。从链接运行示例时也是如此。
此屏幕截图显示了生成的绘图,其中填充区域超出了设置的轴限制。
- 如何实现填充区域仅为数据集的范围或轴范围,以较小者为准?
- 如何将这些图的图例添加到图上?
代码如下:
from numpy import *
import matplotlib.pylab as plt
from mpl_toolkits.mplot3d import Axes3D
x,y = genfromtxt("data.dat",unpack=True)
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.add_collection3d(plt.fill_between(x,y,-0.1, color='orange', alpha=0.3,label="filled plot"),1, zdir='y')
ax.plot(x,y,1,zdir="y",label="line plot")
ax.legend()
ax.set_xlim3d(852.353,852.359)
ax.set_zlim3d(-0.1,5)
ax.set_ylim3d(0,2)
ax.get_xaxis().get_major_formatter().set_useOffset(False)
plt.show()
【问题讨论】:
标签: python matplotlib mplot3d