33 lines
640 B
Matlab
33 lines
640 B
Matlab
function maxE=plotE(node,elem,E,figureNum,alpha)
|
|
|
|
figure(figureNum);
|
|
%绘制图像
|
|
h1=trisurf(elem,node(:,1),node(:,2),node(:,3),real(E));
|
|
shading interp %插值绘制
|
|
axis equal; axis tight;
|
|
set(h1,'edgecolor','black','edgealpha',alpha);%边框
|
|
|
|
%坐标轴
|
|
xlabel('X');
|
|
ylabel('Y');
|
|
zlabel('Z');
|
|
|
|
%摄像机
|
|
camproj('orthographic');
|
|
|
|
%colorbar设置
|
|
colorbar;
|
|
colormap jet;
|
|
|
|
eleno=[elem(:,1);elem(:,2);elem(:,3)];
|
|
[NodeMapping,~,~]=unique(eleno,'rows');
|
|
E=E(NodeMapping);
|
|
maxE=max(real(E));
|
|
if min(real(E))==max(real(E))
|
|
delta=min(real(E))*0.01;
|
|
caxis([min(real(E))-delta maxE+delta]);
|
|
else
|
|
caxis([min(real(E)) maxE]);
|
|
end
|
|
|
|
end |