精华内容
下载资源
问答
  • matlab绘图之title函数

    万次阅读 2016-05-30 21:24:51
    title Add title to axes or legend collapse all in page Syntax title(txt) example title(txt,Name,Value) example title(obj,___) example t = ti

    title

    Add title to axes or legend

    Syntax

    Description

    example

    title(txt) adds the specified title at the top and in the center of the current axes. Reissuing the title command causes the new title to replace the old title.

    example

    title(txt,Name,Value) additionally specifies title properties using one or more Name,Value pair arguments.

    example

    title(obj,___) adds a title to the object specified by obj, instead of the current axes. Specify obj as either an axes object or a legend object. obj can precede any of the input argument combinations in the previous syntaxes.

    example

    t = title(___) returns the object used as the title text. Use t to make future modifications to the title.

    Examples

    collapse all

    Add Title to Current Figure

    Create a figure and display a title in the current axes.

    figure
    plot((1:10).^2)
    title('My Title')
    

    You also can call title with a function that returns a string. For example, the date function returns a string containing today's date.

    title(date)
    

    MATLAB® sets the output of date as the axes title.

    Include Variable's Value in Title

    Include the value of variable c in a title.

    figure
    plot((1:10).^2)
    f = 70;
    c = (f-32)/1.8;
    title(['Temperature is ',num2str(c),' C'])
    

    Create Multicolored Title Using TeX Markup

    In a TeX string, use the color modifier \color to change the color of characters following it from the previous color.

    figure
    plot((1:10).^2)
    title(['\fontsize{16}black {\color{magenta}magenta '...
    '\color[rgb]{0 .5 .5}teal \color{red}red} black again'])
    

    Create Colored Title Using Name,Value Pair Argument

    Use the Name,Value pair 'Color','m' to set the color of the title to magenta.

    figure
    plot((1:10).^2)
    title('Case number # 3','Color', 'm')
    

    Include Greek Symbols in Title

    Use a TeX string to include Greek symbols in a title.

    t = (0:0.01:0.2);
    y = exp(-25*t);
    figure
    plot(t,y)
    title('y = \ite^{\lambda t}','Color','b')
    

    The 'Interpreter' property must be 'tex' (the default).

    Include Superscript or Subscript Character in Title

    figure
    plot((1:10).^2)
    title('\alpha^2 and X_1')
    

    The superscript character, "^", and the subscript character, "_", modify the character or substring defined in braces immediately following.

    Create Multiline Title

    Create a multiline title using a multiline cell array.

    figure
    plot((1:10).^2)
    title({'First line';'Second line'})
    

    Display Text As Typed

    Set the Interpreter property as 'none' so that the string X_1 is displayed in the figure as typed, without making 1 a subscript of X.

    figure
    plot((1:10).^2)
    title('X_1','Interpreter','none')
    

    MATLAB® displays the string X_1 in the title of the figure.

    Add Title to Specific Axes

    Create two subplots and return the handles to the axes objects, s(1) and s(2).

    figure
    s(1) = subplot(2,1,1);
    plot((1:10).^2)
    s(2) = subplot(2,1,2);
    plot((1:10).^3)
    

    Add a title to each subplot by referring to its axes handle, s(1), or s(2).

    title(s(1),'Top Plot')
    title(s(2),'Bottom Plot')
    

    Add Title and Return Text Handle

    Add a title to a plot and return the text object.

    plot((1:10).^2)
    t = title('My Title');
    

    Set the color of the title to red. Starting in R2014b, you can use dot notation to set properties. If you are using an earlier release, use the set function instead.

    t.Color = 'red';
    

    Input Arguments

    collapse all

    txt — Text to display as titlecharacter array | cell array | numeric value

    Text to display as title, specified as a character array, cell array, or numeric value.

    Example: 'my label'

    Example: {'first line','second line'}

    Example: 123

    To include numeric variables with text in a title, use the num2str function. For example:

    x = 42;
    str = ['The value is ',num2str(x)];

    To include special characters, such as superscripts, subscripts, Greek letters, or mathematical symbols, use TeX markup. For a list of supported markup, see theInterpreter property.

    To create multiline titles:

    • Use a cell array where each cell contains a line of text, such as {'first line','second line'}.

    • Use a character array where each row contains a line of text, such as ['abc'; 'ab ']. If you use this technique, each row must have the same number of characters.

    • Use sprintf to create a character vector with a new line character, such as sprintf('first line \n second line').

    Numeric titles are converted to text using sprintf('%g',value). For example, 12345678 displays as 1.23457e+07.

    • Note:   The words defaultfactory, and remove are reserved words that will not appear in a title when quoted as a normal character vector. To display any of these words individually, precede them with a backslash, such as '\default' or '\remove'.

    obj — Target for titleaxes object | legend object

    Target for title, specified as an axes object or a legend object. If you do not specify an object, then title adds the title to the current axes.

    Name-Value Pair Arguments

    Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside single quotes (' '). You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

    Example: 'Color','red','FontSize',14 adds a title with red, 14-point font.

    In addition to the following, you can specify other text object properties using Name,Value pair arguments. See Text Properties.

    'FontSize' — Font size11 (default) | scalar value greater than 0

    Font size, specified as a scalar value greater than 0 in point units. One point equals 1/72 inch. To change the font units, use the FontUnits property.

    If you add a title to an axes object, then the font size properties for the axes also affect the title font size. The title font size updates to equal the axes font size multiplied by the title scale factor. The FontSize property of the axes contains the axes font size. The TitleFontSizeMultiplier property of the axes contains the scale factor. By default, the axes font size is 10 points and the scale factor is 1.1, so the title font size is 11 points.

    Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    'FontWeight' — Thickness of text characters'bold' (default) | 'normal'

    Thickness of the text characters, specified as one of these values:

    • 'bold' — Thicker characters outlines than normal

    • 'normal' — Normal weight as defined by the particular font

    MATLAB® uses the FontWeight property to select a font from those available on your system. Not all fonts have a bold font weight. Therefore, specifying a bold font weight could still result in the normal font weight.

    If you add a title to an axes object, then the TitleFontWeight property for the associated axes affects the FontWeight value for the title.

    • Note:   The 'light' and 'demi' font weight values have been removed. Use 'normal' instead.

    'FontName' — Font name'Helvetica' (default) | 'FixedWidth' | system supported font name

    Font name, specified as the name of the font to use or 'FixedWidth'. To display and print properly, the font name must be a font that your system supports.

    To use a fixed-width font that looks good in any locale, use 'FixedWidth'. The 'FixedWidth' value relies on the root FixedWidthFontName property. Setting the rootFixedWidthFontName property causes an immediate update of the display to use the new font.

    Example: 'Cambria'

    'Color' — Text color[0 0 0] (default) | RGB triplet | character vector | 'none'

    Text color, specified as a three-element RGB triplet, a character vector of a color name, or 'none'. The default color is black with an RGB triplet value of [0 0 0]. If you set the color to 'none', then the text is invisible.

    An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1], for example, [0.4 0.6 0.7]. This table lists the long and short color name options and the equivalent RGB triplet values.

    Long Name Short Name RGB Triplet
    'yellow' 'y' [1 1 0]
    'magenta' 'm' [1 0 1]
    'cyan' 'c' [0 1 1]
    'red' 'r' [1 0 0]
    'green' 'g' [0 1 0]
    'blue' 'b' [0 0 1]
    'white' 'w' [1 1 1]
    'black' 'k' [0 0 0]

    Example: 'blue'

    Example: [0 0 1]

    'Interpreter' — Interpretation of text characters'tex' (default) | 'latex' | 'none'

    Interpretation of text characters, specified as one of these values:

    • 'tex' — Interpret characters using a subset of TeX markup.

    • 'latex' — Interpret characters using LaTeX markup.

    • 'none' — Display literal characters.

    TeX Markup

    By default, MATLAB supports a subset of TeX markup. Use TeX markup to add superscripts and subscripts, modify the font type and color, and include special characters in the text.

    This table lists the supported modifiers with the Interpreter property set to 'tex'. Modifiers remain in effect until the end of the text. Superscripts and subscripts are an exception because they only modify the next character or the characters within the curly braces.

    Modifier Description Example
    ^{ } Superscript 'text^{superscript}'
    _{ } Subscript 'text_{subscript}'
    \bf Bold font '\bf text'
    \it Italic font '\it text'
    \sl Oblique font (usually the same as italic font) '\sl text'
    \rm Normal font '\rm text'
    \fontname{specifier} Font name — Set specifier as the name of a font family. You can use this in combination with other modifiers. '\fontname{Courier} text'
    \fontsize{specifier} Font size — Set specifier as a numeric scalar value in point units to change the font size. '\fontsize{15} text'
    \color{specifier} Font color — Set specifer as one of these colors: red,greenyellowmagentablueblackwhitegray,darkGreenorange, or lightBlue. '\color{magenta} text'
    \color[rgb]{specifier} Custom font color — Set specifier as a three-element RGB triplet. '\color[rgb]{0,0.5,0.5} text'

    This table lists the supported special characters with the Interpreter property set to 'tex'.

    Character Sequence Symbol Character Sequence Symbol Character Sequence Symbol

    \alpha

    α

    \upsilon

    υ

    \sim

    ~

    \angle

    \phi

    Φ

    \leq

    \ast

    *

    \chi

    χ

    \infty

    \beta

    β

    \psi

    ψ

    \clubsuit

    \gamma

    γ

    \omega

    ω

    \diamondsuit

    \delta

    δ

    \Gamma

    Γ

    \heartsuit

    \epsilon

    ɛ

    \Delta

    Δ

    \spadesuit

    \zeta

    ζ

    \Theta

    Θ

    \leftrightarrow

    \eta

    η

    \Lambda

    Λ

    \leftarrow

    \theta

    Θ

    \Xi

    Ξ

    \Leftarrow

    \vartheta

    ϑ

    \Pi

    Π

    \uparrow

    \iota

    ι

    \Sigma

    Σ

    \rightarrow

    \kappa

    κ

    \Upsilon

    ϒ

    \Rightarrow

    \lambda

    λ

    \Phi

    Φ

    \downarrow

    \mu

    µ

    \Psi

    Ψ

    \circ

    º

    \nu

    ν

    \Omega

    Ω

    \pm

    ±

    \xi

    ξ

    \forall

    \geq

    \pi

    π

    \exists

    \propto

    \rho

    ρ

    \ni

    \partial

    \sigma

    σ

    \cong

    \bullet

    \varsigma

    ς

    \approx

    \div

    ÷

    \tau

    τ

    \Re

    \neq

    \equiv

    \oplus

    \aleph

    \Im

    \cup

    \wp

    \otimes

    \subseteq

    \oslash

    \cap

    \in

    \supseteq

    \supset

    \lceil

    \subset

    \int

    \cdot

    ·

    \o

    ο

    \rfloor

    \neg

    ¬

    \nabla

    \lfloor

    \times

    x

    \ldots

    ...

    \perp

    \surd

    \prime

    ´

    \wedge

    \varpi

    ϖ

    \0

    \rceil

    \rangle

    \mid

    |

    \vee

    \langle

    \copyright

    ©

    LaTeX Markup

    To use LaTeX markup, set the Interpreter property to 'latex'. Use dollar symbols around the text, for example, use '$\int_1^{20} x^2 dx$' for inline mode or'$$\int_1^{20} x^2 dx$$' for display mode.

    The displayed text uses the default LaTeX font style. The FontNameFontWeight, and FontAngle properties do not have an effect. To change the font style, use LaTeX markup.

    The maximum size of the text that you can use with the LaTeX interpreter is 1200 characters. For multiline text, this reduces by about 10 characters per line.

    For more information about the LaTeX system, see The LaTeX Project website at http://www.latex-project.org/.

    Output Arguments

    collapse all

    t — Object used for title texttext object

    Object used for the title text, returned as one of these types of objects:

    • Text object — If you add a title to axes, then title returns a text object. Use this text object to access and modify properties of the title after it is created. For a list of text object properties, see Text Properties. You also can access the title through the Title property of the axes object.

    • Legend text object — If you add a title to a legend, then title returns a legend text object. Use this legend text object to access and modify properties of the title after it is created. For a list of legend text object properties, see Legend Text Properties. You also can access the title through the Title property of the legend object.


    from: http://cn.mathworks.com/help/matlab/ref/title.html
    展开全文
  • 例1 复制代码 代码如下:<...例2 php函数参数默认值的使用范例,php函数参数中设置和使用默认值。复制代码 代码如下:<html> <head> <title>php函数参数默认值 – www.jb51.net</title
  • 本文讲的是与plot(), scatter(), pyplot()等绘图函数中常用的参数。 1 marker 标号 官方文档 用于plot(), scatter(), pyplot()。 他有很多款式: 比如我想用表里的第四个“v”: plot([0,1,2], [2,3,6], marker='v...

    本文讲的是与plot(), scatter(), pyplot()等绘图函数中常用的参数。

    1 marker 标号

    官方文档

    用于plot(), scatter(), pyplot()。
    他有很多款式:
    在这里插入图片描述
    在这里插入图片描述
    比如我想用表里的第四个“v”:

    plot([0,1,2], [2,3,6], marker='v')
    

    在这里插入图片描述

    1.1 相关参数

    1.markersize : float指定maker的大小。
    官方文档

    2.markeredgecolor :color 指定marker外边缘的颜色

    3.markeredgewidth :float 外边缘宽度

    4.markerfacecolor :color maker里面的实心颜色

    2 linestyle 线的样式

    觉得实线虚线和虚线和各种款式。

    Linestyle效果
    ‘-’ or ‘solid’实线
    ‘–’ or ‘dashed’虚线
    ‘-.’ or ‘dashdot’标准虚线
    ‘:’ or ‘dotted’点虚线
    ‘None’ or ’ ’ or ‘’什么也没有

    示例

    fig, ax = plt.subplots(1,3)  # Create a figure containing a single axes.
    ax[0].plot([1, 2, 3, 4], [1, 4, 2, 3])  # Plot some data on the axes.
    ax[1].plot([1, 2, 3, 4], [1, 4, 2, 3], linestyle="--")  
    ax[2].plot([1, 2, 3, 4], [1, 4, 2, 3], linestyle=":") 
    

    在这里插入图片描述

    3 linewidth 线宽

    线的宽度,只有折线图才有。

    fig, ax = plt.subplots(1,2)  # Create a figure containing a single axes.
    ax[0].plot([1, 2, 3, 4], [1, 4, 2, 3])  # Plot some data on the axes.
    ax[1].plot([1, 2, 3, 4], [1, 4, 2, 3], linewidth=10) 
    

    在这里插入图片描述

    4 set_style( ) 设置主题

    set_style( )是用来设置主题的,Seaborn有五个预设好的主题: darkgrid , whitegrid , dark , white ,和 ticks 默认: darkgrid

    5 alpha 透明度

    fig, ax = plt.subplots(1,2)  # Create a figure containing a single axes.
    ax[0].plot([1, 2, 3, 4], [1, 4, 2, 3])  # Plot some data on the axes.
    ax[1].plot([1, 2, 3, 4], [6, 8, 4, 1],alpha=0.5)
    

    在这里插入图片描述

    6 color 颜色

    这个参数太深奥了,可以自己创建,也可以选择预置方案。

    color参数可以采纳以下表达形式:

    • an RGB or RGBA (red, green, blue, alpha) tuple of float values in closed interval [0, 1] (e.g., (0.1, 0.2, 0.5) or (0.1, 0.2, 0.5, 0.3));
    • a hex RGB or RGBA string (e.g., ‘#0f0f0f’ or ‘#0f0f0f80’; case-insensitive);更常见
    • a shorthand hex RGB or RGBA string, equivalent to the hex RGB or RGBA string obtained by duplicating each character, (e.g., ‘#abc’, equivalent to ‘#aabbcc’, or ‘#abcd’, equivalent to ‘#aabbccdd’; case-insensitive);
    • a string representation of a float value in [0, 1] inclusive for gray level (e.g., ‘0.5’);
    • one of {‘b’, ‘g’, ‘r’, ‘c’, ‘m’, ‘y’, ‘k’, ‘w’}, they are the single character short-hand notations for blue, green, red, cyan, magenta, yellow, black, and white.

    colormap 可以用现有配置方案也可以自己创建

    推荐颜色

    blue = (0,114/255,189/255,1)
    red = (217/255,83/255,25/255,1)
    green  = (0/255,158/255,15/255,1)
    yellow = (237/255,177/255,32/255,1)
    

    创建自己的colormap

    来源:https://matplotlib.org/tutorials/colors/colormap-manipulation.html
    1.查看所有预置的配色方案:
    用dir(plt.cm)查看所有配色方案:

    ['Accent',
     'Accent_r',
     'Blues',
     'Blues_r',
     'BuGn_r',
    ......
     'twilight_shifted_r',
     'viridis',    #系统默认的
     'viridis_r',
     'winter',
     'winter_r']
    

    这个网站有所有配色方案的展示
    颜色大全

    2.colormap的选取和map关系:

    from matplotlib import cm
    # 一般配色方案是连续的渐变色,我们需要均匀截取8种颜色,8表示想分成几种颜色,从渐变分成8段
    viridis = cm.get_cmap('viridis', 8)
    print(viridis(0.56))
    '''
    如果想分成256段的话,可以这样
    viridis = cm.get_cmap('viridis', 256)
    newcolors = viridis(np.linspace(0, 1, 256))
    
    >>>newcolors.shape
    Out[98]: (256, 4)
    '''
    

    结果:Out[53]: (0.122312, 0.633153, 0.530398, 1.0)
    "viridis"是现成配色方案的一种,viridis()里面的数值在0-1之间,表示从调色板的一边到另一边。
    因为我选取的colormap已经被分成了8段,每一段表示一段颜色,我通过viridis.colors可以查看:

    >>>viridis.colors  #也可以用viridis(range(8))
    Out[55]: 
    array([[0.267004, 0.004874, 0.329415, 1.      ],
           [0.275191, 0.194905, 0.496005, 1.      ],
           [0.212395, 0.359683, 0.55171 , 1.      ],
           [0.153364, 0.497   , 0.557724, 1.      ],
           [0.122312, 0.633153, 0.530398, 1.      ],
           [0.288921, 0.758394, 0.428426, 1.      ],
           [0.626579, 0.854645, 0.223353, 1.      ],
           [0.993248, 0.906157, 0.143936, 1.      ]])
    

    想要查看viridis的颜色范围必须把其当作方法并在里面加入想要查看的索引range(8)、np.linspace(0, 1, 8)才行。

    3.搞清楚colormap的形式——例如viridis(0.56)是一个四维数组、viridis.colors是被分成8个颜色的4维数组了以后,我们开始创建自己的colormap:

    matplotlib.colors.ListedColormap( n*4维数组 或 [“b”,“y”,“g”] 形式的列表 )

    这个函数的作用是把数组或颜色列表转化成抽象的cmp(<matplotlib.colors.ListedColormap at 0x23ce24f9988>),以供绘图函数使用。

    from matplotlib.colors import ListedColormap
    cmap = ListedColormap(["darkorange", "gold", "lawngreen", "lightseagreen"])
    

    通过colorbar查看自己的配色方案:

    fig, ax = plt.subplots(figsize=(6, 1))  
    norm = mpl.colors.Normalize(vmin=0, vmax=1) #这是一个缩放器 缩放的值域可以自己控制
    fig.colorbar(mpl.cm.ScalarMappable(norm=norm, cmap=cmap),
                 cax=ax, orientation='horizontal', label='my colormap')
    # cmap = cm.get_cmap('viridis')  查看现有配色方案的colorbar
    

    在这里插入图片描述
    引用自己的cmap:

    cmap = ListedColormap(["darkorange", "gold", "lawngreen", "lightseagreen"])
    fig, ax = plt.subplots()  
    ax.plot([1, 2, 3, 4], [1, 4, 2, 3],color=cmap(0),label="Line1")  
    ax.plot([1, 2, 3, 4], [6, 8, 4, 1],color=cmap(1),label="Line2")
    ax.plot([1, 2, 3, 4], [4, 7, 3, 6],color=cmap(2),label="Line3")
    ax.plot([1, 2, 3, 4], [1, 9, 5, 4],color=cmap(3),label="Line4")
    ax.legend()
    

    得到了四种颜色的线条~注意这样添加的是没有经过normalize的,引用的时候得用整数cmap(1)。
    在这里插入图片描述

    从现有colormap截取新的colormap

    viridisBig = cm.get_cmap('viridis', 512)
    newcmp = ListedColormap(viridisBig(np.linspace(0.25, 0.75, 256))) #取了原区间0.25-0.75的颜色范围
    

    修改颜色方式有很多种,可以在绘图函数内部,也可以更改全局参数

    方法1:更改全局参数:

    # 选取了coolwarn的配色方案
    cmap = plt.cm.get_cmap(coolwarm,256)
    # N表示颜色总的类别数
    rcParams['axes.prop_cycle'] = cycler(color=cmap(np.linspace(0, 1, N)))
    

    更改全局参数后,就无需再绘图函数内部指定color或者cmap值了,每次绘图后都会用不同的颜色参数,前提是N≥绘图的次数。
    查看一下cmap具体的值的用法:

    >>>cmap(0.0)
    Out[36]: (0.0, 0.5, 0.0, 1.0)
    
    >>>cmap(1.0)
    Out[37]: (1.0, 1.0, 1.0, 1.0)
    

    方法二:绘图函数内部参数

    在绘图函数里 color 参数设置。

    7 legend 图例

    来源:https://matplotlib.org/tutorials/intermediate/legend_guide.html

    ax.legend() 相关参数

    ax.legend()的 loc(位置)参数、title参数都是可以调整的。loc可以选择upper center lower + right left center两两搭配的组合或者直接用“best”自动确定图例在图中的位置。还有些有用的参数:title_fontsize、fontsize。
    bbox_to_anchor = (0.5, 0.5)参数可以调整图例的具体位置。
    ncol 默认是1,图例的列数。
    详见:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.legend.html#matplotlib.pyplot.legend

    获取已有图例

    handels, labels = ax.get_legend_handles_labels()
    如果想要调整图例里面的顺序,或者修改图例的label,可以用这个方法。

    bp = sns.boxplot(x="reference_kind", y="value",hue="cat",ax=ax[0],data=df)
    #获取 handels, labels
    handels, labels = ax[0].get_legend_handles_labels()
    '''
    打印出来分别是 handels  :[<matplotlib.patches.Rectangle at 0x232d77f7cc8>,
     <matplotlib.patches.Rectangle at 0x232d7908808>]
    labels :['Non-target', 'Target']
    '''
    # 然后就可以随心所欲地交换位置 、替换图例了。
    handels = handels[::-1]
    labels = labels[::-1]
    

    原来:
    在这里插入图片描述
    交换后:
    在这里插入图片描述

    7.1 全自动添加

    这样的添加方式特点是每画一条线或一类点,就得设置一次label参数的属性,有两种添加legend的方式:

    line, = ax.plot([1, 2, 3], label='label')
    ax.legend()
    

    line, = ax.plot([1, 2, 3])
    line.set_label('Label')
    ax.legend()
    

    7.2 半手动添加

    但是在一些情况中,需要半手动添加:比如我只想让一部分的图例呈现;比如数据不是分批添加的(不能分批标记“label”),而是一次性添加的。
    这个不需在绘图时添加label参数,是在绘图完成后添加的,并且数据时一次性加入的,只不过根据数值的不同自行分类legend了。
    下面讲根据颜色和大小区分:

    N = 45
    x, y = np.random.rand(2, N)
    c = np.random.randint(1, 5, size=N)
    s = np.random.randint(10, 220, size=N)
    
    fig, ax = plt.subplots()
    
    scatter1 = ax.scatter(x, y, c=c, s=s)
    
    # produce a legend with the unique colors from the scatter
    #也可以 handles, labels = scatter1.legend_elements(),然后依次作为ax.legend()的参数
    #scatter.legend_elements()中prop的默认属性是prop="colors",即按照颜色区分
    # *scatter1.legend_elements()就是scatter1的handles和labels
    legend1 = ax.legend(*scatter1.legend_elements(), loc="lower left", title="Classes")
    ax.add_artist(legend1) #这一步很重要 不然后面的lengend2会覆盖legend1
    
    # produce a legend with a cross section of sizes from the scatter
    # labels甚至可以自己命名,只要是和handles长度一致的列表就行
    handles, labels = scatter1.legend_elements(prop="sizes", alpha=0.6)
    legend2 = ax.legend(handles, labels, loc="upper right", title="Sizes")
    
    plt.show()
    

    在这里插入图片描述
    更多参见:https://matplotlib.org/gallery/lines_bars_and_markers/scatter_with_legend.html#sphx-glr-gallery-lines-bars-and-markers-scatter-with-legend-py

    下面的代码可以更好地搞清楚ax.legend()中handles和labels两个参数到底需要啥,前一个需要绘制好的图,后者需要对应legend的名称。当handles中的图已经包含labels参数时,可以忽略labels参数。

    N = 45
    x, y = np.random.rand(2, N)
    c = np.random.randint(1, 5, size=N)
    s = np.random.randint(10, 220, size=N)
    
    fig, ax = plt.subplots()
    
    scatter1 = ax.scatter(x, y, s=80)
    scatter2 = ax.scatter(x, y-1, s=10)
    
    legend = ax.legend(handles=[scatter1,scatter2],labels=["1111","2222"], loc="upper right")
    
    plt.show()
    

    在这里插入图片描述

    7.3 全手动添加

    上面那个方法是自动捕捉不同的size和color,接下来讲手动添加法,其可以无中生有出图像中不存在的marker作作为图例:

    import matplotlib.lines as mlines
    
    # 定义添加的legend的样式
    # 区分color是线条颜色,markerfacecolor才是marker的颜色
    blue_line = mlines.Line2D([], [], color='blue', marker='*', markersize=15, label='Blue stars',markerfacecolor="blue")
    
    plt.legend(handles=[blue_line])
    plt.show()
    

    在这里插入图片描述

    图例大小字体的控制

    # 图例中字体的设置
    font1 = {'family' : 'SimHei',
    'weight' : 'normal', 
    'size'   : 9,
    }
    
    ax[0,0].legend([s1,s2,s3,s4],[u"女/非黑",u"男/非黑",u"女/黑",u"男/黑"],
      prop=font1,loc="lower left",
      scatterpoints=1, #呈现几个标号
      framealpha=0.5,  #图例透明度
      handlelength=0.2) #图例靠左的程度,越小越紧凑
    # 也可以这样
    ax[0,0].legend([s1,s2,s3,s4],[u"女/非黑",u"男/非黑",u"女/黑",u"男/黑"],fontsize=11)
    

    删除图例

    ax.get_legend().remove()
    

    图例排列n*m

    默认都是m*1的形式,ncol这个参数科室设置列数

    ax.legend(ncol=2)
    

    有关图例的参数请参见:
    https://www.jb51.net/article/191933.htm

    8 tick 坐标轴

    8.1 设置坐标轴值域

    针对两种生成图表的方法,有两种修改坐标轴值域的方法

    8.1.1 针对plt.figure()

    plt.figure()
    ...
    plt.xlim([x0,x1])
    plt.ylim([y0,y1])
    

    8.1.2 针对fig, ax = plt.subplots()

    fig, ax = plt.subplots()
    ...
    axes.set_xlim([x0,x1])
    axes.set_ylim([y0,y1])
    

    8.2 修改坐标轴标度

    1.下面是针对 plt.figure() 形式的图表

    from matplotlib.ticker import FuncFormatter
    import matplotlib.pyplot as plt
    import numpy as np
    
    x = np.arange(4)
    money = [1.5e5, 2.5e6, 5.5e6, 2.0e7]
    
    
    def millions(x, pos):
        'The two args are the value and tick position'
        return '$%1.1fM' % (x * 1e-6)
    
    
    formatter = FuncFormatter(millions)
    
    fig, ax = plt.subplots()
    ax.yaxis.set_major_formatter(formatter)
    plt.bar(x, money)
    plt.xticks(x, ('Bill', 'Fred', 'Mary', 'Sue'), fontsize=15)
    """ #也可以这样
    ax.set_xticks(x)
    ax.set_xticklabels(('Bill', 'Fred', 'Mary', 'Sue'), fontsize=15)
    """
    plt.show()
    

    在这里插入图片描述
    2. 如果是 fig, ax = plt.subplots() 形式的,则:

    ax[0,1].set_xticklabels(["XGB","DT","LR1","LR2","SVM","DNN","RF"],font1)
    
    

    8.3 修改坐标轴刻度间隔

    from matplotlib.pyplot import MultipleLocator
    #从pyplot导入MultipleLocator类,这个类用于设置刻度间隔
    #把x轴的刻度间隔设置为0.1,并存在变量里
    x_major_locator=MultipleLocator(0.1)
    ax.xaxis.set_major_locator(x_major_locator)
    

    8.4 让坐标轴刻度倾斜

    plt.xticks(rotation=倾斜角度)

    N = 45
    x, y = np.random.rand(2, N)
    c = np.random.randint(1, 5, size=N)
    s = np.random.randint(10, 220, size=N)
    
    fig, ax = plt.subplots()
    
    scatter1 = ax.scatter(x, y, s=s,c=c)
    
    ax.legend()
    # 设置倾斜角度
    plt.xticks(rotation=30)
    plt.show()
    

    out:
    在这里插入图片描述

    8.5 双坐标轴

    fig, ax = plt.subplots(figsize=(6,4))
    
    x = np.arange(10)
    y1 = np.random.rand(10)
    y2 = np.random.randint(0,100,10)
    
    # 绘图
    ax.plot(x, y1, linestyle="-.", label="y1")
    ax2 = ax.twinx()
    ax2.plot(x, y2, linestyle="-.", label="y2", color="red")
    
    # 设置ylabel
    ax.set_ylabel("Accuracy",fontsize=12)
    ax2.set_ylabel("Number",fontsize=12)
    
    # 两个legend是分开显示的
    ax.legend(loc="upper left")
    ax2.legend(loc="upper right")
    
    

    out:
    在这里插入图片描述

    8.6 设置刻度字体大小

    注意 这里三行代码得放在绘图主函数之前!!!

    import matplotlib
    matplotlib.rcParams['xtick.labelsize']=17
    matplotlib.rcParams['ytick.labelsize']=17
    

    也可以通过这个函数一起修改两坐标轴的刻度字体大小,但是得放在绘图主函数之后!!!

    plt.tick_params(labelsize=25)
    

    9 title 标题

    9.1 将标题设置在图片下方

    默认是在上方的,可以通过 plt.title('title', y=-0.2) 中 y 的参数调整 title 的位置:

    fig, ax = plt.subplots(figsize=(6,4))
    x = np.arange(10)
    y1 = np.random.rand(10)
    # 绘图
    ax.plot(x, y1, linestyle="-.", label="y1")
    # 设置ylabel
    ax.set_ylabel("Accuracy",fontsize=12)
    
    ax.legend(loc="upper left")
    plt.title('This is title', y=-0.2)
    

    在这里插入图片描述

    同时,还可以通过同函数的 x 参数调整 title 的左右参数:

    fig, ax = plt.subplots(figsize=(6,4))
    x = np.arange(10)
    y1 = np.random.rand(10)
    # 绘图
    ax.plot(x, y1, linestyle="-.", label="y1")
    # 设置ylabel
    ax.set_ylabel("Accuracy",fontsize=12)
    
    ax.legend(loc="upper left")
    plt.title('This is title',x=0.8, y=-0.2)
    

    out:
    在这里插入图片描述

    10 字体设置

    10.1 插入 LaTex 字体

    这个很有用啊,记得要加 r$$ 哦:

    import matplotlib.pyplot as plt
    
    # Mathtext demo
    fig, ax = plt.subplots()
    ax.plot(range(10))
    ax.set_title(r'$\ddot{o}\acute{e}\grave{e}\hat{O}'
                 r'\breve{i}\bar{A}\tilde{n}\vec{q}$', fontsize=20)
    
    # Shorthand is also supported and curly braces are optional
    ax.set_xlabel(r"""$\"o\ddot o \'e\`e\~n\.x\^y$""", fontsize=20)
    ax.text(4, 0.5, r"$F=m\ddot{x}$")
    fig.tight_layout()
    
    # Unicode demo
    fig, ax = plt.subplots()
    ax.set_title("GISCARD CHAHUTÉ À L'ASSEMBLÉE")
    ax.set_xlabel("LE COUP DE DÉ DE DE GAULLE")
    ax.set_ylabel('André was here!')
    ax.text(0.2, 0.8, 'Institut für Festkörperphysik', rotation=45)
    ax.text(0.4, 0.2, 'AVA (check kerning)')
    
    plt.show()
    

    out:
    在这里插入图片描述

    10.2 全局字体设置

    plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
    plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号
    

    10.3 个别字体设置

    可分别作用域用于lable、tick、text、legend等等。。

    问题来源:如下图 y轴的 tick 发生了偏移,我想把它往上调一点。
    在这里插入图片描述
    我们可以通过构建一个词典,添加我需要设置的参数,并把词典会传入我需要修改字体的模块(yticklabels、legend等):

    font1 = {
    'weight' : 'normal', 
    'size'   : 11,
    "horizontalalignment":'center', #主要是这行和下一行决定字体的对齐方式
    "verticalalignment":"center"
    }
    ax.set_yticklabels(["XGB","DT","LR1","LR2","SVM","DNN","RF"],font1)
    

    效果:yticks居中了。
    在这里插入图片描述
    针对 ax.legend() 的字体调整,需要回传至 prop 参数:

    font1={"family":'serif'}
    ax.legend(framealpha=0,fontsize=13,ncol=2, loc="lower center",prop = font1)
    

    font的参数详解:
    family: 字体样式
    其中,英文字体有:

    # serif 基本就是 Times New Roman
    families = ['serif', 'sans-serif', 'cursive', 'fantasy', 'monospace']
    

    效果如下:
    在这里插入图片描述

    其中,中文字体有:

    黑体:SimHei
    微软雅黑:Microsoft YaHei
    微软正黑体:Microsoft JhengHei
    新宋体:NSimSun
    宋体:SimSun
    新细明体:PMingLiU
    细明体:MingLiU
    华文新魏:STXinwei
    华文行楷:STXingkai
    华文隶书:STLliti
    花纹琥珀:STHupo
    华文彩云:STCaiyun
    方正姚体:FZYaoti
    方正舒体:FZShuTi
    标楷体:DFKai-SB
    华文仿宋:STFangsong
    华文中宋:STZhongsong
    华文宋体:STSong
    华文楷体:STKaiti
    华文细黑:STXihei
    幼圆:YouYuan
    隶书:LiSu
    楷体_GB 2313:Kaiti_GB2313
    仿宋_GB2313:FangSong_GB2313
    仿宋:FangSong
    

    x, y : scalars 防止text的位置
    s : str 内容text
    fontdict : dictionary, optional, default: None 一个定义s格式的dict
    withdash : boolean, optional, default: False。如果True则创建一个 TextWithDash实例。
    fontsize设置字体大小,默认12,可选参数 [‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’,‘x-large’, ‘xx-large’]
    fontweight设置字体粗细,可选参数 [‘light’, ‘normal’, ‘medium’, ‘semibold’, ‘bold’, ‘heavy’, ‘black’]
    fontstyle设置字体类型,可选参数[ ‘normal’ | ‘italic’ | ‘oblique’ ],italic斜体,oblique倾斜
    verticalalignment设置水平对齐方式 ,可选参数 : ‘center’ , ‘top’ , ‘bottom’ ,‘baseline’
    horizontalalignment设置垂直对齐方式,可选参数:left,right,center
    rotation(旋转角度)可选参数为:vertical,horizontal 也可以为数字
    alpha透明度,参数值0至1之间
    backgroundcolor标题背景颜色
    bbox给标题增加外框 ,常用参数如下:
    boxstyle方框外形
    facecolor(简写fc)背景颜色
    edgecolor(简写ec)边框线条颜色
    edgewidth边框线条大小

    10.4 中英文同时出现

    mpl自带有几种数学字体,最常用的有cm系列和stix系列,前者是Latex默认的数学字体,而stix的正体和Times New Roman差别很小,一般用来和Times New Roman搭配。所以这里我们采用stix,即可达到相同的视觉效果。

    import matplotlib.pyplot as plt
    from matplotlib import rcParams
    
    config = {
        "font.family":'serif',
        "font.size": 20,
        "mathtext.fontset":'stix',
        "font.serif": ['SimSun'],
    }
    rcParams.update(config)
    
    plt.title(r'宋体 $\mathrm{Times \; New \; Roman}\/\/ \alpha_i > \beta_i$')
    plt.axis('off')
    

    out:
    在这里插入图片描述

    10.5 用 ax.annotate() 做标注

    相关参数参见:
    https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.annotate.html#matplotlib.axes.Axes.annotate

    fig, ax = plt.subplots(figsize=(3, 3))
    
    t = np.arange(0.0, 5.0, 0.01)
    s = np.cos(2*np.pi*t)
    
    # Plot a line and add some simple annotations
    line, = ax.plot(t, s)
    ax.annotate('figure pixels',
                xy=(10, 10), xycoords='figure pixels')
    ax.annotate('figure points',
                xy=(80, 80), xycoords='figure points')
    ax.annotate('figure fraction',
                xy=(.025, .975), xycoords='figure fraction',
                horizontalalignment='left', verticalalignment='top',
                fontsize=20)
    
    # The following examples show off how these arrows are drawn.
    
    ax.annotate('point offset from data',
                xy=(2, 1), xycoords='data',
                xytext=(-15, 25), textcoords='offset points',
                arrowprops=dict(facecolor='black', shrink=0.05),
                horizontalalignment='right', verticalalignment='bottom')
    
    ax.annotate('axes fraction',
                xy=(3, 1), xycoords='data',
                xytext=(0.8, 0.95), textcoords='axes fraction',
                arrowprops=dict(facecolor='black', shrink=0.05),
                horizontalalignment='right', verticalalignment='top')
    
    # You may also use negative points or pixels to specify from (right, top).
    # E.g., (-10, 10) is 10 points to the left of the right side of the axes and 10
    # points above the bottom
    
    ax.annotate('pixel offset from axes fraction',
                xy=(1, 0), xycoords='axes fraction',
                xytext=(-20, 20), textcoords='offset pixels',
                horizontalalignment='right',
                verticalalignment='bottom')
    
    ax.set(xlim=(-1, 5), ylim=(-3, 5))
    

    out:
    在这里插入图片描述

    10.6 在图中插入字体 ax.text()

    fig = plt.figure()
    plt.axis([0, 10, 0, 10])
    t = ("This is a really long string that I'd rather have wrapped so that it "
         "doesn't go outside of the figure, but if it's long enough it will go "
         "off the top or bottom!")
    plt.text(4, 1, t, ha='left', rotation=15, wrap=True)
    plt.text(6, 5, t, ha='left', rotation=15, wrap=True)
    plt.text(5, 5, t, ha='right', rotation=-15, wrap=True)
    plt.text(5, 10, t, fontsize=18, style='oblique', ha='center',
             va='top', wrap=True)
    plt.text(3, 4, t, family='serif', style='italic', ha='right', wrap=True)
    plt.text(-1, 0, t, ha='left', rotation=-15, wrap=True)
    
    plt.show()
    

    out:
    在这里插入图片描述

    又例如:

    -0.5和0.5分别表示插入文字的坐标。

    text_style = dict(horizontalalignment='right', verticalalignment='center',fontsize=12, fontdict={'family': 'monospace'})
    ax.text(-0.5, 0.5, repr("hello"),**text_style)
    

    在这里插入图片描述

    11 布局和保存

    当图片无法显示时把这个函数加在代码最后:

    plt.show()
    

    当子图之间发生重叠时,可以使用紧凑布局:

    plt.tight_layout()
    

    可以这样保存图片,并设置保存的dpi,dpi越大越清楚,所占用的空间也越大,一般dpi设置在300-600较好。

    plt.savefig("my_pic.jpg", dpi=500)
    # 如果发生重叠,可以试试这样:
    plt.savefig("my_pic.jpg", dpi=500, bbox_inches = 'tight')
    

    附几个有用的函数

    ax.set_axis_off() 隐藏坐标系
    一个完整的颜色表示的例子
    import matplotlib.pyplot as plt
    import numpy as np
    
    t = np.linspace(0.0, 2.0, 201)
    s = np.sin(2 * np.pi * t)
    
    # 1) RGB tuple:
    fig, ax = plt.subplots(facecolor=(.18, .31, .31))  #背景颜色
    # 2) hex string:
    ax.set_facecolor('#eafff5')  #画布颜色
    # 3) gray level string:
    ax.set_title('Voltage vs. time chart', color='0.7')
    # 4) single letter color string
    ax.set_xlabel('time (s)', color='c')
    # 5) a named color:
    ax.set_ylabel('voltage (mV)', color='peachpuff')
    # 6) a named xkcd color:
    ax.plot(t, s, 'xkcd:crimson')
    # 7) Cn notation:
    ax.plot(t, .7*s, color='C4', linestyle='--')
    # 8) tab notation:
    ax.tick_params(labelcolor='tab:orange')
    
    plt.show()
    

    在这里插入图片描述

    颜色值的相互转换(RGB HSV等)

    RGBA (red, green, blue, alpha)相比于RGB多了个alpha(透明度)的参数。
    HSV 介绍
    HSV是一种比较直观的颜色模型,所以在许多图像编辑工具中应用比较广泛,这个模型中颜色的参数分别是:色调(H, Hue),饱和度(S,Saturation),明度(V, Value)。

    方法作用
    hsv_to_rgb(hsv)Convert hsv values to rgb.
    rgb_to_hsv(arr)Convert float rgb values (in the range [0, 1]), in a numpy array to hsv values.
    to_hex(c[, keep_alpha])Convert c to a hex color.
    to_rgb©Convert c to an RGB color, silently dropping the alpha channel.
    to_rgba(c[, alpha])Convert c to an RGBA color.
    to_rgba_array(c[, alpha])Convert c to a (n, 4) array of RGBA colors.

    (c表示字符串类型的颜色:“blue”)
    注意这些函数只能一次性转换一个颜色,不能直接转换整个cmap。

    Examples大全

    https://matplotlib.org/gallery/index.html

    展开全文
  • R语言中title()函数参数详解

    千次阅读 2020-05-08 21:22:45
    title(main = NULL, sub = NULL, xlab = NULL, ylab = NULL, line = NA, outer = FALSE, ...) 参数 描述 main 主标题 sub 副标题 xlab x轴标签 ylab y轴标签 line 到轴线的行数距离 outer 一个...
    title(main = NULL, sub = NULL, xlab = NULL, ylab = NULL,
          line = NA, outer = FALSE, ...)
    
    参数描述
    main主标题
    sub副标题
    xlabx轴标签
    ylaby轴标签
    line到轴线的行数距离
    outer一个逻辑值。 如果为TRUE,则标题位于图的外部边缘.
    展开全文
  • Matlab中title函数使用

    千次阅读 2020-12-05 21:06:43
    目录 一.语法 1.输入参数 2.名称-值对组参数 3.输出参数 二.说明 三.示例 1.在当前坐标区上添加标题 ...4.使用 Name,Value 对组参数创建彩色标题 ...title函数的作用是添加标题。 一.语法 title(txt) title

    目录

    一.语法

    1.输入参数

    2.名称-值对组参数

    3.输出参数

    二.说明

    三.示例

    1.在当前坐标区上添加标题

    2.在标题中包含变量的值

    3.使用 TeX 标记创建多色标题

    4.使用 Name,Value 对组参数创建彩色标题

    5.在标题中包含希腊符号

    6.在标题中包含上标或下标字符

    7.创建多行标题

    8.按键入原样显示文本

    9.在特定的坐标区上添加标题

    10.添加标题并返回文本句柄


    title函数的作用是添加标题。

    一.语法

    title(txt)
    
    title(target,txt)
    
    title(___,Name,Value)
    
    t = title(___)

    1.输入参数

    txt - 要显示为标题的文本

    要显示为标题的文本,指定为字符串标量、字符向量、字符串数组、字符数组、元胞数组、分类数组或数值。

    例如:

     'my label'

    {'first line','second line'}

    123

    要将数值变量和文本包括在标题中,可以使用num2str函数。例如: 

    x = 42;
    str = ['The value is ',num2str(x)];

    要包括特殊字符(例如上标、下标、希腊字母或数学符号),请使用 TeX 标记。有关支持的标记的列表,可以参考Interpreter属性。

    要创建多行标题:

    • 使用字符串数组,其中每个元素包含一行文本,例如 ["first line", "second line"]

    • 使用元胞数组,其中每个元胞包含一行文本,例如 {'first line','second line'}

    • 使用字符数组,其中每一行包含一行文本,例如 ['abc'; 'ab ']。如果使用这种方法,每行的字符数必须相同。

    • 使用sprintf 创建一个包含换行符的字符向量,例如 sprintf('first line \n second line')

    使用 sprintf('%g',value) 将数值型标题转换为文本。例如,12345678 显示为 1.23457e+07

    注意

    • 如果将标签指定为分类数组,MATLAB® 将使用数组中的值,而不是类别。

    • 词语 defaultfactory 和 remove 是保留字,作为标准字符向量引用时,标题中将不会出现。要在文本中单独显示这些单词中的任意单词,需在该单词之前放置反斜杠,例如 '\default' 或 '\remove'

    target - 标题的目标

    要添加标题的目标对象,指定为以下项之一:

    • 任何类型的坐标区:AxesPolarAxes 或 GeographicAxes 对象。

    • Legend 对象。

    • TiledChartLayout 对象。

    • 具有 Title 属性的图对象。例如,您可以向 HeatmapChart 对象添加标题。

    • 由上述列表中的图形对象组成的数组。这些对象必须属于同一类。要确定类,请使用class函数。

    如果不为标题指定目标,则 title 函数会将标题添加到由 gca 命令返回的图形对象。

    注意

    有些图不支持修改标题外观(例如颜色),或以输出参数形式返回文本对象。除了以下属性之外,还可以使用 Name,Value 对组参数指定其他文本对象属性。可以参考Text属性。 

    2.名称-值对组参数

    指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在引号中。可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

    例如:'Color','red','FontSize',14 将添加一个红色、14 磅字体的标题。

    'FontSize' - 字体大小

    字体大小,指定为大于 0 的标量值(以磅为单位)。一磅等于 1/72 英寸。要更改字体单位,使用FontUnits 属性。如果为坐标区对象添加标题,则坐标区的字体大小属性也会影响标题的字体大小。标题字体大小会更新为坐标区字体大小与标题缩放因子的乘积。坐标区的FontSize属性包含坐标区字体大小。坐标区的TitleFontSizeMultiplier属性包含缩放因子。默认情况下,坐标区的字体大小为 10 磅,缩放因子为 1.1,因此标题字体大小为 11 磅。

    数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    'FontWeight' - 文本字符的粗细

    文本字符的粗细,指定为下列值之一:

    • 'bold' - 字符轮廓比普通粗

    • 'normal' - 由特定字体定义的普通粗细

    MATLAB 使用 FontWeight 属性从系统提供的字体中选择一种字体。并非所有字体都有加粗字体。因此,指定加粗字体仍可能产生常规字体。如果为坐标区对象添加标题,则关联坐标区的TitleFontWeight属性会影响标题的 FontWeight 值。

    注意

    'light' 和 'demi' 字体粗细值已被移除。请改用 'normal'

    'FontName' - 字体名称

    字体名称,指定为支持的字体名称或 'FixedWidth'。要正确显示和打印文本,必须选择系统支持的字体。默认字体取决于操作系统和区域设置。要使用在任何区域设置中都有较好显示效果的等宽字体,请使用 'FixedWidth'。等宽字体依赖于根FixedWidthFontName属性。设置根 FixedWidthFontName 属性会导致立即更新显示方式以使用新字体。

    'Color' - 文本颜色

    文本颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。默认值 [0 0 0] 对应于黑色。对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

    • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

    • 十六进制颜色代码是字符向量或字符串标量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0 到 F。这些值不区分大小写。因此,颜色代码 '#FF8800' 与 '#ff8800''#F80' 与 '#f80' 是等效的。

    此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。

    颜色名称短名称RGB 三元组十六进制颜色代码外观
    'red''r'[1 0 0]'#FF0000'

    'green''g'[0 1 0]'#00FF00'

    'blue''b'[0 0 1]'#0000FF'

    'cyan''c'[0 1 1]'#00FFFF'

    'magenta''m'[1 0 1]'#FF00FF'

    'yellow''y'[1 1 0]'#FFFF00'

    'black''k'[0 0 0]'#000000'

    'white''w'[1 1 1]'#FFFFFF'

    'none'不适用不适用不适用无颜色

    以下是 MATLAB 在许多类型的绘图中使用的默认颜色的 RGB 三元组和十六进制颜色代码。

    RGB 三元组十六进制颜色代码外观
    [0 0.4470 0.7410]'#0072BD'

    [0.8500 0.3250 0.0980]'#D95319'

    [0.9290 0.6940 0.1250]'#EDB120'

    [0.4940 0.1840 0.5560]'#7E2F8E'

    [0.4660 0.6740 0.1880]'#77AC30'

    [0.3010 0.7450 0.9330]'#4DBEEE'

    [0.6350 0.0780 0.1840]'#A2142F'

    例如: 'blue'   [0 0 1]   '#0000FF'

    'Interpreter' - 文本解释器

    文本解释器,指定为下列值之一:

    • 'tex' - 使用 TeX 标记子集解释字符。

    • 'latex' - 使用 LaTeX 标记解释字符。

    • 'none' - 显示字面字符。

    TeX 标记

    默认情况下,MATLAB 支持一部分 TeX 标记。使用 TeX 标记可添加下标和上标,修改字体类型和颜色,并在文本中包括特殊字符。修饰符会一直作用到文本结尾,但上标和下标除外,因为它们仅修饰下一个字符或花括号中的字符。当您将解释器设置为 'tex' 时,支持的修饰符如下所示。

    修饰符说明示例
    ^{ }上标'text^{superscript}'
    _{ }下标'text_{subscript}'
    \bf粗体'\bf text'
    \it斜体'\it text'
    \sl伪斜体(通常与斜体相同)'\sl text'
    \rm常规字体'\rm text'
    \fontname{specifier}字体名称 - 将 specifier 替换为字体系列的名称。您可以将此说明符与其他修饰符结合使用。'\fontname{Courier} text'
    \fontsize{specifier}字体大小 - 将 specifier 替换为以磅为单位的数值标量值。'\fontsize{15} text'
    \color{specifier}字体颜色 - 将 specifier 替换为以下颜色之一:redgreenyellowmagentablueblackwhitegraydarkGreenorange 或 lightBlue'\color{magenta} text'
    \color[rgb]{specifier}自定义字体颜色 - 将 specifier 替换为三元素 RGB 三元组。'\color[rgb]{0,0.5,0.5} text'

    下表列出了 'tex' 解释器所支持的特殊字符。

    字符序列符号字符序列符号字符序列符号

    \alpha

    α

    \upsilon

    υ

    \sim

    ~

    \angle

    \phi

    \leq

    \ast

    *

    \chi

    χ

    \infty

    \beta

    β

    \psi

    ψ

    \clubsuit

    \gamma

    γ

    \omega

    ω

    \diamondsuit

    \delta

    δ

    \Gamma

    Γ

    \heartsuit

    \epsilon

    ϵ

    \Delta

    Δ

    \spadesuit

    \zeta

    ζ

    \Theta

    Θ

    \leftrightarrow

    \eta

    η

    \Lambda

    Λ

    \leftarrow

    \theta

    θ

    \Xi

    Ξ

    \Leftarrow

    \vartheta

    ϑ

    \Pi

    Π

    \uparrow

    \iota

    ι

    \Sigma

    Σ

    \rightarrow

    \kappa

    κ

    \Upsilon

    ϒ

    \Rightarrow

    \lambda

    λ

    \Phi

    Φ

    \downarrow

    \mu

    µ

    \Psi

    Ψ

    \circ

    º

    \nu

    ν

    \Omega

    Ω

    \pm

    ±

    \xi

    ξ

    \forall

    \geq

    \pi

    π

    \exists

    \propto

    \rho

    ρ

    \ni

    \partial

    \sigma

    σ

    \cong

    \bullet

    \varsigma

    ς

    \approx

    \div

    ÷

    \tau

    τ

    \Re

    \neq

    \equiv

    \oplus

    \aleph

    \Im

    \cup

    \wp

    \otimes

    \subseteq

    \oslash

    \cap

    \in

    \supseteq

    \supset

    \lceil

    \subset

    \int

    \cdot

    ·

    \o

    ο

    \rfloor

    \neg

    ¬

    \nabla

    \lfloor

    \times

    x

    \ldots

    ...

    \perp

    \surd

    \prime

    ´

    \wedge

    \varpi

    ϖ

    \0

    \rceil

    \rangle

    \mid

    |

    \vee

    \langle

    \copyright

    ©

    LaTeX 标记

    要使用 LaTeX 标记,请将解释器设置为 'latex'。使用美元符号将文本括起来,例如,对于内联模式,使用 '$\int_1^{20} x^2 dx$';对于显示模式,使用 '$$\int_1^{20} x^2 dx$$'

    显示的文本将使用默认的 LaTeX 字体样式。FontNameFontWeight 和 FontAngle 属性不起任何作用。要更改字体样式,请使用 LaTeX 标记。

    用于 LaTeX 解释器的文本最多可以包含 1200 个字符。对于多行文本,请在此数量的基础上每行减少约 10 个字符。

    有关 LaTeX 系统的详细信息,请访问 LaTeX Project 网站:https://www.latex-project.org/

    3.输出参数

    t - 用于标题文本的对象

    用于标题文本的对象,返回下列对象类型之一:

    • 文本对象 - 如果为坐标区添加标题,title 将返回文本对象。创建标题后,可以使用此文本对象访问和修改标题属性。有关文本对象属性的列表,参考Text属性。还可以通过坐标区对象的Title属性访问标题。

    • 图例文本对象 - 如果为图例添加标题,title 将返回图例文本对象。创建标题后,可以使用此图例文本对象访问和修改标题属性。有关图例文本对象属性的列表,参阅Text属性。还可以通过图例对象的Title属性访问标题。

    二.说明

    title(txt) 将指定的标题添加到 gca 命令返回的坐标区或图中。重新发出 title 命令可使新标题替换旧标题。

    title(target,txt) 将标题添加到指定的目标对象。

     title(___,Name,Value)使用一个或多个名称-值对组参数修改标题外观。例如,'FontSize',12 将字体大小设置为 12 磅。在所有其他输入参数之后指定名称-值对组参数。并非所有图类型均支持修改标题外观。

    t = title(___) 返回用于标题的对象。以后可以使用 t 修改标题。

    三.示例

    1.在当前坐标区上添加标题

    在当前坐标区中创建一个图窗并显示标题。如下所示:

    plot((1:10).^2)
    title('My Title')

    也可以通过可返回文本的函数来调用 title。例如,date 函数返回包含今日日期的文本。如:

    plot((1:10).^2)
    title(date)

    MATLAB® 将 date 的输出设置为坐标区的标题。

    2.在标题中包含变量的值

    在标题中包含变量 c 的值。如下所示:

    figure
    plot((1:10).^2)
    f = 70;
    c = (f-32)/1.8;
    title(['Temperature is ',num2str(c),' C'])

    3.使用 TeX 标记创建多色标题

    使用颜色修饰符 \color 将其后尾随字符的颜色从先前的颜色更改为新颜色。如下所示:

    plot((1:10).^2)
    title(['\fontsize{16}black {\color{magenta}magenta '...
    '\color[rgb]{0 .5 .5}teal \color{red}red} black again'])

    4.使用 Name,Value 对组参数创建彩色标题

    使用 Name,Value 对组 'Color','m' 将标题的颜色设置为品红色。如下所示:

    figure
    plot((1:10).^2)
    title('Case number # 3','Color', 'm')

    5.在标题中包含希腊符号

    使用 TeX 标记在标题中包含希腊符号。如下所示:

    t = (0:0.01:0.2);
    y = exp(-25*t);
    figure
    plot(t,y)
    title('y = \ite^{\lambda t}','Color','b')

    'Interpreter' 属性必须为 'tex'(默认值)。

    6.在标题中包含上标或下标字符

    如下所示:

    figure
    plot((1:10).^2)
    title('\alpha^2 and X_1')

    上标字符“^”和下标字符“_”可修改紧随其后的花括号中定义的字符或子字符串。

    7.创建多行标题

    使用多行元胞数组创建多行标题。如下所示:

    8.按键入原样显示文本

    将 Interpreter 属性设置为 'none',以使文本 X_1 按键入原样显示在图窗中,而不会将 1 设置为 X 的下标。如下所示:

    plot((1:10).^2)
    title('X_1','Interpreter','none')

    9.在特定的坐标区上添加标题

    从 R2019b 开始,可以使用 tiledlayout 和 nexttile 函数显示分块图。调用 tiledlayout 函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1 和 ax2。然后将数据绘制到每个坐标区中。如下所示:

    tiledlayout(2,1)
    ax1 = nexttile;
    plot(ax1,(1:10).^2)
    ax2 = nexttile;
    plot(ax2,(1:10).^3)

    通过将 ax1 和 ax2 传递给 title 函数,为每个坐标区添加标题。如下所示:

    title(ax1,'Top Plot')
    title(ax2,'Bottom Plot')

    10.添加标题并返回文本句柄

    在绘图上添加标题,并返回文本对象。如下所示:

    plot((1:10).^2)
    t = title('My Title');

    将标题的颜色设置为红色。使用圆点表示法设置属性。

    plot((1:10).^2)
    t = title('My Title');
    t.Color = 'red';

    展开全文
  • interface ResolveData { (): void; } interface fn{ (arr: ResolveData): void } function filterFn (val: string, update: fn) { update(() =>... return item.title.indexOf(val...
  • plt.title()函数解析(最清晰的解释)

    万次阅读 多人点赞 2019-04-01 13:11:01
    plt.title()函数用于设置图像标题。 参数: fontsize设置字体大小,默认12,可选参数 [‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’,‘x-large’, ‘xx-large’] fontweight设置字体粗细,可选...
  • plt.title()函数用于设置图像标题。 参数: fontsize设置字体大小,默认12,可选参数 [‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’,‘x-large’, ‘xx-large’] fontweight设置字体粗细,可选...
  • python函数的4种参数类型

    万次阅读 多人点赞 2019-06-29 16:18:16
    总结 python 函数中的不同参数类型的使用方法。 在调用函数时,通常会传递参数函数内部的代码保持不变,针对 不同的参数 处理 不同的数据。 有位置传参、关键字传参、默认值参数、多值参数等。 1、参数传递 形参...
  • Python学习之title()函数

    万次阅读 多人点赞 2019-07-08 18:33:14
    属于python中字符串函数,返回’标题化‘的字符串,就是单词的开头为大写,其余为小写 语法格式: string.title() 名称 含义 string 待处理的字符串 实列: >>> name = 'li qin' >>> ...
  • python-plt.title()函数详解

    万次阅读 2020-04-09 10:32:24
    链接:https://blog.csdn.net/TeFuirnever/article/details/88945563
  • 前言 学过 C 或 C++的童鞋看到‘*’的第一反应就是“指针”,继而在学习 Python 的时候,也看到同样的星号,本以为对这家伙很熟悉,不过,真正...当我们在定义一个函数的时候,假如需要传入的参数个数是不定的,按照...
  • js回调函数函数参数的使用示例

    千次阅读 2017-11-15 18:05:14
    <title>回调函数</title> function a(callback){ callback() console.log('我是函数a') } function b(){ setTimeout("console.log('我是回调函数b')", 1000);//模仿耗时操作 } ...
  • 例 : 求解函数最小值 粒子群算法的驱动因素 从鸟群觅食行为到粒子群算法 鸟群寻找食物的过程中,鸟与鸟之间存在着信息的交换,每只鸟搜索目前离食物最近的鸟的周围区域是找到食物的最简单有效的办法。 ...
  • C语言中的system函数参数详解

    万次阅读 2014-06-21 23:59:11
    函数名: system 功 能: 发出一个DOS命令 用 法: int system(char *command); system函数已经被收录在标准c库中,可以直接调用 system()函数用于向操作系统传递控制台命令行,以WINDOWS系统为例,通过system()...
  • 函数里面的参数函数

    千次阅读 2018-01-09 11:44:28
    平常我们的函数里是 参数都是变量,并且直接进行赋值操作,很简单明了。 然而,今天看到函数里的参数函数就有点不习惯。 先贴代码 函数里面套函数的操作 function Jmap(){ var arr={}; this.put= ...
  • javascript函数参数类型

    千次阅读 2018-07-12 23:32:21
    &lt;!DOCTYPE html&gt;&lt;html&gt;&...title&gt;标题&lt;/title&gt; &lt;script&gt; //1.值类型复制一份,修改复制的值,是不影响原来的值的。 // var num
  • R语言中Legend 函数参数详解

    万次阅读 多人点赞 2018-03-09 13:43:52
     inset = 0, xpd, title.col = text.col, title.adj = 0.5,  seg.len = 2) x, y X,y用于定位图例,也可用单键词"bottomright", "bottom", "bottomleft", "left", "topleft", "top", "topright", "right" and ...
  • Python中scatter函数参数详解

    千次阅读 2019-07-20 23:31:29
    最近开始学习python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下: 1、scatter函数原型 2、其中散点的形状参数marker如下: 3、其中颜色参数c如下: 4、基本的使用方法如下: #...
  • 本篇主要介绍sklearn库的svm的分类和回归参数,其中重点介绍四大核函数参数。 之前在未调参的情况下将svm和决策树、贝叶斯进行了分类对比,发现训练器分数巨低,且训练过程时间是真的长,长到怀疑人生。所以想要SV...
  • lua函数之命名参数

    千次阅读 2018-02-09 11:44:54
    命名参数,有的翻译为具名参数,顾名思义就是给带入函数参数起个名字,注意这个名字是固定的。我们知道一般的语言,比如c/c++,java等参数只有在函数定义的时候才有类型和变量名,在函数调用时传入的是变量名或者...
  • plot函数参数

    千次阅读 2016-12-22 09:31:17
    函数名称:plot 用 途:作图 用 法:plot(x, y, ……) 参 数: 1、符号和线条  pch:指定绘制点所使用的符号,取值范围[0, 24],其中4是“差号”,20是“点”  cex:指定符号的大小。cex是一个数值,表示pch...
  • 前提知识: re.search 的函数:re.search(pattern, string, flags=0) df.aplly()函数 ...# 自定义匿名函数 search_func,将re.search(x, y)的两个参数位置调换一下(为了df.appy函数中,能够正...
  • js匿名函数作为函数参数 (返回值作为另一个函数的参数)
  • [Matlab]FIR滤波器设计:(基本窗函数FIR滤波器设计)

    万次阅读 多人点赞 2019-11-16 00:54:00
    [Matlab]FIR滤波器设计:(基本窗函数FIR滤波器设计) ​ IIR滤波器主要设计方法先设计一个模拟低通滤波器,然后把它转化为形式上的数字滤波器。但对于FIR滤波器来说,设计方法的关键要求之一就是保证线性相位条件。而...
  • R语言plot函数参数合集

    万次阅读 多人点赞 2018-04-06 00:20:47
    最近用R语言画图,plot 函数是用的最多的函数,而他的参数非常繁多,由此总结一下,以供后续方便查阅。plot(x, y = NULL, type = "p", xlim = NULL, ylim = NULL,log = "", main = NULL, sub = ...
  • 众所周知,java没有办法设置默认参数,只有通过函数的重载的性质来完成对默认参数的设置。 例如: 为了是的函数能最大形式的通用,会传入正则表达式,但在大部分情况下,使用默认的参数就够了,所以就对removeSpace...
  • 案例代码:&lt;!DOCTYPE html&gt; &lt;html&gt;...title&...函数扩展&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;script type="text/j
  • thymeleaf取值作为js函数参数

    千次阅读 2020-10-03 17:27:31
    字符串作为js函数参数 在正常的js函数中,将int类型的变量直接传递给js函数参数时候,是不需要转义的,但是将字符串类型的作为参数传递的时候,有以下几种解决的方法: 1、代码:传递数值 //前台 <a title=...
  • R语言:plot()函数参数合集

    千次阅读 2019-06-20 14:07:20
    最近用R语言画图,plot 函数是用的最多的函数,而他的参数非常繁多,由此总结一下,以供后续方便查阅。 plot(x, y = NULL, type = "p", xlim = NULL, ylim = NULL, log = "", main = NULL, sub = NULL, xlab = NULL...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 373,425
精华内容 149,370
关键字:

title函数的参数