Matlab绘制箭头(annotation 、quiver、​quiver3)

本文章开始讲述基于Matlab绘制箭头,主要包括一下函数:

  1. annotation :annotation(lineType,x,y) 创建一个在当前图窗中的两个点之间延伸的线条或箭头注释。将 lineType 指定为 ‘line’、‘arrow’、‘doublearrow’ 或 ‘textarrow’。将 x 和 y 分别指定为 [x_begin x_end] 和 [y_begin y_end] 形式的二元素向量。
  2. quiver:quiver(X,Y,U,V) 在由 X 和 Y 指定的笛卡尔坐标上绘制具有定向分量 U 和 V 的箭头。例如,第一个箭头源于点 X(1) 和 Y(1),按 U(1) 水平延伸,按 V(1) 垂直延伸。默认情况下,quiver 函数缩放箭头长度,使其不重叠。
  3. quiver3:quiver3(X,Y,Z,U,V,W) 在由 X、Y 和 Z 指定的笛卡尔坐标处,绘制具有定向分量 U、V 和 W 的箭头。例如,第一个箭头源于点 X(1)、Y(1) 和 Z(1),根据 U(1) 在 x 轴方向延伸,根据 V(1) 在 y 轴方向延伸,并根据 W(1) 在 z 轴方向延伸。默认情况下,quiver3 函数缩放箭头长度,使其不重叠。

✦ 二维箭头

  1. 调整箭头的大小、颜色和线型
    使用 annotation 和 quiver 函数时,可以设置箭头的颜色、线型、头部大小等参数
figure;
% 使用 annotation 绘制箭头
ah1 = annotation('arrow', [0.2, 0.8], [0.3, 0.7]);hold on
ah1.Color = [0, 0.5, 0.8];        % 设置箭头颜色
ah1.LineWidth = 2;                % 设置箭头线宽
ah1.HeadLength = 10;              % 设置箭头头部长度
ah1.HeadWidth = 10;               % 设置箭头头部宽度
ah1.LineStyle = '--';             % 设置箭头线型
ah2 = annotation('arrow', [0.3, 0.9], [0.3, 0.7]);hold on
ah2.Color = [0, 1, 0.8];        % 设置箭头颜色
ah2.LineWidth = 2;                % 设置箭头线宽
ah2.HeadLength = 10;              % 设置箭头头部长度
ah2.HeadWidth = 10;               % 设置箭头头部宽度
ah2.LineStyle = '-';             % 设置箭头线型
hold off;
set(gca,'FontSize',15,'FontName','Times New Roman');

结果:
在这里插入图片描述
2. 双向箭头
可以使用 doublearrow 类型在 annotation 中创建双向箭头。

figure;
hold on;
% 使用 annotation 绘制双向箭头
annotation('doublearrow', [0.2, 0.8], [0.5, 0.5], 'Color', [0, 0, 0], 'LineWidth', 1.5);
hold off;
box on
set(gca,'FontSize',15,'FontName','Times New Roman');

结果:
在这里插入图片描述
3. 可以使用 doublearrow 类型在 annotation 中创建双向箭头。
使用 quiver 绘制多个箭头(用于矢量场或风场图)
quiver 函数可以用来在图中绘制多个箭头,这对于显示矢量场非常有用。

figure;
[X, Y] = meshgrid(1:12, 1:12);
U = cos(X); % X 方向上的矢量
V = sin(Y); % Y 方向上的矢量
quiver(X, Y, U, V, 'LineWidth', 1, 'MaxHeadSize', 0.5, 'Color', [0, 0.5, 0.5]);
box on
set(gca,'FontSize',15,'FontName','Times New Roman');

结果:
在这里插入图片描述
4. 使用 textarrow 增加带文本的箭头
在图形上标记特定点或趋势时,可以使用 textarrow 将文本和箭头组合起来。

figure;
% 使用 annotation 绘制带文本的箭头
th = annotation('textarrow', [0.4, 0.7], [0.4, 0.6], 'String', 'Important Point');
th.FontSize = 12;               % 设置文本大小
th.Color = [0.2, 0.2, 0.8];     % 设置箭头颜色
hold off;
box on
set(gca,'FontSize',15,'FontName','Times New Roman');

结果:
在这里插入图片描述
✦ 三维箭头

% 创建一个新的图形窗口figure;hold on;% 设置坐标轴范围axis([-5 5 -5 5 -5 5]);% 设置三维视角view(3);  % 设置为三维视角,显示立体效果% 添加标签和标题xlabel('X');ylabel('Y');zlabel('Z');title('Multiple 3D Arrows with Different Styles');% 启动网格grid on;% 第一种箭头样式: 红色,线宽2,头部大小1quiver3(0, 0, 0, 2, 3, 1, 'Color', 'r', 'LineWidth', 2, 'MaxHeadSize', 1);% 第二种箭头样式: 蓝色,线宽1,头部大小0.5quiver3(1, 1, 1, -2, 1, 0, 'Color', 'b', 'LineWidth', 1, 'MaxHeadSize', 0.5);% 第三种箭头样式: 绿色,线宽1.5,头部大小0.7quiver3(-2, -2, 0, 3, -2, 1, 'Color', 'g', 'LineWidth', 1.5, 'MaxHeadSize', 0.7);% 第四种箭头样式: 品红色,线宽2,头部大小0.8quiver3(2, -1, 2, -2, 2, 0, 'Color', 'm', 'LineWidth', 2, 'MaxHeadSize', 0.8);% 第五种箭头样式: 黑色,线宽3,头部大小1.2quiver3(0, 2, -2, -1, -2, 3, 'Color', 'k', 'LineWidth', 3, 'MaxHeadSize', 1.2);% 第六种箭头样式: 黄色,线宽1,头部大小1quiver3(-3, 1, -3, 1, -1, -1, 'Color', 'y', 'LineWidth', 1, 'MaxHeadSize', 1);% 显示图形hold off;

结果
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/9931.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【ESP32+MicroPython】开发环境部署

本教程将指导你如何在Visual Studio Code(VSCode)中设置ESP32的MicroPython开发环境。我们将涵盖从安装Python到烧录MicroPython固件的整个过程,以及如何配置VSCode以便与ESP32进行交互。 准备工作 安装Python 确保你的计算机上安装了Pyth…

我来讲一下-Service Mesh.

前言: 1、中文直翻译:Service Mesh叫服务网格,有一些讲课老师说什么把服务当成一个一个格子,一笔带过,没有经过深刻思考的讲诉,我真的bs. 一、我来讲一下 1、这里拆解分析一下,Service中的"…

30.超市管理系统(基于springboot和Vue的Java项目)

目录 1.系统的受众说明 2.相关技术和开发环境 2.1 相关技术 2.1.1 Java语言 2.1.2 HTML、CSS、JavaScript 2.1.3 MySQL 2.1.4 Vue.js 2.1.5 SpringBoot 2.2 开发环境 3. 系统分析 3.1 可行性分析 3.1.1 经济可行性 3.1.2 技术可行性 3.1.3 运行可行性 3.2…

洛谷 P1434 [SHOI2002] 滑雪 完整题解

一、题目查看 P1434 [SHOI2002] 滑雪 - 洛谷 二、解题思路 本题需要使用记忆化搜索&#xff0c;把第x个点开始最多能走几步记录在dp[x]中&#xff0c;循环递归&#xff0c;记录&#xff0c;并找出最大的dp[i]。 三、题解 #include <bits/stdc.h> using namespace std;int…

分布式唯一ID生成(二): leaf

文章目录 本系列前言号段模式双buffer优化biz优化动态step源码走读 雪花算法怎么设置workerId解决时钟回拨源码走读 总结 本系列 漫谈分布式唯一ID分布式唯一ID生成&#xff08;二&#xff09;&#xff1a;leaf&#xff08;本文&#xff09;分布式唯一ID生成&#xff08;三&am…

Spring Boot 与 Vue 共筑电影评价卓越平台

作者介绍&#xff1a;✌️大厂全栈码农|毕设实战开发&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。 &#x1f345;获取源码联系方式请查看文末&#x1f345; 推荐订阅精彩专栏 &#x1f447;&#x1f3fb; 避免错过下次更新 Springboot项目精选实战案例 更多项目…

Everything软件实现FTP功能

Windows的文件共享和ftp实在难用&#xff0c;这里介绍一种新的局域网内共享文件的方法 下载 Everything 选择想要共享的文件&#xff0c;选择包含到数据库&#xff0c;注意&#xff1a;要在对应的分卷设置&#xff0c;共享文件夹名称不要包含中文字符&#xff0c;因为Windows底…

CertiK创始人顾荣辉出席新加坡商业与慈善论坛,发表主旨演讲并主持专题讨论

2024年11月5日 —— 美国哥伦比亚大学教授、CertiK联合创始人、MAS国际技术顾问顾荣辉受邀参加2024年度新加坡商业与慈善论坛&#xff08;Business & Philanthropy Leadership Forum Singapore&#xff0c;简称B&P Forum&#xff09;&#xff0c;期间发表主旨演讲并主持…

oracle创建实例失败-因为网络原因

风起波谲 最近遇到一个case很有意思。 起因是在redhat6.5上&#xff0c;安装一个oracle 19c。这个问题到没有特别大。换glibc的包就装上去了。 但是dbca就失败了 有点紧张&#xff0c;不会是遇到了不可控依赖问题吧。遂去看了把日志 日志看了以后反而没那么紧张了&#xff0…

力扣题库——75.颜色分类

这道题采用三路快速排序&#xff0c;快速排序思路看这里快速排序。将数列分为三组&#xff1a;小于基准、等于基准、大于基准。和快排一样&#xff0c;对左右递归进行快速排序。 先将题目简化&#xff0c;如果只有数字0和1&#xff0c;扫描一遍数组&#xff0c;遇到数字1不用管…

Android中桌面小部件framework层使用到的设计模式

在Android中&#xff0c;桌面小部件&#xff08;App Widget&#xff09;的Framework层采用了多种设计模式&#xff0c;以实现模块化、可维护性和高效的交互。 以下是Android桌面小部件Framework层中常用的设计模式及其具体应用&#xff1a; 1. 观察者模式&#xff08;Observe…

解锁 AI 新境界:元素碰撞的神奇应用技巧全解析

前言 在当今科技飞速发展的时代&#xff0c;ChatGPT 作为一款强大的人工智能工具&#xff0c;为我们开启了全新的创意探索之门。当我们让 ChatGPT 去进行大量的元素碰撞时&#xff0c;相较于传统人力的联想方式&#xff0c;它能够凭借其强大的算法和海量的数据处理能力&#x…

操作系统-磁盘

文章目录 磁盘的结构一、磁盘的物理结构二、磁盘的逻辑结构 磁盘的调度算法磁盘时间算法先来先服务&#xff08;FCFS - First-Come, First-Served&#xff09;最短寻道时间优先&#xff08;SSTF - Shortest Seek Time First&#xff09;扫描算法&#xff08;SCAN&#xff0c;也…

C++类和对象 (下)

文章目录 前言一. 再探构造函数初始化列表特性总结练习 二. 类型转换2.1 隐式类型转换2.2 临时对象具有常性2.3 explicit关键字2.4 多参数类型转化 三. static成员概念特性练习 四. 友元概念特性 五. 内部类概念特性 六. 匿名对象概念特性 七. 对象拷贝时的编译器优化END 前言 …

玩的花,云产品也能拼团了!!!

说起拼单大家都不陌生&#xff0c;电商一贯的营销手段&#xff0c;不过确实可以给消费者省下一笔钱。双11到了&#xff0c;腾讯云产品也玩起了拼团&#xff0c;这明显是对开发人员和各企业的福利。 对于有云产品需求的个人或企业&#xff0c;这次绝对是难得的一次薅羊毛机会。…

深度学习-张量相关

一. 张量的创建 张量简介 张量是pytorch的基本数据结构 张量&#xff0c;英文为Tensor&#xff0c;是机器学习的基本构建模块&#xff0c;是以数字方式表示数据的形式。 例如&#xff0c;图像可以表示为形状为 [3, 224, 224] 的张量&#xff0c;这意味着 [colour_channels, h…

境内部署DIfy(上篇)

背景&#xff1a; 由于近2年大模型的火热催生出很多业务场景&#xff0c;这也迫使我们这些老一辈的程序搬运工去接触新事物&#xff0c;“工欲善其事必先利其器”&#xff0c;先从大模型应用开始摸索&#xff0c;网上大把工具&#xff0c;再三思考后决定先从Dify开始&#xff…

[CKS] 利用Trivy对image进行扫描

最近准备花一周的时间准备CKS考试&#xff0c;在准备考试中发现有一个题目关于Trivy镜像安全扫描的题目。 What’s Trivy Trivy的官方仓库https://github.com/aquasecurity/trivy&#xff0c;Trivy是一个开源的容器镜像漏洞扫描工具。它通过分析容器镜像中的操作系统包和应用…

vue3入门知识(一)

vue3简介 性能的提升 打包大小减少41%初次渲染快55%&#xff0c;更新渲染快133%内存减少54% 源码的升级 使用Proxy代替defineProperty实现响应式重写虚拟DOM的实现和Tree-Shaking 新的特性 1. Composition API&#xff08;组合API&#xff09; setupref与reactivecomput…

数据结构和算法入门

复杂度 大O记法 计算机怎么判断程序性能&#xff1f; 我们都知道编程基本上是在和数据打交道&#xff0c;大多数程序基本都在处理获取数据、查询数据、操作数据、返回数据相关的逻辑。 因此出现了数据结构和算法&#xff0c;这两者出现本质为了解决如何能够更快、更省进行数…