Matlab画海洋与大气变量的时间序列并带标记面的三维折线图--来源粉丝

Matlab画带标记面的三维折线图--来源粉丝

图片

目标图:

图片

复现:

图片

细节可在代码中更改:

复制代码
数据构造
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')
相关推荐
Han.miracle4 分钟前
MySQL InnoDB:MVCC、记录锁、间隙锁、二级索引MVCC底层原理
java·开发语言
不停喝水29 分钟前
【前端转全栈java速通课】 项目实战④7-11节 操作数据库-登录-注册-修改密码-注销-mubatis-plus简化crud-
java·前端·数据库
y1su35 分钟前
Leetcode 二分模板
java·数据结构·算法·leetcode·排序算法
leisoo80971 小时前
融资融券数据怎么查两融指标含义与杠杆观察方法 IG50免费开源股票数据API接口
开发语言·jvm·数据库·python·json
霸道流氓气质1 小时前
多Agent通信机制与协议设计完全指南:从FIPA-ACL到A2A/MCP的Java生产级实战
java·开发语言
Aric_Jones1 小时前
pgsql内置publication/subscription功能,实现数据同步
数据库
007张三丰1 小时前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·c语言·c++·内存管理
骇客野人1 小时前
Java BIO / NIO / AIO 完整详解 + 编程技巧
java·开发语言·nio