我正在努力学习python。我有大约500,000次地震(震源)的真实世界xy(纬度长dd)坐标和z(低于地表的公里)值,从0.1到2.0。我在.txt制表符分隔表中将数据切割为10行xyz值。我想在matplotlib的三维散点图可旋转框中绘制数据。我可以使用基本命令来读取数据,格式看起来很好。我不清楚我是否需要将数据读入列表或数组以便mpl读取和绘制数据。我需要创建一个数组吗?
然后,我想绘制油井的地下位置,给定井眼顶点的xyz坐标(大约40个位置),我是否需要创建折线?这些数据与一些偏心者具有相同的一般坐标(进一步评估)。哪个数据集应该是情节,哪个应该是子情节?另外,我不清楚我需要的“浮动”给出xy lat长坐标的6到7位小数,以及2位小数z坐标。答案 0 :(得分:4)
顺便说一句,听起来你在做微震? (我也是地球物理学家,无论它的价值多少。)
作为一个简单的例子:
from enthought.mayavi import mlab
import numpy as np
# Generate some random hypocenters
x, y, z, mag = np.random.random((4, 500))
# Make a curved well bore...
wellx, welly, wellz = 3 * [np.linspace(0, 1.5, 10)]
wellz = wellz**2
# Plot the hypocenters, colored and scaled by magnitude
mlab.points3d(x, y, z, mag)
# Plot the wellbore
mlab.plot3d(wellx, welly, wellz, tube_radius=0.1)
mlab.show()
就您的数据读取而言,听起来应该如下:
x, y, z = np.loadtxt('data.txt').T
你遇到了什么问题?