我正在尝试绘制许多二维图(x,y)。
但是......每个二维图都是针对一个常数 z。
所以实际上我的数据是 (x,y,z) 但不是 z(x,y),我相信这是使用“surf”命令的要求。
有人可以帮忙吗?
例如,x = 速度 y = 阻力
对于恒定温度 z,我有多次运行 y(x)。
我只想沿第三轴温度 z 绘制每个 (x,y)。
理想情况下,我还想要(x,y)图之间的某种轮廓,这样我就可以显示峰/谷等。
任何帮助都会很棒。
如果运行不是独立的(多次运行存在某种趋势),那么使用surf
. 然后你需要构建你的数据,比如你有一个 X、Y 和 Z - 在这种情况下,我建议你使用阻力测量作为你的 Z(高度)。
假设您拥有所有的阻力/速度数据, drag
并且velocity
它们的大小都是 [数据点 x 运行次数]:
% construct matrix of run numbers
runs = repmat(1:numruns, [1, datapoints]);
runs = reshape(runs, datapoints, numruns);
% plot and label
surf(runs,velocity,drag);
xlabel('runs')
ylabel('velocity')
zlabel('drag')