图片
目标图:
图片

复现:
图片
细节可在代码中更改:
数据构造
clear;clc;close all;
% 数据构造
X1= 1:8;Y1=ones(length(X1),1);
X2 = X1;Y2=2*ones(length(X1),1);
X3 = X1;Y3=3*ones(length(X1),1);
Z = fix(10*rand(8,3));
颜色表:
% 颜色表
color3 = [139 0 139]./255;
color2 =[60 179 113]./255;
color1 =[255 185 15]./255;
三维折线画图:
% 画图
close all
figure
set(gcf,'position',[50 50 800 550],'color','w')
h1=plot3(Y1,X1,Z(:,1),'linestyle','-','Marker',"hexagram",'color',color1,'LineWidth',2,'MarkerEdgeColor',color1,...
'MarkerFaceColor',color1);
hold on
h2=plot3(Y2,X2,Z(:,2),'linestyle','-','Marker',"diamond",'color',color2,'LineWidth',2,'MarkerEdgeColor',color2,...
'MarkerFaceColor',color2);
hold on
h3=plot3(Y3,X3,Z(:,3),'linestyle','-','Marker',">",'color',color3,'LineWidth',2,'MarkerEdgeColor',color3,...
'MarkerFaceColor',color3);
hold on
添加平面并调整透明度:
% add plane
hold on
yy1 = [X1(1) X1(end) X1(end) X1(1)];
xx1 = [Y1(1) Y1(end) Y1(end) Y1(1)];
% zz1 = [min(Z(:,1)) min(Z(:,1)) max(Z(:,1)) max(Z(:,1)) ];
zz1 = [0 0 10 10];
fh1 = fill3(xx1,yy1,zz1,color1);
set(fh1,'FaceAlpha',0.1,'FaceColor',color1,'EdgeColor',color1);
yy2 = [X2(1) X2(end) X2(end) X2(1)];
xx2 = [Y2(1) Y2(end) Y2(end) Y2(1)];
zz2 = [0 0 10 10];
fh2 = fill3(xx2,yy2,zz2,color2);
set(fh2,'FaceAlpha',0.1,'FaceColor',color2,'EdgeColor',color2);
yy3 = [X3(1) X3(end) X3(end) X3(1)];
xx3 = [Y3(1) Y3(end) Y3(end) Y3(1)];
zz3 = [0 0 10 10];
fh3 = fill3(xx3,yy3,zz3,color3);
set(fh3,'FaceAlpha',0.1,'FaceColor',color3,'EdgeColor',color3);
更改视角刻度等细节:
% 改变视角
view([20 25 70])
% 设置xlabel 等刻度
xlim([0.9 3.2])
ylim([1 9])
zlabel([0 10])
xlabel('variables','fontsize',15,'fontweight','bold')
ylabel('year','fontsize',15,'fontweight','bold')
zlabel('number','fontsize',15,'fontweight','bold')
title('plot 3Dimension with plane','fontsize',15,'fontweight','bold')
set(gca,'xtick',[1:3],'xticklabel',{'sst','wind','flux'},'fontsize',12,'FontWeight','bold','ytick',0:9,'YTickLabel',[2020:-1:2010],'ztick',[0:2:10])
% grid on
grid on
box on
添加legend 并输出:
% add legend
le_h =legend([h1,h2,h3],'sst','wind','flux');
set(le_h,'position',[0.1 0.8 0.2 0.1],'box','off','fontsize',12,'FontWeight','bold')
export_fig('带标记面的三维折线图1.jpg','-r600')
全部代码 :
.rtcContent { padding: 30px; } .lineNode {font-size: 12pt; font-family: "Times New Roman", Menlo, Monaco, Consolas, "Courier New", monospace; font-style: normal; font-weight: normal; }
clear;clc;close all;
% 数据构造
X1= 1:8;Y1=ones(length(X1),1);
X2 = X1;Y2=2*ones(length(X1),1);
X3 = X1;Y3=3*ones(length(X1),1);
Z = fix(10*rand(8,3));
% 颜色表
color3 = [139 0 139]./255;
color2 =[60 179 113]./255;
color1 =[255 185 15]./255;
% 画图
close all
figure
set(gcf,'position',[50 50 800 550],'color','w')
h1=plot3(Y1,X1,Z(:,1),'linestyle','-','Marker',"hexagram",'color',color1,'LineWidth',2,'MarkerEdgeColor',color1,...
'MarkerFaceColor',color1);
hold on
h2=plot3(Y2,X2,Z(:,2),'linestyle','-','Marker',"diamond",'color',color2,'LineWidth',2,'MarkerEdgeColor',color2,...
'MarkerFaceColor',color2);
hold on
h3=plot3(Y3,X3,Z(:,3),'linestyle','-','Marker',">",'color',color3,'LineWidth',2,'MarkerEdgeColor',color3,...
'MarkerFaceColor',color3);
hold on
% 改变视角
view([20 25 70])
% 设置xlabel 等刻度
xlim([0.9 3.2])
ylim([1 9])
zlabel([0 10])
xlabel('variables','fontsize',15,'fontweight','bold')
ylabel('year','fontsize',15,'fontweight','bold')
zlabel('number','fontsize',15,'fontweight','bold')
title('plot 3Dimension with plane','fontsize',15,'fontweight','bold')
set(gca,'xtick',[1:3],'xticklabel',{'sst','wind','flux'},'fontsize',12,'FontWeight','bold','ytick',0:9,'YTickLabel',[2020:-1:2010],'ztick',[0:2:10])
% grid on
grid on
box on
% add plane
hold on
yy1 = [X1(1) X1(end) X1(end) X1(1)];
xx1 = [Y1(1) Y1(end) Y1(end) Y1(1)];
% zz1 = [min(Z(:,1)) min(Z(:,1)) max(Z(:,1)) max(Z(:,1)) ];
zz1 = [0 0 10 10];
fh1 = fill3(xx1,yy1,zz1,color1);
set(fh1,'FaceAlpha',0.1,'FaceColor',color1,'EdgeColor',color1);
yy2 = [X2(1) X2(end) X2(end) X2(1)];
xx2 = [Y2(1) Y2(end) Y2(end) Y2(1)];
zz2 = [0 0 10 10];
fh2 = fill3(xx2,yy2,zz2,color2);
set(fh2,'FaceAlpha',0.1,'FaceColor',color2,'EdgeColor',color2);
yy3 = [X3(1) X3(end) X3(end) X3(1)];
xx3 = [Y3(1) Y3(end) Y3(end) Y3(1)];
zz3 = [0 0 10 10];
fh3 = fill3(xx3,yy3,zz3,color3);
set(fh3,'FaceAlpha',0.1,'FaceColor',color3,'EdgeColor',color3);
% add legend
le_h =legend([h1,h2,h3],'sst','wind','flux');
set(le_h,'position',[0.1 0.8 0.2 0.1],'box','off','fontsize',12,'FontWeight','bold')
export_fig('带标记面的三维折线图1.jpg','-r600')