matlab画图表中如何将图表中的多个信号有序排列开

今天介绍一些Python中用于画图表图形的类库。因为有些时候,他们跟matlab一样简单,方便。而且有些也具有非凡的表现力。
matplotlib,官网:,Matplotlib 是一个由 John Hunter 等开发的,用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块 Numeric
及 Numarray,克隆了许多 Matlab 中的函数, 用以帮助用户轻松地获得高质量的二维图形。Matplotlib 可以绘制多种形式的图形包括普通的线图,直方图,饼图,散点图以及误差线图等;可以比较方便的定制图形的各种属性比如图线的类型,颜色,粗细,字体的大小 等;它能够很好地支持一部分 TeX 排版命令,可以比较美观地显示图形中的数学公式。个人比较推荐这个类库。。
Cairoplot,官网:,(友情提示:需要翻墙)。Cairoplot在网页上的表现力堪比flex中的图表图形效果。但是这个似乎只能跑在linux平台上。所以很多windows用户估计要失望了。
Chaco, 官网:,Chaco是一个2D的绘图库。其中文简单教程参考:
Python Google Chart,官网:。从命名方式来看,这个肯定与google chart扯上了关系。所以该类库是对Google chart API的一个完整封装。
PyCha,官网:。PyCha可是说是的一个简单封装,为了是实现轻量级,以及容易使用,当然还做了一些优化等。
pyOFC2,官网:。它是Open Falsh Library的Python类库。所以图形具有Flash效果,可以随鼠标移动动态显示图标中信息,这是优越于其他静态图示的。
Pychart,官网:。pyChart是用于创建高品质封装的PostScript,PDF格式,PNG,或SVG图表Python库。
PLPlot,官网:。PLPlot是用于创建科学图表的跨平台软件包。以C类库为核心,支持各种语言绑定(C, C++, Fortran, Java, Python, Perl etc.)。开源免费。
reportlab,官网:。这个我们之前介绍过,参考。这个类库支持在pdf中画图表。
Vpython,官网:,VPython是Visual Python的简写,Visual是由Carnegie Mellon University(卡耐基-梅隆大学)在校学生David Scherer于2000年撰写的一个Python
3D绘图模块。
支持Python3的图表库
表示接触Python比较晚,所以一开始学习的就是Python3。最近需要用在网页上显示图表,所以在网上大肆搜罗了一番,很多都是只支持Python2的,不过还是发现了支持Python3的图表库。...
Python的13大图形库
转载地址:http://www.django-china.cn/topic/75/
Python的13大图形库,matplotlib功能最强大,Cairoplot最漂亮,django-chart...
Python graphics库详解
Tkinter库是内置的库
graphics库可以从http://mcsp.wartburg.edu/zelle/python/graphics.py下载,下载后的graphics.py放到pytho...
使用python画图表
快两个月没写东西了,昨天晚上回家的飞机,在家没啥事了,写点东西省的手生。本节我们来一起学习使用python画图表。
matplotlib是目前比较流行的数学绘图库,首先我们来安装它,环境变量配置好的...
Python绘图Turtle库详解
Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行...
python绘制非常漂亮的图表
python绘制非常漂亮的图表
标签: python界面图形
12:02 1200人阅读 评论(0) 收藏 举报
python(4...
Python数据可视化matplotlib(三)——绘制基本的图表
Python数据可视化matplotlib(三)——绘制基本的图表
import numpy as np
import pandas as pd
import matplotlib.pyplot...
没有更多推荐了,网站已改版,请使用新地址访问:
c_a GPS中C/A码的matlab仿真程序和图表表示
238万源代码下载- www.pudn.com
&文件名称: c_a
& & & & &&]
&&所属分类:
&&开发工具: matlab
&&文件大小: 1 KB
&&上传时间:
&&下载次数: 5
&&提 供 者:
&详细说明:GPS中C/A码的matlab仿真程序和图表表示-GPS in the C/A code matlab simulation program and graphical representation
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&近期下载过的用户:
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - 本程序用汇编语言编写,其主要目的是实现各种数值之间的转换,并显示在屏幕上。
&[] - Force feedback support for SmartJoy PLUS PS2-&USB adapter for Embedded Linux.
&[] - 非常全的GPS(全球定位系统)的Matlab源代码。
&[] - GPS信号的捕获、处理程序,matlab源代码,并附有详细注释,和结果画图显示。强烈建议GPS学习者下载。
&[] - 根据GPS中P码生成的原理,用matlab仿真实现了P码的生成
&[] - GPS信号的伪码生成程序,已经测试过,运行良好。代码注释丰富,风格简洁,有很大的参考价值。HDL coder帮助文档的解读
Generate VHDL and Verilogcode for FPGA and ASIC designs
HDL Coder(TM) generates portable, synthesizable VHDL(R) andVerilog(R) code
from MATLAB(R) functions,Simulink(R) models, and Stateflowcharts.
The generated HDL code can be used for FPGA programming orASIC prototyping and design.
HDL Coder provides a workflow advisor that automates theprogramming of Xilinx(R) andAltera(R) FPGAs.
You can control HDLarchitecture and implementation, highlight critical paths, and generatehardware resource utilization estimates. HDL Coder provides traceabilitybetween your Simulink model and the generated Verilog and VHDL code, enablingcode verification
for high-integrity applications adhering to DO-254 and otherstandards.
针对FPGA与ASIC设计生成VHDL/Verilog代码
HDLCoder(TM)可基于MATLAB函数、Simulink模型和Stateflow图表来生成可移植、可综合的VHDL/Verilog代码。生成出的代码可以用于FPGA的编程或ASIC原型开发与设计。
HDL Coder提供了一种使Xilinx和Altera
FPGA编程自动化的工作流程指导。你可以控制硬件描述语言的架构和执行,强调关键(信号)路径,生成硬件资源率利用评估。HDL
Coder提供了Simulink模型与生成的VHDL/Verilog代码间的可追溯特性,为符合DO-254和其他标准的高完整性的应用启用代码验证。
注:【DO-254标准的有效性得到了美国联邦航空局和欧洲航空安全局等业界权威的一致确认,为机载电子硬件的设计开发提供了指导与保障。DO-254全称“机载电子硬件设计保证指南”。该标准对硬件设计生命周期各阶段的目标、开展的设计保证活动以及产生的设计数据进行了详尽的阐述。DO-254标准将硬件设计过程分为需求获取、概要设计、详细设计、实现与产品转换过程,这与传统的集成电路设计流程基本相同,不同的是,DO-254详细定义了支持过程,包括确认过程、验证过程、配置管理、过程保证以及审定联络,保证了硬件设计生命周期及其输出正确可控。DO-254标准代表了工业界、适航当局、机载领域硬件设计人员在内的大多数专家的一致意见,是机载电子硬件开发保证过程最好的实践经验的集合。DO-254标准的有效性得到了美国联邦航空局和欧洲航空安全局等业界权威的一致确认,为机载电子硬件的设计开发提供了指导与保障。
可编程逻辑器件在航空机载设备中的应用越来越多,其设计也变得愈发复杂,适航认证已成为航空器件发展的必然趋势。对于针对特种行业的FPGA开发,了解此标准很重要】
Key Features
Target-independent,synthesizable VHDL and Verilog code
与目标(器件)无关,可综合
Codegeneration support for MATLAB functions, System objects and Simulink blocks
Mealyand Moore finite-state machines and control logic implementations usingStateflow
使用Stateflow工具实现Moore/Mealy状态机及控制逻辑
Workflowadvisor for programming Xilinx and Altera application boards
Resourcesharing and retiming for area-speed tradeoffs
平衡面积——速度的资源共享与时序重排技术
Code-to-modeland model-to-code traceability for DO-254
Legacycode integration
旧代码集成
Getting Started
Learn thebasics of HDL Coder
入门指南:学习HDL Coder的基础
HDL Code Generation from MATLAB
GenerateHDL Code from MATLAB algorithms
基于MATLAB算法的HDL代码生成
HDL Code Generation from Simulink
GenerateHDL code from Simulink models
基于Simulink模块的HDL代码生成
Hardware-Software Codesign
Deploypartitioned hardware and software on a target hardware platform
软硬件协同设计:在目标硬件平台上有效部署软件与硬件
Supported Hardware
Supportfor third-party hardware, such as Altera and Xilinx FPGA boards
硬件支持:对例如Xilinx和Altera
FPGA板卡的第三方硬件支持
Getting Started with HDL Coder
CoderProduct Description HDL Coder产品描述
Tool Setup工具安装
SupportedThird-Party
Tools and Hardware 受支持的第三方工具与硬件
and VerilogLanguage Support VHDL与Verilog语言支持
CodeGeneration from a MATLAB Algorithm
CodeGeneration from a Simulink Model
About Designing for HDLCode Generation
FunctionsSupported
for HDL Code Generation — Alphabetical List 按字母排序的受支持函数清单
FunctionsSupported
for HDL Code Generation — Categorical List 按类别的受支持函数清单
LanguageSupport MATLAB语言支持
HardwareModeling
with MATLAB Code 使用MATLAB代码对硬件进行建模
SimulinkModel For HDL Code Generation 准备适合生成HDL代码的Simulink模型
BlocksSupported for HDL Code Generation
Supported Blocks受支持的模块
SimulinkTemplates
For HDL Code Generation 可生成HDL代码的Simulink模板
Tool Setup工具安装流程
Synthesis Tool Path Setup
综合工具路径配置
hdlsetuptoolpath
Synthesis Tool for Current HDL Workflow AdvisorSession
Your Synthesis Tool Setup
Tool Versions
hdlsetuptoolpath Function
使用hdlsetuptoolpath 函数
To use HDL Coder(TM) with one of the supported third-party FPGAsynthesis tools, add the tool to your system path using the hdlsetuptoolpath function.Add
the tool to your system path before opening the HDL Workflow Advisor. Ifyou already have the HDL Workflow Advisor open, see Add
Synthesis Tool for Current HDL Workflow AdvisorSession.
Add Synthesis Tool for Current HDL WorkflowAdvisor Session
Simulink to HDL Workflow
At the MATLAB(R) commandline, use the hdlsetuptoolpath functionto
add the synthesis tool.
In the HDL Workflow Advisor, inthe Set Target & Set Target Device and SynthesisTool step, to the right of
Synthesis tool, click Refresh.
Thesynthesis tool is now available.
MATLAB to HDL Workflow
At the MATLAB command line, usethe hdlsetuptoolpath functionto
add the synthesis tool.
In the HDL Workflow Advisor, inthe Select Code Generation Target step, to the right of Synthesistool, click
Refresh list.
Thesynthesis tool is now available.
Check Your Synthesis Tool Setup
To check your Altera(R) Quartussynthesis tool setup in MATLAB, try launching the tool with the followingcommand:
To check your Xilinx(R) Vivado(R) synthesistool
setup in MATLAB, try launching the tool with the following command:
To check your Xilinx ISE synthesis tool setup in MATLAB, trylaunching the tool with the following command:
Supported Tool Versions
For supported tool versions, see Third-Party
Synthesis Tools and Version Support.
如上图所示,通过调用函数成功配置了VIVADO综合器接口。通过!vivado指令可以检查出MATLAB与VIVADO是否完成综合器的匹配
开始HDL coder生成流程
现在开始在.m文件中编写相应的算法。这里为了更好的演示整个HDL coder工作的流程,我们选择一个具有代表性的数字信号处理典例:线性调频LFM信号通过FIR滤波器进行滤波,并通过Testbench来从输入输出的波形中验证FPGA是否能较好的完成滤波工作。
首先值得注意的是,我们平时在MATLAB环境中的运算基本上都是浮点运算(floating point arithmetic),而在FPGA中的实现几乎都是定点运算(fixed
point arithmetic),这就使得在HDL coder的过程中需要一步关键操作:
浮点到定点的转换。
我们先写出FIR滤波器算法的.m文件,在这个文件中,加法和乘法都是直接使用+、*运算符,属于浮点操作:
function [y_out, delayed_xout] =mlhdlc_sfir(x_in, h_in1, h_in2, h_in3, h_in4)
% Symmetric FIR Filter
persistent ud1 ud2 ud3 ud4 ud5 ud6ud7 ud8;
if isempty(ud1)
ud1 = 0;ud2 = 0; ud3 = 0; ud4 = 0; ud5 = 0; ud6 = 0; ud7 = 0; ud8 = 0;
a1 = ud1 + ud8; a2 = ud2 + ud7;
a3 = ud3 + ud6; a4 = ud4 + ud5;
m1 = h_in1 * a1; m2 = h_in2 * a2;
m3 = h_in3 * a3; m4 = h_in4 * a4;
a5 = m1 + m2; a6 = m3 + m4;
% filtered output
y_out = a5 + a6;
% delayout input signal
delayed_xout = ud8;
% update the delay line
ud8 = ud7;
ud7 = ud6;
ud6 = ud5;
ud5 = ud4;
ud4 = ud3;
ud3 = ud2;
ud2 = ud1;
以及测试FIR滤波器用的_tb.m文件:
clear all;
% input signal with noise
x_in =cos(2.*pi.*(0:0.001:2).*(1+(0:0.001:2).*75)).';
% filter coefficients
h1 = -0.1339; h2 = -0.0838; h3 = 0.2026; h4 =0.4064;
len = length(x_in);
y_out = zeros(1,len);
x_out = zeros(1,len);
for ii=1:len
data =x_in(ii);
%call to the design 'mlhdlc_sfir' that is targeted for hardware
[y_out(ii), x_out(ii)] = mlhdlc_sfir(data, h1, h2, h3, h4);
figure('Name',[mfilename,
'_plot']);
subplot(2,1,1); plot(1:len,x_in);
subplot(2,1,2); plot(1:len,y_out);
_tb.m文件的作用是产生一个线性调频信号x_in输入给FIR滤波器,得到它的输出,并作图来显示滤波的效果。
执行_tb.m文件的结果如下:
可见,经过滤波后的线性调频信号的高频部分被抑制了,说明在算法层面我们的代码没有问题。下一步就是调出HDL coder工具箱,然后按说明添加两个.m文件进去:
按照MATLAB中内置的Getting Start Guide,一步步进行HDL的生成。在第二步中,Fixed
Point Conversion是将浮点算法转换为定点实现的重要一环:
可以看到我们代码中的运算形式发生了改变:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Generated by MATLAB 9.0 and Fixed-Point Designer 5.2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function [y_out, delayed_xout] =mlhdlc_sfir_fixpt(x_in, h_in1, h_in2, h_in3, h_in4)
% Symmetric FIR Filter
fm = get_fimath();
persistent ud1 ud2 ud3 ud4 ud5 ud6ud7 ud8;
if isempty(ud1)
ud1 = fi(0, 1, 14, 12, fm); ud2 = fi(0, 1, 14, 12,fm); ud3 = fi(0, 1, 14, 12, fm); ud4 = fi(0, 1, 14, 12, fm); ud5 = fi(0, 1, 14,12, fm); ud6 = fi(0, 1, 14, 12, fm); ud7 = fi(0, 1, 14, 12, fm); ud8 = fi(0, 1,14, 12, fm);
a1 = fi(ud1 + ud8, 1, 14, 12, fm); a2 = fi(ud2 +ud7, 1, 14, 12, fm);
a3 = fi(ud3 + ud6, 1, 14, 12, fm); a4 = fi(ud4 +ud5, 1, 14, 11, fm);
m1 = fi(h_in1 * a1, 1, 14, 14, fm); m2 = fi(h_in2 *a2, 1, 14, 15, fm);
m3 = fi(h_in3 * a3, 1, 14, 14, fm); m4 = fi(h_in4 *a4, 1, 14, 13, fm);
a5 = fi(m1 + m2, 1, 14, 14, fm); a6 = fi(m3 + m4, 1,14, 12, fm);
% filtered output
y_out = fi(a5 + a6, 1, 14, 12, fm);
% delayout input signal
delayed_xout = fi(ud8, 1, 14, 12, fm);
% update the delay line
ud8(:) = ud7;
ud7(:) = ud6;
ud6(:) = ud5;
ud5(:) = ud4;
ud4(:) = ud3;
ud3(:) = ud2;
ud2(:) = ud1;
ud1(:) = x_
function fm = get_fimath()
fm =fimath('RoundingMethod',
'Floor',...
'OverflowAction',
'Wrap',...
'ProductMode','FullPrecision',...
'MaxProductWordLength',128,...
'SumMode','FullPrecision',...
'MaxSumWordLength',128);
经过定点转换后,数据多少会在精度上有所损失,基于此可以在MATLAB中将定点转换后的算法再次运行一遍,得到的结果和浮点比较,如果精度损失过多,我们可以通过增加定点数据的存储位宽来弥补,使其更接近真实数据,但同时也会增加资源占用率。如下图所示,HDL
coder给出了定点算法运行结果与原浮点算法结果的对比,并给出了误差波形:
可以看出,在使用默认定点位宽的条件下,转换误差在级别,对大部分应用可以忽略。我们继续向下执行,直到这一步,生成得到两个.v文件和用于测试的三个信号数据.dat文件:
最终生成的Code Generation报告:
我们建立一个VIVADO工程,把生成的.v文件加入到DesignSource、Simulation
Source中,同时把三个测试用的信号数据.dat文件加入,VIVADO会自动识别出并放置到Data
Files文件夹里:
一路综合、实现:
然后在VIVADO中仿真,检查我们HDL coder生成的.v文件在FPGA中是否可以真正实现FIR滤波器功能。在这里为了显示正确的信号波形,我们应该选择Radix为Signed
Decimal,Waveform Style为Analog形式,此时才可以看清输入输出的线性调频信号波形
最终如仿真图所示,经过对仿真信号的格式做适当修改,可以看到FIR滤波器在FPGA中成功实现了:
HDL coder同时可以针对某特定型号的FPGA芯片进行深度优化,实现更多更有意思的算法,从雷达、通信系统的数字信号处理到矩阵运算,再到ECC、加解密编码甚至机器学习领域,它都可以作为一种快速生成原型的验证工具,帮助工程师快速将算法转化为工程实现。本文仅仅是在原版官方说明的拙劣解释和模仿,如有需要可以深入研究MATLAB关于此的详细说明,也希望读者能随时指正本文的错误,交流学习
matlab中hdl coder 的使用
https://www.cnblogs.com/lianjiehere/p/3966844.html
今天摸索了一下hdl coder的使用方法,各个步骤主要是照猫画虎,有些地方还是...
sysgen学习之hdl coder使用
在学习sysgen的时候发现还有一个好用的工具就是hdl coder。他能够将matlab或是sumulink或是state flow'转换成verilog代码或是vhdl;
下面是是使用步骤,做个...
Matlab Coder 使用方法
举例介绍matlab coder的使用方法工具/原料 matlab方法/步骤 MATLAB Coder 工具是 MathWorks 公司在 2011年推出的 Matlab2011a版本中推陈出新的产品...
基于模型设计的FPGA开发与实现:滤波器设计与实现(三)Matlab中滤波器的HDL代码生成
MBD-FPGA 开发与实现
http://blog.sina.com.cn/McCrocodile
这里要介绍的内容可以在帮助文档Filter Designer HDL Coder章节查找到相应...
Simulink HDL Coder中的BlackBox及RAM仿真初始化
两种RAM--HDL Demo模块&EML
源文件下载:http://download.csdn.net/source/3144044
屏幕剪辑的捕获时间:
&em&HDL&/em&-&em&Coder&/em&详细教程,有详细例子,源于官方例程,中文教程 综合评分:0 收藏评论举报 所需: 2积分/C币 开通VIP 立即下载 评论共有0条 &em&matlab&/em&中&em&hdl&/em& &em&coder&/em& 的使用
没有更多推荐了,you have been blocked扫一扫,访问微社区
只需一步,快速开始
请完成以下验证码
请完成以下验证码
查看: 4597|回复: 5|关注: 0
求助:如何让fig图表中的X坐标值显示更多的位数(高精度)
<h1 style="color:# 麦片财富积分
新手, 积分 38, 距离下一级还需 12 积分
关注者: 3
ws.png (20.49 KB, 下载次数: 0)
23:41 上传
请问如何让fig图表中的X坐标值显示更多的位数(高精度)
图中所示为5位小数位,如何让其显示为6位小数位甚至更多?
<h1 style="color:# 麦片财富积分
关注者: 3
这么多天了还是没人回复?自己顶一下,希望更多的人看到.
<h1 style="color:# 麦片财富积分
关注者: 3
真的没有好办法?
<h1 style="color:# 麦片财富积分
<h1 style="color:# 麦片财富积分
回复 评分 举报
M学校:同进士出身
财富541 麦片在线时间1446 小时帖子643
串个门加好友打招呼发消息& & & &
15:54:53 |只看该作者
选中坐标显示框,右键,弹出菜单中左键选择“Edit textupdata function”,在弹出的m文件编辑框中,按下面红色部分(该部分控制数据的显示格式,具体可以去看帮助)修改其中的一句代码
output_txt = {['X: ',num2str(pos(1),'%10.5f')],...
& & ['Y: ',num2str(pos(2),'%10.5f')]};
然单击“save and close”,给一个文件名后保存
不过这个修改只对你当前的这个figure有效,当你新画一个figure时,如果也想要用这个显示格式,可以选中坐标显示框,右键,左键选择“Select textupdata function”,然后选中你前面保存的那个m文件即可
注:我也是转载的;P
<h1 style="color:# 麦片财富积分
关注者: 3
首先感谢楼上的回复.编译为EXE文件运行时,弹出的FIG文件就没有上述的这些选项了.
站长推荐 /3
MATLAB中文论坛是全球最大的 MATLAB & Simulink 中文社区。用户免费注册会员后,即可下载代码,讨论问题,请教资深用户及结识书籍作者。立即注册加入我们吧!
MATLAB官方社交平台
MATLAB中文论坛微社区

我要回帖

更多关于 matlab画图表 的文章

 

随机推荐