MATLAB 编程时一些杂点
本篇博客是笔者闲来无事,突发奇想写的一篇关于matlab编程时实现一些功能的点!
总体而言很简单!
1)文本随变量变化的实现
这个功能主要适合在编程时,一些文本名称需要随变量变化的情景。
比如,一个文本中只有数字发生变化,其他都一致,则可以利用下面的格式:
text(x,y,z,['文本内容',num2str(i)],'Color','r','FontSize',14);
其实在其他函数中,只要有需要写文本内容的地方,都可以按照 ['文本内容',num2str(i)]
这种格式填入对应位置,从而实现名称或文本随变量变化的功能。例如:
title(['文本内容',num2str(i)])
2)绘制长方体
这个功能是笔者在实现某个功能要求时需要用到的,只不过网上找到了一个好的实现程序(若想仔细研究者,可点击 “实现程序“ 自行查阅,侵权删~),如下:
function PlotCuboid(originPoint,cuboidSize)
%% 函数功能: 绘制长方体
% 输入:
% originPoint:长方体的原点,行向量,如[0,0,0];
% cuboidSize:长方体的长宽高,行向量,如[10,20,30];
% 输出:长方体图形
%% 根据原点和尺寸,计算长方体的8个的顶点
vertexIndex = [0 0 0;0 0 1;0 1 0;0 1 1;1 0 0;1 0 1;1 1 0;1 1 1];
vertex = originPoint+vertexIndex.*cuboidSize;
%% 定义6个平面分别对应的顶点
facet=[1 2 4 3;1 2 6 5;1 3 7 5;2 4 8 6;3 4 8 7;5 6 8 7];
%% 定义8个顶点的颜色,绘制的平面颜色根据顶点的颜色进行插补
color=[1;2;3;4;5;6;7;8];
%% 绘制并展示图像
% patch 对图像进行绘制。
% view(3) 将图像放到三维空间中展示。
% 其余的是设置背景等等
patch('Vertices',vertex,'Faces',facet,'FaceVertexCData',color,'FaceColor','interp','FaceAlpha',0.5);
view(3);
% axis([-8 10 -8 10 -8 10]);% 体现每个油箱的大小
xlabel('X');
ylabel('Y');
zlabel('Z');
% title('六个油箱位置图');
fig=gcf;
fig.Color=[1 1 1];
fig.Name='cuboid';
fig.NumberTitle='off'
end
笔者当时实现的图结果是
3)三维坐标下两点连线
这个点实现方式很简单,最简单的实现格式
plot3([x1 x2],[y1 y2],[z1 z2]);
比如,程序如下
clear;clc;
plot3([3 0],[5 0],[1 0],'g');
axis([-0.1 3.2 -0.1 5.2 -0.1 1.2]);
grid on
实现结果如图
4)调用保存的数据
这个点主要是当时一开始不怎么熟练时遇到的问题,就是如何导入 matlab 中的 mat 格式数据。比如实现格式为
bit_seq1 = load('E:\研究生活\研-my_topic\save_x.mat');
bit_seq = bit_seq1.s;
上述程序中,第一行利用 load 获得的 mat 数据是一个结构体,里面的数据主要是通过第二行的调用所获得。
这篇博客主要是记载笔者曾经不怎么注意的问题以及其实现方式,有些简单,后续还会补充~~