用Matlab去表白吧!

Matlab的520花式表白法

今天是520,记录一下给女朋友做到爱心,其中有些借鉴,为使图片更美观一点也有些修改。
先给出结果图
用Matlab去表白吧!_第1张图片
然后给出代码

f=@(x,y,z)(x.^2+(9./4).*y.^2+z.^2-1).^3-x.^2.*z.^3-(9./80).*y.^2.*z.^3;
[x,y,z]=meshgrid(linspace(-3,3));
val=f(x,y,z);
[p,v]=isosurface(x,y,z,val,0);
title('你想说的话','position',[-0.7,-1,-0.5],'color','r');
x=xlabel('今天是520','position',[0.2,0,-1.5]);
y=ylabel('今天是520','position',[-0.65,0.5,-1.5]);
zlabel('今天是520');
set(x,'Rotation',23);
set(y,'Rotation',-34.8);
set(gca,'xtick',[],'ytick',[],'ztick',[]);
patch('faces',p,'vertices',v,'facevertexcdata',jet(size(v,1)),'facecolor','w','edgecolor','flat');
view(3);axis equal;

代码解释
以下是自己为了图片更美观而修改的内容。

title('你想说的话','position',[-0.7,-1,-0.5],'color','r');%此处添加标题内容,给出标题的位置和颜色
x=xlabel('今天是520','position',[0.2,0,-1.5]);%这是x轴名称,后边给出x轴名称的位置
y=ylabel('今天是520','position',[-0.65,0.5,-1.5]);%这是y轴名称,后边给出y轴名称的位置
zlabel('今天是520');%这是z轴名称,位置默认即可
set(x,'Rotation',23);%旋转x轴名称使其与x轴平行,目前我只知道这种方法
set(y,'Rotation',-34.8);%旋转y轴名称使其与y轴平行,目前我只知道这种方法
set(gca,'xtick',[],'ytick',[],'ztick',[]);%这里清除xyz轴的刻度

当执行完代码生成的图片没有边框,在图窗的属性编辑器里勾选‘框’,也可根据自己的审美对其他内容进行修改。生成图片时,将导出设置里面的渲染-分辨率修改为600,然后导出时选择TIFF无压缩格式,即可得到高清的图片。

你可能感兴趣的:(matlab)