画图常用小函数

在多年的matlab使用过程中,自己编写三个简单的函数,用来简化或者方便画图,分享给大家,示例使用matlab版本R2016b。

曲线颜色

有时我们需要画多条曲线,用不同颜色区分,plot的颜色已经很好用,但是我们有时希望几条曲线用相同颜色,而不是自动变化,所以要用’color’属性来固定颜色,而常用的’r’,‘g’等颜色过于丑陋,其他饱和度低的颜色要输出RGB值,记不住,所以写了个函数来帮助记忆。代码中是matlab默认的颜色顺序,可以自己更改。

function [ colorRGB ] = colorRGB( plot_sequence )
%	color colorRGB
%   plot绘图曲线颜色,与matlab默认颜色序列一致
if plot_sequence == fix(plot_sequence)
    switch plot_sequence
        case 1
            colorRGB = [0,0.45,0.74];
        case 2
            colorRGB = [0.85,0.33,0.1];
        case 3
            colorRGB = [0.93,0.69,0.13];
        case 4
            colorRGB = [0.49,0.18,0.56];
        case 5
            colorRGB = [0.47,0.67,0.19];
        case 6
            colorRGB = [0.3,0.75,0.93];
        case 7
            colorRGB = [0.64,0.08,0.18];
    end
    if plot_sequence <1 || plot_sequence >7
        colorRGB = [0,0.45,0.74];
    end
else
    colorRGB = repmat(plot_sequence-fix(plot_sequence),1,3);
        
end

坐标轴字体大小级曲线粗细统一更改

画图时每一幅图都添加set函数改各种属性比较麻烦,将常用的几个属性的更改放到一个函数即可。

function [  ] = setaxis( fontsize, linewidth )
% fontsize  所有字体大小
% linewidth 所有曲线粗细 
%   
if nargin == 0
    set(gca,'Linewidth',2,'Fontsize',20,'box','on');
elseif nargin ==1
    set(gca,'Linewidth',2,'Fontsize',fontsize,'box','on');
else
    set(gca,'Linewidth',2,'Fontsize',fontsize,'box','on');
    set(findall(gcf,'type','line'),'linewidth',linewidth)
end
end

数据游标的精度

经常使用数据游标发现显示只有小数点后四位,不便于观测数据,因此编写一个文本更新函数,使用时选择数据游标功能,右击选择文本更新函数。

function output_txt = myfunction(obj,event_obj)
% Display the position of the data cursor
% obj          Currently not used (empty)
% event_obj    Handle to event object
% output_txt   Data cursor text string (string or cell array of strings).

pos = get(event_obj,'Position');
output_txt = {['X: ',num2str(pos(1),8)],...
% 此处的pos(1)后的数字,即X轴的数据游标的显示精度位数
['Y: ',num2str(pos(2),8)]};
% 此处的pos(2)后的数字,即Y轴的数据游标的显示精度位数

% If there is a Z-coordinate in the position, display it as well
if length(pos) > 2
    output_txt{end+1} = ['Z: ',num2str(pos(3),8)];
% 此处的pos(3)后的数字,即Z轴的数据游标的显示精度位数
end

如何使用

首先需要新建函数,将函数保存为m文件,存在一个文件夹(最好是全英文路径及文件名),然后matlab菜单栏,设置路径,添加文件夹,保存即可。

下载

https://download.csdn.net/download/qq_30049235/33161035

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值