MATLAB 的 arrow3 函数可以方便地在 figure 窗口中绘制箭头,效率也还可以,这里简单介绍其基本使用方法以便读者参考。对于一般的使用场景而言arrow3的使用十分简单方便。但是,arrow3 是R13版本中的函数,后续已不再更新,对于需要绘制较多矢量箭头的场景,推荐使用 quiver 和 quiver3 函数。对于采用箭头作为注释的场景,推荐使用 annotation 函数。

文章目录

  • arrow3
    • 基础绘图方式
    • 进阶绘图方式
    • 颜色设定
      • S 参数的使用
      • 全局变量 ColorOrder
    • arrow3 官方帮助文档
  • quiver3
    • 基础绘图方式
    • 进阶绘图方式

arrow3

基础绘图方式

arrow3 的基础绘图方式只需要指定箭头的起点(N x 3)、终点(N x 3)。如下:

figure;
arrow3([0 0 0],[1 1 1]);
grid on;

绘图效果如下:

如果给出多个起点、终点,便可以绘制多段箭头图形,注意起点、终点都是行向量。

figure;
arrow3([0 0 0;1 1 1],[1 1 1;2 1 1]);
grid on;


arrow3 可以用来绘制2D或3D的箭头。

进阶绘图方式

下面看看更复杂的绘图,使用 arrow3 可以指定箭头的颜色、尺寸、线形等等信息。
arrow3 完整的参数表为:

arrow3(P1,P2,S,W,H,IP,ALPHA,BETA)

其中最常用的 ‘S’ 参数可以指定颜色。

figure;
P1 = [0 0 0; 1 0 0; 1 0 1; 1 1 1; 0 1 0];
P2 = [P1(2:end,:); [0 1 1]];
S = 'b';
arrow3(P1,P2,S);
grid on;


颜色的设置代码可以参考官方帮助文档。颜色的设置可以十分灵活,例如可以通过前缀 ‘_’ 和 ‘^’ 改变颜色的深浅,深浅度由 BETA 参数指定;可以将颜色设置成随机的 ‘x’、按顺序的 ‘o’ 以及按幅度的 ‘|’;

figure;
P1 = [0 0 0; 1 0 0; 1 0 1; 1 1 1; 0 1 0];
P2 = [P1(2:end,:); [0 1 1]];
S = '_o';
arrow3(P1,P2,S);
grid on;

利用 S 参数,我们还可以指定箭头的其它特征,如线形和线的宽度,具体参考官方帮助文档。

figure;
S = 'x2.5';
arrow3(zeros(20,3),50*rand(20,3),S,2)
grid on;

为了效率,请尽量使用一种颜色。在这里有个疑问:箭头的颜色和线的颜色为什么有时候一样有时候不同?这个问题将在下一节讨论。

W 和 H 参数分别指定箭头的宽度和高度:

figure;
P1 = [0 0 0; 1 0 0; 1 0 1; 1 1 1; 0 1 0];
P2 = [P1(2:end,:); [0 1 1]];
S = '_o';
arrow3(P1,P2,S, 2.0, 6.0);
grid on;


IP 参数指定箭头起点的宽度:

figure;
P1 = [0 0 0; 1 0 0; 1 0 1; 1 1 1; 0 1 0];
P2 = [P1(2:end,:); [0 1 1]];
S = 'o';
arrow3(P1,P2,S, 2.0, 6.0, 2);
grid on;


ALPHA 参数用来指定箭头图形的透明度,取值[0,1]。BETA 参数用来指定颜色变深浅的成都,取值[0,1]。

figure;
P1 = [0 0 0; 1 0 0; 1 0 1; 1 1 1; 0 1 0];
P2 = [P1(2:end,:); [0 1 1]];
S = 'o';
arrow3(P1,P2,S, 2.0, 6.0, 2, 0.2);
grid on;


注意:对于不需要指定的参数,可以采用 ‘[]’ 跳过

颜色设定

颜色的设定是 arrow3 使用中较为复杂的环节。有三种方式可以指定箭头颜色:使用 ‘S’ 参数、使用全局变量 ‘ColorOrder’ 和设定 ‘gca’。这里仅介绍前两种方式,第3种请参考官方帮助文档。

S 参数的使用

事实上,arrow3 中 ‘S’ 参数若仅包含对箭头部分的颜色设定,而线部分则取决于MATLAB中的绘图颜色计数,如:

figure;
theta=[0:pi/22:pi/2]';
arrow3(zeros(12,2),[cos(theta),sin(theta)],'c',1.5,[],[],[],0.5);
hold on;
arrow3(zeros(12,2),[cos(theta+pi/2),sin(theta+pi/2)],'j',1.5,[],[],[],0.5)
arrow3(zeros(12,2),[cos(theta+pi),sin(theta+pi)],'z',1.5,[],[],[],0.5)
axis([-Inf,Inf, -Inf, Inf]);
grid on;


三个 ‘S’ 值指定了箭头的颜色,而线的三种颜色事实上是因为绘制了三次,采用了MATLAB绘图的颜色计数,这个计数顺序实际上等同于将 ‘S’ 值设定为 ‘o’ 时的顺序。我们同样可以在一次绘图中让线的颜色也按顺序出现,只需在 ‘S’ 参数中加入 ‘*’ ,如:

figure;
theta=[0:pi/22:pi/2]';
arrow3(zeros(12,2),[cos(theta),sin(theta)],'c*',1.5,[],[],[],0.5);
hold on;
axis([-Inf,Inf, -Inf, Inf]);
grid on;


如果将 ‘S’ 参数设定为按顺序 ‘o’ 或者随机 ‘x’,那么箭头部分与线部分的颜色会被同时影响,如:

figure;
theta=[0:pi/22:pi/2]';
arrow3(zeros(12,2),[cos(theta),sin(theta)],'o',1.5,[],[],[],0.5);
hold on;
arrow3(zeros(12,2),[cos(theta+pi/2),sin(theta+pi/2)],'j',1.5,[],[],[],0.5)
arrow3(zeros(12,2),[cos(theta+pi),sin(theta+pi)],'z',1.5,[],[],[],0.5)
axis([-Inf,Inf, -Inf, Inf]);
grid on;


我们采用 ‘S’ 参数并不能直接控制线部分的颜色。

全局变量 ColorOrder

另外一种设置颜色的方式是重定义 ‘ColorOrder’ 全局变量。此时需要将 ‘S’ 参数设定为 ‘o’。全局变量 ‘ColorOrder’ 的默认值是 ‘bersvpd’。我们可以在其中加入 ‘_’ 或 ‘^’ 前缀来改变颜色的深浅。例如:

figure;
global ColorOrder, ColorOrder='^ss_s';
theta=[0:pi/22:pi/2]';
arrow3(zeros(12,2),[cos(theta),sin(theta)],'o',1.5,[],[],[],0.5);
hold on;
arrow3(zeros(12,2),[cos(theta+pi/2),sin(theta+pi/2)],'k',1.5,[],[],[],0.5)
axis([-Inf,Inf, -Inf, Inf]);
grid on;


可以看出,设置 ‘S’ 参数为 ‘o’ 同时影响了线部分的颜色计数。同上,我们只要指定线形标志 ‘*’ 即可让线部分颜色按 ‘ColorOrder’ 顺序变化:

figure;
global ColorOrder, ColorOrder='^ss_s_zz^z';
theta=[0:pi/22:pi/2]';
arrow3(zeros(12,2),[cos(theta),sin(theta)],'o',1.5,[],[],[],0.5);
hold on;
arrow3(zeros(12,2),[cos(theta+pi/2),sin(theta+pi/2)],'*k',1.5,[],[],[],0.5)
axis([-Inf,Inf, -Inf, Inf]);
grid on;

arrow3 官方帮助文档

arrow3 (R13)
arrow3(P1,P2) draws lines from P1 to P2 with directional arrowheads. P1 and P2 are either nx2 or nx3 matrices. Each row of P1 is an initial point, and each row of P2 is a terminal point.

arrow3(P1,P2,S,W,H,IP,ALPHA,BETA) can be used to specify properties of the line, initial point marker, and arrowhead. S is a character string made with one element from any or all of the following 3 columns:

  Color Switches      LineStyle            LineWidth------------------  -------------------  --------------------k  blacK (default)  -  solid (default)   0.5 points (default)y  Yellow           :  dotted            0   no linesm  Magenta          -. dashdot           /   LineWidthOrderc  Cyan             -- dashedr  Red              *  LineStyleOrder            _______ __  g  Green                                       ^        |    b  Blue                                       / \       |    w  White                        Arrowhead    /   \   Height  a  Asparagus                                /     \     |    d  Dark gray                               /       \    |    e  Evergreen                              /___   ___\ __|__  f  Firebrick                             |    | |    |       h  Hot pink                              |-- Width --|       i  Indigo                                |    | |    |       j  Jade                                       | |            l  Light gray                                 | |            n  Nutbrown                                   | |            p  Pear                                       | |            q  kumQuat                      Line       -->| |<--LineWidths  Sky blue                                   | |            t  Tawny                                      | |            u  bUrgundy                                   | |            v  Violet                                     | |            z  aZure                                      | |            x  random                       Initial      /   \           o  colorOrder                   Point    -->(     )<--IP     |  magnitude                    Marker       \_ _/           -------------------------------------------------------------Color Equivalencies-------------------------------------------------------------ColorOrder     Arrow3         |     Simulink       Arrow3----------     ----------     |     ----------     ----------Color1         Blue           |     LightBlue      aZureColor2         Evergreen      |     DarkGreen      AsparagusColor3         Red            |     Orange         kumQuatColor4         Sky blue       |     Gray           Light grayColor5         Violet         |Color6         Pear           |Color7         Dark gray      |-------------------------------------------------------------

The components of S may be specified in any order. Invalid characters in S will be ignored and replaced by default settings.

Prefixing the color code with ‘_’ produces a darker shade, e.g. ‘_t’ is dark tawny; prefixing the color code with ‘^’ produces a
lighter shade, e.g. ‘^q’ is light kumquat. The relative brightness of light and dark color shades is controlled by the scalar parameter BETA. Color code prefixes do not affect black (k), white (w), or the special color switches (xo|).

ColorOrder may be achieved in two fashions: The user may either set the ColorOrder property (using RGB triples) or define the
global variable ColorOrder (using a string of valid color codes). If the color switch is specified with ‘o’, and the global variable ColorOrder is a string of color codes (color switches less ‘xo|’, optionally prefixed with ‘_’ or ‘^’), then the ColorOrder property will be set to the sequence of colors indicated by the ColorOrder variable. The color sequence ‘bersvpd’ matches the default ColorOrder property. If the color switch is specified with ‘o’, and the global variable ColorOrder is empty or invalid, then the current ColorOrder property will be used. Note that the ColorOrder variable takes precedence over the ColorOrder property.

The magnitude color switch is used to visualize vector magnitudes in conjunction with a colorbar. If the color switch is specified
with ‘|’, colors are linearly interpolated from the current ColorMap according to the length of the associated line. This option sets
CLim to [MinM,MaxM], where MinM and MaxM are the minimum and maximum magnitudes, respectively.

The current LineStyleOrder property will be used if LineStyle is specified with ‘*’. MATLAB cycles through the line styles defined
by the LineStyleOrder property only after using all colors defined by the ColorOrder property. If however, the global variable
LineWidthOrder is defined, and LineWidth is specified with ‘/’, then each line will be drawn with sequential color, linestyle, and linewidth.

W (default = 1) is a vector of arrowhead widths; use W = 0 for no arrowheads. H (default = 3W) is a vector of arrowhead heights. If vector IP is neither empty nor negative, initial point markers will be plotted with diameter IP; for default diameter W, use IP = 0. The units of W, H and IP are 1/72 of the PlotBox diagonal.

ALPHA (default = 1) is a vector of FaceAlpha values ranging between 0 (clear) and 1 (opaque). FaceAlpha is a surface arrowhead and initial point marker) property and does not affect lines. FaceAlpha is not supported for 2D rendering.

BETA (default = 0.4) is a scalar that controls the relative brightness of light and dark color shades, ranging between 0 (no contrast) and 1 (maximum contrast).

Plotting lines with a single color, linestyle, and linewidth is faster than plotting lines with multiple colors and/or linestyles. Plotting lines with multiple linewidths is slower still. arrow3 chooses renderers that produce the best screen images; exported or printed plots may benefit from different choices.

arrow3(P1,P2,S,W,H,‘cone’,…) will plot cones with bases centered on P1 in the direction given by P2. In this instance, P2 is interpreted as a direction vector instead of a terminal point. Neither initial point markers nor lines are plotted with the ‘cone’ option.

HN = arrow3(P1,P2,…) returns a vector of handles to line and surface objects created by arrow3.

arrow3 COLORS will plot a table of named colors with default brightness. arrow3(‘colors’,BETA) will plot a table of named colors with brightness BETA.

arrow3 attempts to preserve the appearance of existing axes. In particular, arrow3 will not change XYZLim, View, or CameraViewAngle. arrow3 does not, however, support stretch-to-fill scaling. AXIS NORMAL will restore the current axis box to full size and remove any restrictions on the scaling of units, but will likely result in distorted arrowheads and initial point markers. See (arrow3_messes_up_my_plots.html).

If a particular aspect ratio or variable limit is required, use DASPECT, PBASPECT, AXIS, or XYZLIM commands before calling arrow3. Changing limits or aspect ratios after calling arrow3 may alter the appearance of arrowheads and initial point markers. arrow3 sets XYZCLimMode to manual for all plots, sets DataAspectRatioMode to manual for linear plots, and sets PlotBoxAspectRatioMode to manual for log plots and 3D plots. CameraViewAngleMode is also set to manual for 3D plots.

arrow3 UPDATE will restore the appearance of arrowheads and initial point markers that have become corrupted by changes to limits or aspect ratios. arrow3(‘update’,SF) will redraw initial point markers and arrowheads with scale factor SF. If SF has one element, SF scales W, H and IP. If SF has two elements, SF(1) scales W and IP, and SF(2) scales H. If SF has three elements, SF(1) scales W, SF(2) scales H, and SF(3) scales IP. All sizes are relative to the current PlotBox diagonal.

arrow3 UPDATE COLORS will update the magnitude coloring of arrowheads, initial point markers, and lines to conform to the current ColorMap.

HN = arrow3(‘update’,…) returns a vector of handles to updated objects.

EXAMPLES:

  % 2D vectorsarrow3([0 0],[1 3])arrow3([0 0],[1 2],'-.e')arrow3([0 0],[10 10],'--x2',1)arrow3(zeros(10,2),50*rand(10,2),'x',1,3)arrow3(zeros(10,2),[10*rand(10,1),500*rand(10,1)],'u')arrow3(10*rand(10,2),50*rand(10,2),'x',1,[],1)% 3D vectorsarrow3([0 0 0],[1 1 1])arrow3(zeros(20,3),50*rand(20,3),'--x1.5',2)arrow3(zeros(100,3),50*rand(100,3),'x',1,3)arrow3(zeros(10,3),[10*rand(10,1),500*rand(10,1),50*rand(10,1)],'a')arrow3(10*rand(10,3),50*rand(10,3),'x',[],[],0)% Cone plott=(pi/8:pi/8:2*pi)'; p1=[cos(t) sin(t) t]; p2=repmat([0 0 1],16,1);arrow3(p1,p2,'x',2,4,'cone'), hold onplot3(p1(:,1),p1(:,2),p1(:,3)), hold offpause % change cone sizearrow3('update',[1,2])% Just for funarrow3(zeros(100,3),50*rand(100,3),'x',8,4,[],0.95)light('position',[-10 -10 -10],'style','local')light('position',[60,60,60]), lighting gouraud% ColorOrder variable, color code prefixes, and Betaglobal ColorOrder, ColorOrder='^ui^e_hq^v';theta=[0:pi/22:pi/2]';arrow3(zeros(12,2),[cos(theta),sin(theta)],'1.5o',1.5,[],[],[],0.5)% ColorOrder property, LineStyleOrder, and LineWidthOrderglobal ColorOrder, ColorOrder=[];set(gca,'ColorOrder',[1,0,0;0,0,1;0.25,0.75,0.25;0,0,0])set(gca,'LineStyleOrder',{'-','--','-.',':'})global LineWidthOrder, LineWidthOrder=[1,2,4,8];w=[1,2,3,4]; h=[4,6,4,2];arrow3(zeros(4,2),[10*rand(4,1),500*rand(4,1)],'o*/',w,h,0)% Magnitude coloringcolormap springarrow3(20*randn(20,3),50*randn(20,3),'|',[],[],0)set(gca,'color',0.7*[1,1,1])set(gcf,'color',0.5*[1,1,1]), grid on, colorbarpause % change the ColorMap and update colorscolormap hotarrow3('update','colors')% LogLog plotset(gca,'xscale','log','yscale','log');axis([1e2,1e8,1e-2,1e-1]); hold onp1=repmat([1e3,2e-2],15,1);q1=[1e7,1e6,1e5,1e4,1e3,1e7,1e7,1e7,1e7,1e7,1e7,1e6,1e5,1e4,1e3];q2=1e-2*[9,9,9,9,9,7,5,4,3,2,1,1,1,1,1]; p2=[q1',q2'];global ColorOrder, ColorOrder=[];set(gca,'ColorOrder',rand(15,3))arrow3(p1,p2,'o'), grid on, hold off% SemiLogX plotset(gca,'xscale','log','yscale','linear');axis([1e2,1e8,1e-2,1e-1]); hold onp1=repmat([1e3,0.05],15,1);q1=[1e7,1e6,1e5,1e4,1e3,1e7,1e7,1e7,1e7,1e7,1e7,1e6,1e5,1e4,1e3];q2=1e-2*[9,9,9,9,9,7,5,4,3,2,1,1,1,1,1]; p2=[q1',q2'];arrow3(p1,p2,'x'), grid on, hold off% SemiLogY plotset(gca,'xscale','linear','yscale','log');axis([2,8,1e-2,1e-1]); hold onp1=repmat([3,2e-2],17,1);q1=[7,6,5,4,3,7,7,7,7,7,7,7,7,6,5,4,3];q2=1e-2*[9,9,9,9,9,8,7,6,5,4,3,2,1,1,1,1,1]; p2=[q1',q2'];set(gca,'LineStyleOrder',{'-','--','-.',':'})arrow3(p1,p2,'*',1,[],0), grid on, hold off% Color tablesarrow3('colors')           % default color tablearrow3('colors',0.3)       % low contrast color tablearrow3('colors',0.5)       % high contrast color table% Update initial point markers and arrowheads% relative to the current PlotBox diagonalarrow3('update')           % redraw same sizearrow3('update',2)         % redraw double sizearrow3('update',0.5)       % redraw half sizearrow3('update',[0.5,2,1]) % redraw W half size,%        H double size, and%        IP same size

See also (arrow3_examples.html), (arrow3_messes_up_my_plots.html).

quiver3

quiver3 通常用来绘制矢量图中的箭头。quiver3 的用法与 plot、scatter等非常相似,参数指定完全可以参考。

基础绘图方式

quiver3 函数的基本格式如下:

quiver3(X,Y,Z,U,V,W)

‘X’, ‘Y’, ‘Z’ 分别指定箭头起点,即位置;‘U’, ‘V’, ‘W’ 分别指定箭头的长度和方向,即速度。

figure;
quiver3(0,0,0,1,1,1);
axis([-Inf, Inf, -Inf, Inf]);
axis equal; grid on;


可以看出,quiver3 所绘制的箭头十分简洁,与 arrow3 的形式完全不同。其中颜色、线宽等参数可以采用plot的方式指定。

figure;
quiver3(0,0,0,1,1,1,'Color',[1.0,0.0,0.0],'LineWidth',2.0);
axis([-Inf, Inf, -Inf, Inf]);
axis equal; grid on;


我们也可以通过循环来分别制定颜色:

注意,此时我们无法分别指定箭头的颜色和线的颜色,二者只能相同。箭头的大小与线的长度有关,会自动根据线调整,不可精确指定。我们可以通过 ‘W’ 之后的一个输入参数 'scale‘ 来相对地调整箭头大小,将其设定为 ‘0’ 或者 ’ ‘off’ ’ 即可取消自动调整。也可以修改 'AutoScale’ 属性和’AutoScaleFactor‘属性来进行调整。

进阶绘图方式

这里仅介绍线形调整,用法如下:

quiver3(___,LineSpec)

通过指定 'LinSpec’ 参数来调整线形,线形标志与 arrow3 的多数相同。

figure;
quiver3(0,0,0,1,1,1, '--r','LineWidth',1.0);
axis([-Inf, Inf, -Inf, Inf]);
axis equal; grid on;


指定方式与 plot 基本相同,其余标志请参考官方帮助文档。

MATLAB箭头绘制 arrow3 函数与 quiver3 函数的实用教程相关推荐

  1. matlab中饼图绘制程序,MATLAB中绘制二维饼图的函数是(? ? ) (1.5分)

    MATLAB中绘制二维饼图的函数是(? ? ) (1.5分) 答:pie 计算机的内存储器比外存储器读写速度 ______ 答:快 新民主主义革命时期,提出了反帝反封建这个任务就等于真正懂得了什么叫反 ...

  2. matlab对数收益直方图,科学网—MATLAB中绘制数据直方图的新函数histogram2 - 王福昌的博文...

    MATLAB中有命令hist3() 可以绘制直方图,竖坐标是频数,这与一些教科书中用纵轴表示频率的做法不一致,有些时候不便于使用.当然,使用者可以自己编写定制能够在纵轴绘出频率的直方图.在MATLAB ...

  3. matlab画图总结——二维图plot函数、图形标注和坐标轴控制、饼图、条形图、排列图;三维图的绘制

    Matlab画图总结 1. 二维数据曲线图 1.1 绘制二维曲线的基本函数 1.plot()函数 2. 含多个输入参数的plot函数 3. 含选项的plot函数 4. 双纵坐标函数plotyy 1.2 ...

  4. MATLAB笔记---绘制三维图像

    记录几个MATLAB中绘制三维图像的常用函数 1.plot3(x,y,z) /plot3(x,y,z,LineSpec) 用于绘制三维空间中的坐标 需要注意的是当你要绘制由线段连接的一组坐标,那么就将 ...

  5. MATLAB笔记之复数以及基本复数函数二维视角(2d)图形绘制

    MATLAB笔记之复数以及基本复数函数二维视角(2d)图形绘制 QQ:3020889729 小蔡 一般复数的2d图形绘制 一般复数的平移图形~(即一个复数加另一个复数实现在复平面的平移) 补充几个复数 ...

  6. MATLAB绘制二维曲线-fplot函数

    MATLAB绘制二维曲线-fplot函数 fplot函数的基本用法 双输入函数参数的用法 fplot函数的基本用法 fplot(f,lims,选项) f代表一个函数,通常使用函数句柄的形式,lims为 ...

  7. matlab 画三条曲线,如何利用MATLAB(plot 3函数和fplot3函数)绘制三维曲线?

    文章目录 0 前言 1 plot3函数 1.1 plot3函数的基本用法 1.2 plot3(x,y,z)函数参数的变化形式 1.3 含多组输入参数的plot3函数 1.4 含选项的plot3函数 2 ...

  8. 用matlab绘制函数图形,matlab函数绘制 用matlab怎样绘制函数图形

    用matlab怎样绘制函数图形 函数f(x1,x2)= x1*cos x2*sin x1+x2*x2*sin x2*cos x1 0≤xi≤2∏的图形?x=0:0.1:2*pi; y=x; [x,y] ...

  9. Matlab中绘制函数图像的技巧

    Matlab拥有非常powerful的绘图功能,如果能够好好利用可以使得工作量大大得以简化,本文主要介绍如何用其来绘制2D的函数图形,也涉及其中的许多技巧. 1.基本绘图从赋值和plot()函数开始 ...

最新文章

  1. iOS - OC NSPoint 位置
  2. 十六届智能车全向组硬件开源 | 上海海事大学全向行进组
  3. Spring MVC @RequestMapping注解详解
  4. 《大型网站技术架构》读书笔记一:大型网站架构演化
  5. 银华基金:用小型机的群狼战术保驾护航!
  6. TiDB 在小米的应用实践
  7. vray阴天室内_阴天有话:第1部分
  8. 一个月学会Python的Quora指南和资料放送
  9. mAP提升40%!YOLO3改进版—— Poly-YOLO:更快,更精确的检测和实例分割
  10. HTML5 基础知识
  11. 汉化)称号插件.php,[管理|信息][UD]NameTags——基于权限的称号插件,兼容计分板,GUI显示[1.7.10-1.12.2]...
  12. debian9.4网络配置及永久静态默认路由
  13. 杭电4510为什么时光不能倒流
  14. 学习vue 20天,我写了点东西
  15. selenium+webdriver错误...exceptions.ElementNotInteractableException: Message: Element is not visible处理
  16. 超级记忆/图像数字记忆 110位数字图像转换表 31-40
  17. python复数类型的虚部通过_Python 复数数据类型详解(complex)[学习 Python 必备基础知识][看此一篇就够了]...
  18. 计算机窗口的PPT,PPT幻灯片基础入门01-认识窗口界面
  19. 升级pip 升级pip3的快速方法
  20. java何时new_何时使用lambda,何时使用Proc.new?

热门文章

  1. 7K7K小游戏《黑客是怎样炼成的》攻略
  2. 听著名服务端主程讲座有感 - archy_yu - 博客园
  3. 西安交大成立环保大数据研究中心
  4. 逆向的大门已经打开,就算为此过敏体质 也值了
  5. 清理好桌道壁纸右键菜单
  6. 【全网力荐】堪称最易学的Python基础入门教程
  7. 讲真,这两款idea插件,能治愈你英语不好的病
  8. VBS + SendKeys 方法
  9. java months between,ORACLE函数MONTHS_BETWEEN
  10. 【PP模块】工艺路线详解(Routing)