画图常用小函数

本文分享了如何使用Matlab编写函数简化曲线颜色管理,固定颜色顺序,统一坐标轴字体和曲线粗细,并改进数据游标精度。通过自定义函数,节省重复设置,提高绘图效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在多年的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.youkuaiyun.com/download/qq_30049235/33161035

### Python 海龟绘图常用函数 #### 创建画布与初始化设置 为了使用 `turtle` 库中的功能,通常先要导入该模块并创建一个窗口实例。 ```python import turtle screen = turtle.Screen() pen = turtle.Turtle() # 初始化乌龟对象用于绘制 ``` #### 基本移动命令 - **前进**: 让海龟向前走指定的距离。 ```python pen.forward(100) # 向当前方向前进一步距离为100像素 ``` - **后退**: 让海龟向相反的方向行走给定单位长度。 ```python pen.backward(50) # 往回退步50个像素 ``` - **转向左转/右转**: 改变海龟面向的角度。 ```python pen.left(90) # 左转90度 pen.right(45) # 右转45度 ``` 这些基本操作可以组合起来完成更复杂的图案绘制[^1]。 #### 笔控制指令 除了上述运动外,还可以通过以下方法来管理线条属性: - **提起笔**:使之后的动作不会留下痕迹直到再次放下笔为止。 ```python pen.penup() # 提起笔不作画 ``` - **落下笔**:恢复正常的绘画状态。 ```python pen.pendown() # 落下笔回到正常画画模式 ``` - **改变颜色**:调整线的颜色以及填充色。 ```python pen.color('red') # 设置线条颜色为红色 pen.fillcolor('blue') # 设定填充区域颜色为蓝色 ``` 当涉及到封闭形状时,可以通过调用 `begin_fill()` 和 `end_fill()` 来实现彩色填充效果[^2]。 #### 绘制圆形和其他弧形路径 对于圆周或其他类型的曲线轨迹,有专门的方法支持这类几何图形的构建。 ```python pen.circle(radius=50, extent=None, steps=None) # radius参数定义半径大小;extent表示角度范围; # 如果steps被提供,则会近似成多边形而不是真正的圆弧 ``` 以上就是关于Python内置`turtle`库的一些基础介绍及其常见用途。此库非常适合初学者学习编程逻辑的同时享受视觉化的乐趣[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值