美文网首页matlab有趣的程序和命令MATLAB
【科研绘图】MATLAB可视化代码模板

【科研绘图】MATLAB可视化代码模板

作者: Hennyxu | 来源:发表于2020-04-25 11:55 被阅读0次

    为方便自己绘图,记录一下画图常用命令。会不定期完善代码,欢迎评论区交流好用的画图技巧。

    • 部分绘图效果展示
    • 绘图代码详解

    以随机噪声为例

    x=randn(100,1);
    % 计数,同时创建一个新的图片:
    figure   
    % 画红色的曲(折)线,线宽2.5
    plot(x,'r','LineWidth',2.5)
    hold on         % 在当前图上继续绘图
    plot(x,'b.')    % 画蓝色的实心点图
    hold on
    stem(x,'*k')    % 画黑色带*的棍状图
    % 在图东南角对应生成线宽2.5的图例
    % 'Northeast' 也可换成 'East'等方向
    legend('x1','x2','x3','LineWidth',2.5,'Location','Northeast')
    % 将图片边框以及横纵轴设置:线宽为2,字号14,字体Times New Roman
    % 注意不要使用下划线、中文,可能会不兼容
    set(gca,'linewidth',2,'fontsize',14,'fontname','Times New Roman')
    % 裁掉图片的白边 (方便插图,省去手动裁剪的时间)
    set(gca, 'LooseInset', [0,0,0,0])
    % 以厘米为单位,在屏幕上(10,5)的位置画24cm×12cm的图
    set(gcf,'unit','centimeters','position',[10 5 24 12])
    % 限制x、y轴的显示范围
    xlim([1 100]); ylim([-3.5 3.5]);
    % 只显示x轴的五个位置,并采用0-2pi的特殊显示
    set(gca,'XTick', [1 25 50 75 100]);
    % 或采用 set(gca,'xtick',1:25:100);
    set(gca,'xticklabel',{'0','\pi/2','\pi','3\pi/2','2\pi'})
    % x、y轴标签,可设置字体及大小
    xlabel('x'); ylabel('Amp');
    title('Frequency Domain of x')
    

    代码绘图结果:

    • 保存图片方式

    ①复制无损矢量图:在figure中使用菜单edit---->copy figure,此时图像就复制到剪贴板了,可以粘贴到word或者visio里。该方法的优点是图片缩放不损失清晰度。
    ②saveas命令。常用于批量绘图时,在如下命令里,k是循环改变的数,这样就可以批量生成文件名为x1.jpg、x2.jpg...等图片。

    saveas(gcf,['D:\Mywork','x',num2str(k),'.jpg'])
    

    为方便复制,这里放一份无注释的代码:

    x=randn(100,1);
    figure   
    plot(x,'r','LineWidth',2.5)
    hold on         
    plot(x,'b.')    
    hold on
    stem(x,'*k')    
    legend('x1','x2','x3','LineWidth',2.5,'Location','Northeast')
    set(gca,'linewidth',2,'fontsize',14,'fontname','Times New Roman')
    set(gca, 'LooseInset', [0,0,0,0])
    set(gcf,'unit','centimeters','position',[10 5 24 12])
    xlim([1 100]); ylim([-3.5 3.5]);
    set(gca,'XTick', [1 25 50 75 100]);
    % set(gca,'XTick', 0:25:100);
    set(gca,'xticklabel',{'0','\pi/2','\pi','3\pi/2','2\pi'})
    xlabel('x'); ylabel('Amp');
    title('Frequency Domain of x')
    

    相关文章

      网友评论

        本文标题:【科研绘图】MATLAB可视化代码模板

        本文链接:https://www.haomeiwen.com/subject/mimcwhtx.html