我正在使用.net WPF几何图形类来绘制波形图。我一直在使用矩阵变换将屏幕坐标空间转换为波形的坐标空间。一切都很好,而且跟踪窗口和缩放比例等非常简单。我什至可以使用逆变换来根据坐标空间计算鼠标位置。我使用内置的Scaling和Translation类,然后使用自定义矩阵进行y轴翻转(没有用于翻转的预制矩阵)。我也希望能够以对数刻度(x轴或y轴或两者)绘制这些波形,但是我不确定是否可以通过矩阵变换

13

2020-05-06

IT屋

我想创建一个音乐应用,其视图类似于SoundCloud的视图,这一点要明确:这 我想为每个酒吧创建一个这样的类: class Bar { const Bar(this.alreadyPlayed,this.index,this.height); 的最终bool已播放; 最终int指数; 美元的最终双倍身高; } 在其中已经播放过的布尔值告诉酒吧应该是彩

74

2020-11-09

IT屋

我们可以在C#中使用Directdraw或Diraect2d .. 我想画一个实时波形图。 请建议...... 请告诉我是否有使用Direct2D / 3D的示例图 解决方案 有一个免费的库可用于使用DirectX .Net,但我不记得它的名字。谷歌是你的朋友。

30

2019-06-22

IT屋

我正在开发Mac OS X应用程序。在那我必须画一个波形图/图表。 是否有可用的库/框架使我的工作容易? 实现此目标的最佳方法是什么? 预先感谢。 解决方案 Core Plot 是适用于iOS和OS的绘图框架X。我不确定它是否具有您想要的图形的确切类型,但这可能是您最好的选择。 如果可以接受基于Web的API那么您可以查看Wolfram Alpha API(如@estro所

17

2020-08-11

IT屋

我的应用程序中存在一个错误,该错误与此处,此人遇到了同样的问题。我的应用程序是多线程的,其中工作线程正在UI上更新Waveformgraph。我认为这就是我的问题所在,为什么在运行应用程序时定期且偶尔在我的至少一个波形图对象中得到一个大的红色X。通过阅读和研究,我需要使用Invoke还是BeginInvoke方法?有人可以更好地解释并提供与我的代码相关的示例代码吗?到目前为止,我发现的样本仍然让我

21

2020-06-06

IT屋

如何使用nodejs制作具有录音功能的视频和音频混合器。 我也想要音频的可编辑波形图。 nodejs中是否有任何支持包? 解决方案 除非您很幸运地找到了一个可以完全满足您需求的包您想知道,我怀疑通过接口库的节点包装程序(例如以下一种)使用ffmpeg是最简单的方法: https://github.com/fluent-ffmpeg/node-fluent-ffmpeg 这使

91

2020-06-30

IT屋

MVVM初学者教程 - 从简单和简单的步骤学习MVVM,从基本到高级概念,包括简介,优点,责任,第一个应用程序,连接视图,连接ViewModel,WPF数据绑定,WPF数据模板,View和ViewModel通信,层次结构和导航,验证,依赖注入,事件,单元测试,框架,面试问题。

772

2019-06-16 09:19:23

IT屋

WPF初学者教程 - 从简单和简单的步骤学习WPF,从基本到高级概念,包括概述,环境设置,Hello World,XAML概述,元素树,依赖属性,路由事件,控件,布局,布局嵌套,输入,命令行,数据绑定,资源,模板,样式,触发器,调试,自定义控件,异常处理,本地化,交互,2D图形,3D图形,多媒体。

606

2019-06-16 09:24:53

IT屋

XAML初学者教程 - 从基本到高级概念的简单简单步骤学习XAML,其中包括概述,环境设置,在MAC OS上编写XAML应用程序,XAML Vs CSharp代码,XAML Vs.VB.NET,构建块,控件,布局,事件处理,数据绑定,标记扩展,依赖属性,资源,模板,样式,触发器,调试,自定义控件。

719

2019-06-16 09:25:14

IT屋

初学者Silverlight教程 - 从简单和简单的步骤学习Silverlight,从基本到高级概念,包括概述,环境设置,入门,XAML概述,项目类型,固定布局,动态布局,约束与无约束布局,Silverlight和CSS ,控件,按钮,内容模型,列表框,模板,视觉状态,数据绑定,浏览器集成,浏览器外应用程序,应用程序,资源和部署,文件访问,视图模型,输入处理,独立存储,文本,动画,视频和音频,打印。

568

2019-06-16 09:22:14

IT屋

初学者Entity Framework教程 - 从基本到高级概念的简单简单步骤学习实体框架,其中包括概述,体系结构,环境设置,数据库设置,数据模型,DbContext,类型,关系,生命周期,代码优先方法,模型优先方法,数据库第一种方法,DEV方法,数据库操作,并发,事务,视图,索引,存储过程,断开连接的实体,表值函数,本机SQL,枚举支持,异步查询,持久性,投影查询,命令记录,命令拦截,空间数据类型,继承,迁移,渴望,懒惰,显式加载,验证,跟踪更改,彩色实体,第一个示例,数据注释,Fluent API,种子数据库,代码优先迁移,多个DbContext,嵌套实体类型。

602

2019-06-16 09:15:19

IT屋

SAP EWM初学者教程 - 从基本概念到高级概念,简单易学地学习SAP EWM,其中包括概述,组织单位,主数据,结构元素,工作中心,仓库流程类型,销售和接收货物,维护序列号,增值服务,直接发货流程,存储控制,拆分,拣货,包装和货物通过,补货,实物库存​​,开槽,人工管理,生产供应,预期收益,交叉对接,RF框架,仓库监控,入库和外向交货。

998

2019-06-16 10:17:15

IT屋

通信原理课程笔记

通信原理课程笔记

基带传输常用码型.md

复制代码

# 基带传输常用码型

### 基带传输对信号的要求

对传输码型的要求:原始消息码必须编成适合信道传输用的码型

对基带脉冲的要求:所选码型对应的电波形应适合于基带系统的传输

## 一、数字基带信号的编码规则

  • 不含直流,且低频分量尽量少
  • 应含有丰富的定时信息,以便于从接收码流中提取定时信号
  • 功率谱主瓣宽度窄,以节省传输频带
  • 不受信息源统计特性的影响,即能是英语信息源的变化
  • 具有内在的检错能力,即码型应具有一定规律,以便于利用这一规律进行宏观监测
  • 编译码简单,以降低通信延时和成本

### 二、几种常见的传输码型

#### 1.AMI码:传号交替反转码

编码规则:将消息码的“1”(传号)交替地变换为“+1”和“-1”,而“0”(空号)保持不变

![AMI-1](https://raw.githubusercontent.com/simonid/img/master/通信原理/AMI-1.PNG)

demo:

消息码:0 1 1 0 0 0 0 0 0 0 1 1 0 0 1 1

AMI码:0 -1 +1 0 0 0 0 0 0 0 -1 +1 0 0 -1 +1

AMI码优点:

a) 没有直流成分,且高低频分量少,能量集中再1/2码速处,频带教窄

b) 编译码电路简单,并有一定的检错能力

c) 如果它是AMI-RZ波形,接收后只要全波整流,就可变为单极性RZ波形,从中可以提取定时分量

AMI码不足:

当原信码出现长连“0”串时,信号的电平长时间不跳变,造成提取定时信号的困难

如何解决连“0”码问题?

#### 2.HDB3码:3阶高密度双极性码

编码规则:

1.当信码中连“0”数码小于等于3时,仍然按AMI码处理

2.当信码中连“0”码超过三个,每4个连“0”码分为一节并且用000V或B00V的 取代节来替代它

3.本取代节到上一个相邻的取代节间又奇数个原始传号时,选用000V取代节,且V码的极性和前一传号的极性相同

4.本取代节到上一个相邻的取代节间又偶数(含0)个原始传号时,选用B00V取代节。且取代节中的B和V同极性,与前一传号码极性相反

![HDB3-1](https://raw.githubusercontent.com/simonid/img/master/通信原理/HDB3-1.PNG)

![HDB3-2](https://raw.githubusercontent.com/simonid/img/master/通信原理/HDB3-2.PNG)

HDB3译码规则:

![HDB3-3](https://raw.githubusercontent.com/simonid/img/master/通信原理/HDB3-3.PNG)

HDB3码特点:

a) 无直流分量,高低频分量少,传输频带窄

b) 有不中断业务的误码检测能力

c) 频谱中不含时钟分量,但在收端进行全波整流,使之编程RZ码,可提取时钟

d) 克服AMI码不足,抑制长连“0”

#### 3.(数字)双相码:曼彻斯特码

编码规则:

| 二进制 | 数字双相码 |

| :----: | :----: |

| 1 | 01 |

| 0 | 10 |

![曼彻斯特码](https://raw.githubusercontent.com/simonid/img/master/通信原理/曼彻斯特码.PNG)

优点:

双相码波形时一种双极性NRZ波形,只有极性相反的两个电平。它在每个码元间隔的中心点都存在电平跳变,所以含有丰富的定时信息,且没有直流分量,编码国产也简单。

缺点:

占用带宽加倍,使得频带利用率低

#### 4.差分双相码

双相码是利用每个码元持续时间中间的电平跳变进行同步和信码表示(由负到整的跳变表示二进制“0”,反之为“1”)

在差分双相码编码中,每个码元中间的电平跳变用于同步,而每个码元开始处是否存在额外的跳变用于确定信码。有跳变则表示二进制“1”,反之为“0”

#### 5.CMI码

编码规则:

| 二进制码 | CMI |

| :---: | :---: |

| 0 | 01 |

| 1 | 00和11交替出现 |

特点:

编译码简单,便于设计和调试;有不终端业务的误码检测能力;含有较丰富位定时信息

与NRZ码相比,速率提高一倍,所占带宽也增加了

#### 6.块编码

#### 7.密勒码

信道.md

复制代码

# 信道

### 分类

  • 狭义信道:信号的传输媒介

    1. 有线信道
    2. 无线信道
  • 广义信道:媒介及有关变换装置(发送、接受设备,天线、馈线,调制解调器等)
    1. 调制信道

    指调制器输出端到解调器输入端的部分,又称为模拟信道。在研究调制和解调时,常用调制信道

  • 编码信道

指编码器器输出端到译码器输入端的部分,有时又称为数字信道/离散信道。

编码信道对信号传输的影响时将一种数字序列编程另一种数字序列

编码信道模型可用数字的转移概率来描述,转移概率表示信道输入端数字信号序列到输出端发生的转移程度

### 数学模型

调制信道的数学模型:

![调制信道的数学模型]()

调制信道含乘性干扰k(t),在分析它的时候,可以把信道粗略分为:

1) 恒参信道 :指k(t)可看成不随时间变化或相对于信道上传输信号的变化较慢的调制信道(常可等效为一个线性时不变网络)

2) 随参信道: k(t)随机变化

课程主要研究具有加性高斯白噪声的恒参信道

信道中的干扰:

1) 有源干扰 - 噪声干扰

2) 无源干扰 - 传输特性不良

失真:

1) 幅频失真

2) 相位失真

其他失真:略

## 信道容量

重点

分类:

离散和连续信道

### 离散信道

度量单位:

C - 每个符号能传输的平均信息量最大值

Ct - 单位时间(秒)内能传输的平均信息量最大值

二者可以互换

模型:

可分为有噪声信道和无噪声信道,可以用信道转移概率来合理描述信道干扰和信道统计特性

离散信道和“三要素”之间的关系:

信道容量C

$$ C = B\log2\left( 1+\frac{S}{N} \right) = B\log2\left( 1+\frac{S}{n_{0}B} \right) $$ (bit/s)

提高信噪比S/N可以增加信道容量

增加信道带宽B可以增加信道容量C,但不能无限制使其增大

$$ \lim_{B \to +\infty}C = \frac{S}{n_{0}} \log_{2}e \approx 1.44\frac{S}{N} $$

在信道容量C一定时,信噪比(S/N)与信道带宽(B)对信道传输能力的影响效果可以互换。增加信号带宽可以降低对信噪比要求

信噪比再小,即使S/N<1,信道容量也不会为0

也就是说,在弱信号强噪声情况下,信道也存在通信能力,只不过允许传输的信息率小而已

例题:

P83

np.fft.py

复制代码

#原文:https://blog.csdn.net/qq_39516859/article/details/79794549

import numpy as np#导入一个数据处理模块

import pylab as pl#导入一个绘图模块,matplotlib下的模块

sampling_rate = 8000#采样频率为8000Hz

fft_size = 512 #FFT处理的取样长度

t = np.arange(0, 1.0, 1.0/sampling_rate)#np.arange(起点,终点,间隔)产生1s长的取样时间

x = np.sin(2*np.pi*156.25*t) + 2*np.sin(2*np.pi*234.375*t)#两个正弦波叠加,156.25HZ和234.375HZ

# N点FFT进行精确频谱分析的要求是N个取样点包含整数个取样对象的波形。因此N点FFT能够完美计算频谱对取样对象的要求是n*Fs/N(n*采样频率/FFT长度),

# 因此对8KHZ和512点而言,完美采样对象的周期最小要求是8000/512=15.625HZ,所以156.25的n为10,234.375的n为15。

xs = x[:fft_size]# 从波形数据中取样fft_size个点进行运算

xf = np.fft.rfft(xs)/fft_size# 利用np.fft.rfft()进行FFT计算,rfft()是为了更方便对实数信号进行变换,由公式可知/fft_size为了正确显示波形能量

# rfft函数的返回值是N/2+1个复数,分别表示从0(Hz)到sampling_rate/2(Hz)的分。

#于是可以通过下面的np.linspace计算出返回值中每个下标对应的真正的频率:

freqs = np.linspace(0, sampling_rate/2, fft_size/2+1)

# np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

#在指定的间隔内返回均匀间隔的数字

xfp = 20*np.log10(np.clip(np.abs(xf), 1e-20, 1e100))

#最后我们计算每个频率分量的幅值,并通过 20*np.log10()将其转换为以db单位的值。为了防止0幅值的成分造成log10无法计算,我们调用np.clip对xf的幅值进行上下限处理

#绘图显示结果

pl.figure(figsize=(8,4))

pl.subplot(211)

pl.plot(t[:fft_size], xs)

pl.xlabel(u"Time(S)")

pl.title(u"156.25Hz and 234.375Hz WaveForm And Freq")

pl.subplot(212)

pl.plot(freqs, xfp)

pl.xlabel(u"Freq(Hz)")

pl.subplots_adjust(hspace=0.4)

pl.show()

fft.m

复制代码

# https://www.cnblogs.com/alimy/p/9140695.html

fs = 1000; %Hz 采样频率

Ts = 1/fs;

N = 1000; %序列长度

t = (0:N-1)*Ts;

delta_f = 1*fs/N;

f1 = 50;

f2 = 100;

f3 = 200;

f4 = 400;

x1 = 2*0.5*sin(2*pi*f1*t);

x2 = 2*0.5*sin(2*pi*f2*t);

x3 = 2*0.5*sin(2*pi*f3*t);

x4 = 2*0.5*sin(2*pi*f4*t);

x = x1 + x2 + x3 + x4; %待处理信号由四个分量组成

X = fftshift(abs(fft(x)))/N;

X_angle = fftshift(angle(fft(x)));

f = (-N/2:N/2-1)*delta_f;

figure(1);

subplot(3,1,1);

plot(t,x);

title('原信号');

subplot(3,1,2);

plot(f,X);

grid on;

title('原信号频谱幅度特性');

subplot(3,1,3);

plot(f,X_angle);

title('原信号频谱相位特性');

grid on;

scipy.fftpack.py

复制代码

import numpy as np

from scipy.fftpack import fft,ifft

import matplotlib.pyplot as plt

import seaborn

#采样点选择1400个,因为设置的信号频率分量最高为600赫兹,根据采样定理知采样频率要大于信号频率2倍,所以这里设置采样频率为1400赫兹(即一秒内有1400个采样点,一样意思的)

x=np.linspace(0,1,1400)

#设置需要采样的信号,频率分量有180,390和600

y=7*np.sin(2*np.pi*180*x) + 2.8*np.sin(2*np.pi*390*x)+5.1*np.sin(2*np.pi*600*x)

yy=fft(y) #快速傅里叶变换

yreal = yy.real # 获取实数部分

yimag = yy.imag # 获取虚数部分

yf=abs(fft(y)) # 取绝对值

yf1=abs(fft(y))/len(x) #归一化处理

yf2 = yf1[range(int(len(x)/2))] #由于对称性,只取一半区间

xf = np.arange(len(y)) # 频率

xf1 = xf

xf2 = xf[range(int(len(x)/2))] #取一半区间

plt.subplot(221)

plt.plot(x[0:50],y[0:50])

plt.title('Original wave')

plt.subplot(222)

plt.plot(xf,yf,'r')

plt.title('FFT of Mixed wave(two sides frequency range)',fontsize=7,color='#7A378B') #注意这里的颜色可以查询颜色代码表

plt.subplot(223)

plt.plot(xf1,yf1,'g')

plt.title('FFT of Mixed wave(normalization)',fontsize=9,color='r')

plt.subplot(224)

plt.plot(xf2,yf2,'b')

plt.title('FFT of Mixed wave)',fontsize=10,color='#F08080')

plt.show()

form_pin

form_pin

复制代码

Sub char1()

Charts.Add

ActiveChart.ChartType = xlPie

ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A1:B4")

ActiveChart.ApplyDataLabels AutoText:=True, LegendKey:=False, HasLeaderLines:=True, ShowSeriesName:=False, ShowCategoryName:=False, ShowValue:=False, ShowPercentage:=True, ShowBubbleSize:=False

ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"

End Sub

Function MyChart(Optional ByVal MyChart_Name As String = "我的图表", Optional ByVal MyChart_Type As XlChartType =

xlColumnClustered, _

Optional ByVal MyChart_Source As Range = Nothing, Optional ByVal MyChart_Plotby As XlRowCol = xlRows, _

Optional ByVal MyChart_Title As Boolean = True, Optional ByVal MyChart_TitleText As String = "标题", _

Optional ByVal MyChart_HasLegend As Boolean = False, _

Optional ByVal MyChart_Left As Integer = 420, Optional ByVal MyChart_Top As Integer = 250, _

Optional ByVal MyChart_Width As Integer = 300, Optional ByVal MyChart_Height As Integer = 200) As Boolean

参数(可选):

MyChart_Name As String = "我的图表" 字符型,设置图表的名称,默认值="我的图表"

MyChart_Type As XlChartType = xlColumnClustered XlChartType枚举,设置图表类型,默认值=xlColumnClustered簇状柱形图

MyChart_Source As Range = Nothing 单元格对象,设置图表数据源,默认为空

MyChart_Plotby As XlRowCol = xlRows XlRowCol枚举,设置图表数据系列的数值是处于行中还是列中,默认值=xlRows行中

MyChart_Title As Boolean = True 布尔型,设置图表有可见标题,默认值=True有可见标题

MyChart_TitleText As String = "标题" 字符型,设置图表的标题文本,默认值="标题"

MyChart_HasLegend As Boolean = False 布尔型,设置图表有图例,默认值=False没有图例

MyChart_Left As Integer = 420 整型,设置图表的左边距,默认值=420

MyChart_Top As Integer = 250 整型,设置图表的上边距,默认值=250

MyChart_Width As Integer = 300 整型,设置图表的宽度,默认值=300

MyChart_Height As Integer = 200 整型,设置图表的高度,默认值=200

以下为函数代码:

Function MyChart(Optional ByVal MyChart_Name As String = "我的图表", Optional ByVal MyChart_Type As XlChartType =

xlColumnClustered, _

Optional ByVal MyChart_Source As Range = Nothing, Optional ByVal MyChart_Plotby As XlRowCol = xlRows, _

Optional ByVal MyChart_Title As Boolean = True, Optional ByVal MyChart_TitleText As String = "标题", _

Optional ByVal MyChart_HasLegend As Boolean = False, _

Optional ByVal MyChart_Left As Integer = 420, Optional ByVal MyChart_Top As Integer = 250, _

Optional ByVal MyChart_Width As Integer = 300, Optional ByVal MyChart_Height As Integer = 200) As Boolean

Dim Mych As ChartObject '声明变量为嵌入式图表对象

On Error Resume Next '如出错,则从出错行下一行开始执行

Set Mych = ActiveSheet.ChartObjects(MyChart_Name) '设置对象

'MsgBox Err.Number

If Err.Number = -2147024809 Then '设置对象出错,没有对象

Set Mych = ActiveSheet.ChartObjects.Add(MyChart_Left, MyChart_Top, MyChart_Width, MyChart_Height) '添加嵌入图表,设置对

Mych.Name = MyChart_Name '设置对象名称

End If

Err.Clear '清除Err对象

On Error GoTo Myerr '如出错,则执行Myerr语句

With Mych.Chart

.ChartType = MyChart_Type '图表类型为xlLineMarkers_数据点折线图

.HasTitle = MyChart_Title '图表标题,可见则为 True

If MyChart_Title Then .ChartTitle.Characters.Text = MyChart_TitleText '图表标题文本

'.ChartTitle.Characters.Font.Size = 12 '设置标题的字号

.SetSourceData Source:=MyChart_Source, PlotBy:=MyChart_Plotby '为指定图表设置源数据区域

.HasLegend = MyChart_HasLegend '为False ,图表没有图例

End With

Mych.Activate '对象激活

MyChart = True '本函数返回True

Exit Function '退出函数

Myerr:

MyChart = False '本函数返回False

End Function

指定图表类型。

名称 值 描述

xl3DArea -4098三维面积图。

xl3DAreaStacked 78 三维堆积面积图。

xl3DAreaStacked100 79 百分比堆积面积图。

xl3DBarClustered 60 三维簇状条形图。

xl3DBarStacked 61 三维堆积条形图。

xl3DBarStacked100 62 三维百分比堆积条形图。

xl3DColumn -4100三维柱形图。

xl3DColumnClustered 54 三维簇状柱形图。

xl3DColumnStacked 55 三维堆积柱形图。

xl3DColumnStacked100 56 三维百分比堆积柱形图。

xl3DLine -4101三维折线图。

xl3DPie -4102三维饼图。

xl3DPieExploded 70 分离型三维饼图。

xlArea 1 面积图

xlAreaStacked 76 堆积面积图。

xlAreaStacked100 77 百分比堆积面积图。

xlBarClustered 57 簇状条形图。

xlBarOfPie 71 复合条饼图。

xlBarStacked 58 堆积条形图。

xlBarStacked100 59 百分比堆积条形图。

xlBubble 15 气泡图。

xlBubble3DEffect 87 三维气泡图。

xlColumnClustered 51 簇状柱形图。

xlColumnStacked 52 堆积柱形图。

xlColumnStacked100 53 百分比堆积柱形图。

xlConeBarClustered 102 簇状条形圆锥图。

xlConeBarStacked 103 堆积条形圆锥图。

xlConeBarStacked100 104 百分比堆积条形圆锥图。

xlConeCol 105 三维柱形圆锥图。

xlConeColClustered 99 簇状柱形圆锥图。

xlConeColStacked 100 堆积柱形圆锥图。

xlConeColStacked100 101 百分比堆积柱形圆锥图。

xlCylinderBarClustered 95 簇状条形圆柱图。

xlCylinderBarStacked 96 堆积条形圆柱图。

xlCylinderBarStacked100 97 百分比堆积条形圆柱图。

xlCylinderCol 98 三维柱形圆柱图。

xlCylinderColClustered 92 簇状柱形圆锥图。

xlCylinderColStacked 93 堆积柱形圆锥图。

xlCylinderColStacked100 94 百分比堆积柱形圆柱图。

xlDoughnut -4120圆环图。

xlDoughnutExploded 80 分离型圆环图。

xlLine 4 折线图。

xlLineMarkers 65 数据点折线图。

xlLineMarkersStacked 66 堆积数据点折线图。

xlLineMarkersStacked100 67 百分比堆积数据点折线图。

xlLineStacked 63 堆积折线图。

xlLineStacked100 64 百分比堆积折线图。

xlPie 5 饼图。

xlPieExploded 69 分离型饼图。

xlPieOfPie 68 复合饼图。

xlPyramidBarClustered 109 簇状条形棱锥图。

xlPyramidBarStacked 110 堆积条形棱锥图。

xlPyramidBarStacked100 111 百分比堆积条形棱锥图。

xlPyramidCol 112 三维柱形棱锥图。

xlPyramidColClustered 106 簇状柱形棱锥图。

xlPyramidColStacked 107 堆积柱形棱锥图。

xlPyramidColStacked100 108 百分比堆积柱形棱锥图。

xlRadar -4151雷达图。

xlRadarFilled 82 填充雷达图。

xlRadarMarkers 81 数据点雷达图。

xlStockHLC 88 盘高-盘低-收盘图。

xlStockOHLC 89 开盘-盘高-盘低-收盘图。

xlStockVHLC 90 成交量-盘高-盘低-收盘图。

xlStockVOHLC 91 成交量-开盘-盘高-盘低-收盘图。

xlSurface 83 三维曲面图。

xlSurfaceTopView 85 曲面图(俯视图)。

xlSurfaceTopViewWireframe 86 曲面图(俯视线框图)。

xlSurfaceWireframe 84 三维曲面图(线框)。

xlXYScatter -4169散点图。

xlXYScatterLines 74 折线散点图。

xlXYScatterLinesNoMarkers 75 无数据点折线散点图。

xlXYScatterSmooth 72 平滑线散点图。

xlXYScatterSmoothNoMarkers73 无数据点平滑线散点图。

指定对应于特定数据系列的数值是处于行中还是列中。

名称 值 描述

xlColumns2 数据系列在行中。

xlRows 1 数据系列在列中。

Echarts(V4)是什么

Echarts(V4)是什么

echarts.md

复制代码

# Echarts

> 截止2018-3-12为止,Echarts的最新版本是4.0.4

- [介绍](#%E4%BB%8B%E7%BB%8D)

- [提供的可视化类型](#%E6%8F%90%E4%BE%9B%E7%9A%84%E5%8F%AF%E8%A7%86%E5%8C%96%E7%B1%BB%E5%9E%8B)

- [常规](#%E5%B8%B8%E8%A7%84)

- [统计](#%E7%BB%9F%E8%AE%A1)

- [地理数据可视化](#%E5%9C%B0%E7%90%86%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96)

- [关系数据可视化](#%E5%85%B3%E7%B3%BB%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96)

- [多维数据可视化](#%E5%A4%9A%E7%BB%B4%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96)

- [BI(Business Intelligence,商业智能)](#bibusiness-intelligence%E5%95%86%E4%B8%9A%E6%99%BA%E8%83%BD)

- [简单使用](#%E7%AE%80%E5%8D%95%E4%BD%BF%E7%94%A8)

- [初始化](#%E5%88%9D%E5%A7%8B%E5%8C%96)

- [数据配置](#%E6%95%B0%E6%8D%AE%E9%85%8D%E7%BD%AE)

- [较为常用的视图](#%E8%BE%83%E4%B8%BA%E5%B8%B8%E7%94%A8%E7%9A%84%E8%A7%86%E5%9B%BE)

## 介绍

一款使用广泛、使用JavaScript实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的矢量图形库[ZRender][],提供直观,交互丰富,可高度个性化定制的数据可视化图表`。

## 提供的可视化类型

> ***图和图之间支持混搭***

### 常规

- [折线图][series-line](`line`)

> 折线图是用折线将各个数据点标志连接起来的图表,用于展现数据的变化趋势。可用于直角坐标系和极坐标系上。

>

> ![折线图Sample](https://suyi123.com/files/blog/echarts/series-line/BeijingAQI.png "折线图Sample")

- [柱状图][series-bar](`bar`)

> 柱状/条形图 通过 柱形的高度/条形的宽度 来表现数据的大小,用于有至少一个类目轴或时间轴的直角坐标系上。

>

> ![柱状图Sample](https://suyi123.com/files/blog/echarts/series-bar/barDemo1.jpg "柱状图Sample")

- [散点图][series-scatter](`scatter`)

> 散点(气泡)图。直角坐标系上的散点图可以用来展现数据的 x,y 之间的关系,如果数据项有多个维度,其它维度的值可以通过不同大小的 `symbol` 展现成气泡图,也可以用颜色来表现。这些可以配合 [visualMap][] 组件完成。

>

> 可以应用在直角坐标系,极坐标系,地理坐标系上。

>

> ![散点图Sample](https://suyi123.com/files/blog/echarts/series-scatter/scatterDemo1.jpg "散点图Sample")

- [饼图][series-pie](`pie`)

> 饼图主要用于表现不同类目的数据在总和中的占比。每个的弧度表示数据数量的比例。

>

> *Tip*: 饼图更适合表现数据相对于总数的百分比等关系。如果只是表示不同类目数据间的大小,建议使用 [柱状图][series-bar],人们对于微小的弧度差别相比于微小的长度差别更不敏感,或者也可以通过配置 `roseType` 显示成南丁格尔图,通过半径大小区分数据的大小。

>

> ![饼图Sample](https://suyi123.com/files/blog/echarts/series-pie/pieDemo1.jpg "饼图Sample")

- [K线图][series-candlestick](`"candlestick"`/`"k"`)

> 用在哪儿应该都懂的。

>

> ![K线图Sample](https://suyi123.com/files/blog/echarts/series-candlestick/candlestickDemo1.jpg "K线图Sample")

### 统计

- [盒形图][series-boxplot](`boxplot`)

> [Boxplot][boxplot] 中文可以称为『箱形图』、『盒须图』、『盒式图』、『盒状图』、『箱线图』,是一种用作显示一组数据分散情况资料的统计图。它能显示出一组数据的最大值、最小值、中位数、下四分位数及上四分位数。

>

> ![盒形图Sample](https://suyi123.com/files/blog/echarts/series-boxplot/boxplotDemo1.jpg "盒形图Sample")

### 地理数据可视化

- [地图][series-map](`map`)(可以配合[visualMap][]使用)

> 地图主要用于地理区域数据的可视化,配合 [visualMap][] 组件用于展示不同区域的人口分布密度等数据。

>

> 多个地图类型相同的系列会在同一地图上显示,这时候使用第一个系列的配置项作为地图绘制的配置。

>

> ![地图Sample](https://suyi123.com/files/blog/echarts/series-map/iphone销量.png "地图Sample")

- [热力图][series-heatmap](`heatmap`)(必须配合[visualMap][]使用)

> 热力图主要通过颜色去表现数值的大小,必须要配合 [visualMap][] 组件使用。

>

> 可以应用在直角坐标系以及地理坐标系上,这两个坐标系上的表现形式相差很大,直角坐标系上必须要使用两个类目轴。

>

> ![热力图Sample](https://suyi123.com/files/blog/echarts/series-heatmap/heatMapDemo1.jpg "热力图Sample")

- [线图][series-lines](`lines`)

> 用于带有起点和终点信息的线数据的绘制,主要用于地图上的航线,路线的可视化。

>

> ![线图Sample](https://suyi123.com/files/blog/echarts/series-lines/linesDemo1.jpg "线图Sample")

### 关系数据可视化

- [关系图][series-graph](`graph`)

> 用于展现节点以及节点之间的关系数据。

>

> ![关系图Sample](https://suyi123.com/files/blog/echarts/series-graph/graphDemo1.jpg "关系图Sample")

- [treemap][series-treemap](`treemap`)

> [treemap][series-treemap] 是一种常见的表达『层级数据』『树状数据』的可视化形式。它主要用面积的方式,便于突出展现出『树』的各层级中重要的节点。

>

> ![treemapSample](https://suyi123.com/files/blog/echarts/series-treemap/treemapDemo1.jpg "treemapSample")

- [旭日图][series-sunburst](`sunburst`)

> [旭日图(Sunburst)][series-sunburst]由多层的环形图组成,在数据结构上,内圈是外圈的父节点。因此,它既能像饼图一样表现局部和整体的占比,又能像矩形树图一样表现层级关系。

>

> ![旭日图Sample](https://suyi123.com/files/blog/echarts/series-sunburst/sunburstDemo1.jpg "旭日图Sample")

### 多维数据可视化

- [平行坐标][series-parallel](`parallel`)

> 平行坐标系(Parallel Coordinates) 是一种常用的可视化高维数据的图表

>

> ![平行坐标Sample](https://suyi123.com/files/blog/echarts/series-parallel/parallelDemo1.jpg "平行坐标Sample")

### BI(Business Intelligence,商业智能)

- [漏斗图][series-funnel](`funnel`)

> ![漏斗图Sample](https://suyi123.com/files/blog/echarts/series-funnel/漏斗图.png "漏斗图Sample")

- [仪表盘][series-gauge](`gauge`)

> ![仪表盘Sample](https://suyi123.com/files/blog/echarts/series-guage/guageDemo1.png "仪表盘Sample")

Echarts官网文字介绍的就是如上几种,另外还有一些类型的图,如`涟漪特效动画的散点(气泡)图`[effectScatter][series-effectScatter]、`雷达图`[radar][series-radar]、`树图`[tree][series-tree]、`桑基图`[sankey][series-sankey]、`象形柱图`[pictorialBar][series-pictorialBar]、`主题河流`[themeRiver][series-themeRiver]等,就不作介绍了。

## 简单使用

> 主要说一下[初始化][echarts-init]和[数据配置][echarts-options]

### 初始化

```js

echarts.init(dom: HTMLDivElement|HTMLCanvasElement, theme?: Object|string, opts?: {

devicePixelRatio?: number

renderer?: string

width?: number|string

height? number|string

}) => ECharts

```

指定dom容器,可以设置颜色主题和基本参数(如 `渲染器renderer => canvas 或者 svg` `宽度width` `高度height`)。

### 数据配置

Echarts支持的配置数据项有很多,具体可以访问[链接][echarts-options]。

## 较为常用的视图

以个人经验,可能用得到的是:

- [折线图][series-line]

- [柱状图][series-bar]

- [饼图][series-pie]

- [热力图][series-heatmap]

- [treemap][series-treemap]

- [旭日图][series-sunburst]

- [仪表盘][series-gauge]

[visualMap]: http://echarts.baidu.com/option.html#visualMap "visualMap"

[ZRender]: https://github.com/ecomfe/zrender "ZRender"

[boxplot]: https://baike.baidu.com/link?url=zZl_wQL0Gr9goPGG7XvC2uB80xYri9XL8mkTMCfpeTSF-lxqn7is9ewm_KOmeLTbj1HwCrUbLmSyk3QBgwi6JUonisRRxQMxLNvCdbYoWu_AmtzlmXBBHr3j55ZSk6n7 "盒形图(百度百科)"

[series-line]: http://echarts.baidu.com/option.html#series-line "折线图"

[series-bar]: http://echarts.baidu.com/option.html#series-bar "柱状图"

[series-scatter]: http://echarts.baidu.com/option.html#series-scatter "散点(气泡)图"

[series-pie]: http://echarts.baidu.com/option.html#series-pie "饼图"

[series-candlestick]: http://echarts.baidu.com/option.html#series-candlestick "K线图"

[series-boxplot]: http://echarts.baidu.com/option.html#series-boxplot "盒形图"

[series-map]: http://echarts.baidu.com/option.html#series-map "地图"

[series-heatmap]: http://echarts.baidu.com/option.html#series-heatmap "热力图"

[series-lines]: http://echarts.baidu.com/option.html#series-lines "线图"

[series-graph]: http://echarts.baidu.com/option.html#series-graph "关系图"

[series-treemap]: http://echarts.baidu.com/option.html#series-treemap "treemap"

[series-sunburst]: http://echarts.baidu.com/option.html#series-sunburst "旭日图"

[series-parallel]: http://echarts.baidu.com/option.html#series-parallel "平行坐标"

[series-funnel]: http://echarts.baidu.com/option.html#series-funnel "漏斗图"

[series-gauge]: http://echarts.baidu.com/option.html#series-gauge "仪表盘"

[series-effectScatter]: http://echarts.baidu.com/option.html#series-effectScatter "带有涟漪特效动画的散点(气泡)图"

[series-radar]: http://echarts.baidu.com/option.html#series-radar "雷达图"

[series-tree]: http://echarts.baidu.com/option.html#series-tree "树图"

[series-sankey]: http://echarts.baidu.com/option.html#series-sankey "桑基图"

[series-pictorialBar]: http://echarts.baidu.com/option.html#series-pictorialBar "象形柱图"

[series-themeRiver]: http://echarts.baidu.com/option.html#series-themeRiver "主题河流"

[echarts-init]: http://echarts.baidu.com/api.html#echarts.init "Echarts初始化"

[echarts-options]: http://echarts.baidu.com/option.html#title "Echarts配置项"

readme.md

复制代码

[TOC]

# Relay IR介绍

Relay IR是第二代NNVM。这里简单总结设计目标,在后面对每个要点进行详细介绍。

- 支持传统的数据流编程和转换。

- 支持functional-style scoping,让它绑定和构造成功能完整的不同语言。

- 允许用户混合两种编程风格

## 使用Relay构建计算图

传统的深度学习框架使用计算图作为其中间表示IR。计算图(或数据流图)是表示计算的有向无环图(DAG)。尽管由于缺乏控制流,数据流图在它们能够表达的计算方面受到限制,但是它们的简单性使得更容易实现异构执行环境的自动区分和编译(例如,在专用硬件上执行图的部分)。

![](https://raw.githubusercontent.com/tvmai/tvmai.github.io/master/images/relay/dataflow.png)

你可以使用Relay构建计算(数据流)图。具体来说,上面的代码显示了如何构造一个简单的双节点图。你可以发现该示例的语法与现有的计算图形IR(如NNVMv1)没有区别,唯一的区别在于术语:

- 现有框架通常使用图和子图

- Relay使用函数(例如,`fn(%x)`)表示图

每个数据流节点都是Relay中的CallNode。 Relay Python DSL允许你快速构建数据流图。我们要在上面的代码中强调一件事 - 我们显式构造了一个Add节点,其输入点都指向%1。当深度学习框架评估上述程序时,它将按拓扑顺序计算节点,而%1将仅计算一次。虽然这件事对于深度学习框架构建者来说非常自然,但这可能会让PL研究人员首先感到惊讶。如果我们实现一个简单的访问者打印出结果并将结果视为嵌套的Call表达式,它将变为log(%x)+ log(%x)。

当DAG中存在共享节点时,这种不明确性是由程序语义的不同解释引起的。在正常的函数式编程IR中,嵌套表达式被视为表达式树,而不考虑%1实际上在%2中重复使用两次的事实。

Relay IR与传统深度学习框架的细微差异在于,通常深度学习框架用户以这种方式构建计算图,其中经常发生DAG节点重用。当我们以文本格式打印出中继程序时,我们每行打印一个CallNode并为每个CallNode分配一个临时id(%1,%2),以便在程序的后续部分中引用每个公共节点。

## Module:支持多函数(Graphs)

matplotlib各种基础图汇总

matplotlib各种基础图汇总

matplotlib_basic_pic.py

复制代码

from matplotlib.pyplot import *

# 输入样本数据

x = [1, 2, 3, 4]

y = [5, 4, 3, 2]

# 创建一个新图像

figure()

# 将图像分为2 * 3的表格, 同时选定绘图区1, 绘制一个条形图

subplot(231)

plot(x, y)

# 选定绘图区2, 并绘制条形图

subplot(232)

bar(x, y)

# 水平条形图

subplot(233)

barh(x, y)

# 创建层叠条形图, 首先绘制底部数据

subplot(234)

bar(x, y)

# 然后绘制上部数据, 指定该条形图底部为y, 并且本条形图的颜色为红色

y1 = [7, 8, 5, 3]

bar(x, y1, bottom=y, color="r")

# 绘制箱型图 TODO 箱型图有什么用?

subplot(235)

boxplot(x)

# 散点图

subplot(236)

scatter(x, y)

# 统一显示图像

show()

wpf 音频波形图_wpf波形图 - IT屋-程序员软件开发技术分享社区相关推荐

  1. python电影评价分析.dat_python读DAT - IT屋-程序员软件开发技术分享社区

    如果文件存在或者不存在,将文件打开为读/写的最佳方式是什么?然后创建并以读/写方式打开文件?从我读的, file = open('myfile.dat','rw')应该这样做,对吧? 它不适用于我(P ...

  2. python在工业上的应用_工业+python - IT屋-程序员软件开发技术分享社区

    无限分类数据树形格式化.php 复制代码 /** * 此方法由@Tonton 提供 * http://my.oschina.net/u/918697 * @date 2012-12-12 */ fun ...

  3. 好程序员web前端技术分享媒体查询

    为什么80%的码农都做不了架构师?>>>    好程序员web前端技术分享媒体查询 什么是媒体查询 媒体查询可以让我们根据设备显示器的特性(如视口宽度.屏幕比例.设备方向:横向或纵向 ...

  4. 好程序员大数据技术分享:Zookeeper集群管理与选举

    为什么80%的码农都做不了架构师?>>>    大数据技术的学习,逐渐成为很多程序员的必修课,因为趋势也是因为自己的职业生涯.在各个技术社区分享交流成为很多人学习的方式,今天很荣幸找 ...

  5. 程序员软件开发 面试常见问题

    1.请你自我介绍一下你自己, 回答提示:一般人回答这个问题过于平常,只说姓名.年龄.爱好.工作经验 ,这些在简历上都有,其实,企业最希望知道的是求职者能否胜任工作,包括:最强的技能.最深入研究的知识领 ...

  6. 阿波罗登月51周年,程序员用DAIN技术还原阿波罗登月高清影像,效果震撼

    简介:7月20日是阿波罗登月51周年.一位YouTube名为DutchSteamMachine的程序员使用AI技术修复了阿波罗登月的原始影像,将登月镜头的像素从每秒12帧提升到每秒60帧,效果令人震撼 ...

  7. 好程序员web前端培训分享做H5页面需要学什么

    好程序员web前端培训分享做H5页面需要学什么,很多人问过我这个问题,而问这个问题的人基本上都是刚听说过h5,处在懵懂的阶段,他们往往会被一些网上炫酷页面所吸引,开始的目的也很简单,能通过自己的努力做 ...

  8. 程序员如何讲清楚技术方案

    最近在评审技术方案,和代码review的时候,遇到刚入行的同学们,很多都讲不清楚技术方案. 具体表现是: – 上来不说需求,直接说算法实现.台下一头雾水,根本不知道设计方案是否合理. – 描述完需求后 ...

  9. 好程序员web前端教程分享JavaScript验证API

    好程序员web前端教程分享JavaScript验证API,小编每天会分享一下干货给大家.那么今天说道的就是web前端培训课程中的章节. JavaScript验证API 约束验证DOM方法 Proper ...

最新文章

  1. 分段路由SR应用场景—Vecloud
  2. C/C++中使用函数memset对int型数组赋值(0,-1,max,min)
  3. Hibernate入门之关系篇:多对一和一对多映射
  4. 带你了解C#每个版本新特性
  5. C语言 结构体练习之投票
  6. 推荐系统学习(一)推荐系统分类与基本流程
  7. opc 多点位一次性读_如何使用Excel通过OPC访问WinCC的实时数据
  8. RSG.CFS.v8.0.2 1CD(综合性通用冷弯型钢构件设计工具)
  9. 关于人脸识别的最全研究!
  10. 中国八横八纵大容量光纤通信网——世界级光纤通信网
  11. js中RGB与十六进制颜色转换
  12. 对物联网的感悟_请谈谈你对物联网的看法?
  13. 【MATLAB Image Processing Toolbox 入门教程三】快速入门之“在多光谱图像中寻找植被”
  14. 申宝市场放量了10%还是很强势
  15. 考研数二第十七讲 反常积分与反常积分之欧拉-泊松(Euler-Poisson)积分
  16. Java服务器、android连接小票打印机打印(亲测可用)
  17. 魔兽世界服务器维护时间拍卖行,魔兽世界8.0拍卖行更新_魔兽世界8.0拍卖行更新了什么_3DM网游...
  18. 三招教你图片文字转语音怎么转
  19. 你不知道的20万sql盲注(速来)
  20. 公司海外邮箱注册指南,外贸公司邮箱注册流程

热门文章

  1. 天道不一定酬勤,深度思考比勤奋更重要
  2. 目录中的pwd、cd及ls命令
  3. lai kan kan
  4. user-select的详细用法
  5. Words Accumulation
  6. C++的灵魂核心-类
  7. Android ley hash的生成
  8. 5位音视频技术专家热议WebRTC、Qos、AI、4K
  9. (开拓者)团队任务1:第一次团队会议
  10. 2022秋科学道德与学风雨课堂期末考试B卷