精华内容
下载资源
问答
  • Python DataFrame对象plot函数的原始文本数据
  • 文章目录1,创建一个Figure对象1.1 Figure对象 1,创建一个Figure对象 1.1 Figure对象 https://segmentfault.com/a/1190000006158803 在matplotlib中,整个图像为一个Figure对象。在Figure对象中可以包含一...

    1,创建一个Figure对象

    1.1 Figure对象

    https://segmentfault.com/a/1190000006158803

    1. 在matplotlib中,整个图像为一个Figure对象。在Figure对象中可以包含一个,或者多个Axes对象。每个Axes对象都是一个拥有自己坐标系统的绘图区域。

    2,在tkinter窗口中用matplotlib的figure对象画图

    2.1,效果展示

    2.2,代码

    import numpy as np
    import matplotlib.pyplot as plt
    from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
    from matplotlib.ticker import MultipleLocator
    from matplotlib.figure import Figure
    from tkinter import *
    # import tkinter as tk
    import random
    import time
    
    
    class FigurePlot(object):
        def __init__(self, root, shape):
            self.wnd = root
    
            fig = Figure()
    
            plot_frame = Frame(self.wnd, width=shape[0], height=shape[1], bg='green')
            plot_frame.propagate(0)
            plot_frame.pack(side=TOP, fill=BOTH)
            #--------------------------------------------------------------
            self.canvas = FigureCanvasTkAgg(fig, master=plot_frame)
            self.canvas._tkcanvas.pack(side=TOP, fill=BOTH, expand=1)
            #--------------------------------------------------------------
            self.axis1 = fig.add_subplot(111)
            self.axis1.set_ylim((-10,10))    #set the Y-axis interval
            self.axis1.yaxis.set_minor_locator(MultipleLocator(2))
            self.axis1.yaxis.set_major_locator(MultipleLocator(5))
            self.axis1.tick_params(labelsize=7)
            self.axis1.grid(True, which='minor', axis='y', c='c', linestyle='-.', 
                                                                linewidth=0.2)    #
    #         self.axis1.get_yaxis().set_visible(False)    #close the ordinate
            self.axis1.get_xaxis().set_visible(False)    #close the ordinate
            self.axis1.spines['right'].set_visible(False)    #close axes
            self.axis1.xaxis.set_ticks_position('top')
            self.axis1.spines['top'].set_position(('data', 0))    
    
    class CrossLinePlot(object):
        def __init__(self):
            self.start_time = time.time()
            self.count = 0
            self.bar_size = 10
            self.time_interval = 4
            self.p_ab = 0
            self.p_ba = 0
            self.v_ab = 0
            self.v_ba = 0
            self.list_xy = []
            for i in range(self.bar_size):
                data = [i,0,0,0,0,0]
                self.list_xy.insert(0, data) 
            self.index = i
    
    class ShowPlot(object):
        def __init__(self, root):
            self.cross_plot = CrossLinePlot()
            self.wnd = root
    
        def show_statistics(self, p_value, v_value):
            self.cross_plot.p_ab += p_value[0]
            self.cross_plot.p_ba += p_value[1]
            self.cross_plot.v_ab += v_value[0]
            self.cross_plot.v_ba += v_value[1]
    
            start_time = self.cross_plot.start_time
            time_interval = self.cross_plot.time_interval
            bar_size = self.cross_plot.bar_size
            bar_width = 0.3
            now_time = time.time()
            if int((now_time-start_time)/time_interval)-self.cross_plot.count >= 1:
                self.cross_plot.count = int((now_time-start_time)/time_interval)
                y1 = self.cross_plot.p_ab
                y2 = -self.cross_plot.p_ba
                y3 = self.cross_plot.v_ab
                y4 = -self.cross_plot.v_ba
                t = int(now_time-start_time)
                self.cross_plot.index += 1
                data = [self.cross_plot.index, t, y1, y2, y3, y4]
                self.cross_plot.list_xy.insert(0, data)
                if len(self.cross_plot.list_xy) > bar_size:
                    del self.cross_plot.list_xy[bar_size]
                self.cross_plot.p_ab = 0
                self.cross_plot.p_ba = 0
                self.cross_plot.v_ab = 0
                self.cross_plot.v_ba = 0
                self.wnd.fig_plot.axis1.cla()
            
                a = np.array(self.cross_plot.list_xy)
                a = np.transpose(a)
                a = a.tolist()
                
                self.wnd.fig_plot.axis1.bar(x=a[0], height=a[2], 
                                            color='r', width=bar_width,
                                            label='person in')
                self.wnd.fig_plot.axis1.bar(x=a[0], height=a[3], 
                                            color='g', width=bar_width,
                                            label='person out')
                self.wnd.fig_plot.axis1.bar(x=list(map(lambda n:n+bar_width,a[0])), 
                                            height=a[4], 
                                            color='b', width=bar_width,
                                            label='vehicle in')
                self.wnd.fig_plot.axis1.bar(x=list(map(lambda n:n+bar_width,a[0])), 
                                            height=a[5], 
                                            color='m', width=bar_width,
                                            label='vehicle out')
                #add a legend
                self.wnd.fig_plot.axis1.legend(prop={'size':6},
                                            bbox_to_anchor=(0, 1, 1, 0),
                                            ncol=4, loc=3, mode='expand')
                in_max = 0
                out_max = 0
                in_c = 'c'
                out_c = 'c'
                for x,t,y1,y2,y3,y4 in zip(a[0],a[1],a[2],a[3],a[4],a[5]):
                    in_max = y1 if y1>y3 and y1>in_max else(
                                    y3 if y3>=y1 and y3>=in_max else in_max) 
                    out_max = y2 if y2<y4 and y2<out_max else(
                                    y4 if y4<=y2 and y4<=out_max else out_max)
                    in_c = 'r' if in_max==y1 else('b' if in_max==y3 else in_c) 
                    out_c = 'g' if out_max==y2 else('m' if out_max==y4 else out_c) 
    #                 self.wnd.axis1.text(x, y1, y1, ha='left', va='bottom')
    #                 self.wnd.axis1.text(x, y2, -y2, ha='left', va='top')
    #                 self.wnd.axis1.text(x+bar_width, y1, y3, ha='center', va='bottom')
    #                 self.wnd.axis1.text(x+bar_width, -y2, y4, ha='center', va='top')
                    self.wnd.fig_plot.axis1.text(x, -12, int(t%60), size=7,
                                                    ha='left', va='bottom')
    
                self.wnd.fig_plot.axis1.text(x+11, in_max, in_max, ha='left', va='center')
                self.wnd.fig_plot.axis1.text(x+11, out_max, -out_max, ha='left', va='center')
                self.wnd.fig_plot.axis1.hlines(in_max, x, x+10, 
                                                    color=in_c, linewidth=0.3)
                self.wnd.fig_plot.axis1.hlines(out_max, x, x+10, 
                                                    color=out_c, linewidth=0.3)
                self.wnd.fig_plot.axis1.text(-0.1, 0.5, 
                                    time.strftime('%Y-%m-%d  %H:%M', time.localtime()), 
                                    ha='right', va='center',
                                    rotation='vertical',
                                    transform=self.wnd.fig_plot.axis1.transAxes)
                self.wnd.fig_plot.axis1.set_ylim((-10,10))    #set the Y-axis interval
    #             self.wnd.axis1.spines['right'].set_visible(False)    #close axes
                self.wnd.fig_plot.axis1.xaxis.set_ticks_position('top')
                self.wnd.fig_plot.axis1.spines['top'].set_position(('data', 0))    
                
                #add the grid
                self.wnd.fig_plot.axis1.yaxis.set_minor_locator(MultipleLocator(2))
                self.wnd.fig_plot.axis1.yaxis.set_major_locator(MultipleLocator(5))
                self.wnd.fig_plot.axis1.grid(True, which='minor', axis='y', 
                                                    c='c', linestyle='-.',
                                                    linewidth=0.2)    
                
                self.wnd.fig_plot.canvas.draw()
    
    class RootWindow(object):
        def __init__(self, shape, locate):
            self.wnd = Tk()
            self.wnd.resizable(width=False,height=False)
            self.wnd.withdraw()
            s_shape = str(shape[0])+'x'+str(shape[1])
            s_locate = '+' + str(locate[0]-shape[0]) + '+' + str(locate[1])
            self.wnd.geometry(s_shape + s_locate)
            self.wnd.title("gigure & tkinter demo")
            
            label_local = (0, 5)
            label = Label(self.wnd, text='number of statistical')
            label.place(x=label_local[0], y=label_local[1])
    
            fig_frame_shape = (shape[0],shape[1]-40)
            fig_frame_local = (0, 40)
            fig_frame = Frame(self.wnd, width=fig_frame_shape[0], 
                                        height=fig_frame_shape[1])
            fig_frame.propagate(0)
            fig_frame.place(x=fig_frame_local[0], y=fig_frame_local[1])
            self.fig_plot = FigurePlot(fig_frame, fig_frame_shape)
    
        def wnd_update(self):
            self.wnd.update()
            self.wnd.deiconify()
    
    
    if __name__ == '__main__':
        root = RootWindow((800,400),(500,300))    
        show_plot = ShowPlot(root)
        while True:
            a1 = random.randint(0, 4)
            time.sleep(0.5)
            a2 = random.randint(0, 4)
            time.sleep(0.5)
            a3 = random.randint(0, 4)
            time.sleep(0.5)
            a4 = random.randint(0, 4)
            time.sleep(0.5)
            show_plot.show_statistics((a1, a2), (a3, a4))
            root.wnd_update()
    
        root.wnd.mainlop()
    
    展开全文
  • 快速上手AntV G2Plot

    2021-01-08 12:38:49
    小白一枚,引入官方示例各种报错,发现Line对象在G2Plot对象里面! 将const linePlot = new Line()…改为const linePlot = new G2Plot.Line后正常, 标题复制下面代码可直接出效果 // 官方示例 const ...
  • 14.面向对象API绘图 14.1.图中图 (A Plot inside of Another Plot) 14.2.设定绘图范围 (Setting the Plot Range) 14.3.对数尺度(Logarithmic Scale) 14.面向对象API绘图 Matplotlib绘图库的操作是通过API实现的...

    14.面向对象API绘图
    14.1.图中图 (A Plot inside of Another Plot)
    14.2.设定绘图范围 (Setting the Plot Range)
    14.3.对数尺度(Logarithmic Scale)

    14.面向对象API绘图

    Matplotlib绘图库的操作是通过API实现的,一种操作方法是类似MATLAB的函数接口的API;另一种操作方法是面向对象的API。这两种API可以并行使用,不过函数接口的API的易用性明显好于面向对象的API。

    就像Python本身一样,Matplotlib是以面向对象的方式编程和设计的。当使用多个图形时,或者当一个图形由多个子图组成时,使用图形对象方法的优点就会显现出来。

    在下面的示例中,我们以面向对象的方式创建一个绘图。首先创建一个新的figure实例。将其引用存储在一个Figure类实例,即变量figure实例。将其引用存储在一个Figure类实例,即变量fig中。然后,我们fig中使用add_axes方法创建一个新的轴的实例。

    import numpy as np
    import matplotlib.pyplot as plt
    fig = plt.figure()
    X = np.arange(0,10)
    Y = np.random.randint(1, 20, size=10)
    left, bottom, width, height = 0.1, 0.1, 0.8, 0.8
    axes = fig.add_axes([left, bottom, width, height])
    axes.plot(X, Y, 'b')
    axes.set_xlabel('x')
    axes.set_ylabel('y')
    axes.set_title('title')
    plt.show()
    

    在不使用figure实例的情况下,代码如下所示:

    import numpy as np
    import matplotlib.pyplot as plt
    fig = plt.figure()
    X = np.arange(0,10)
    Y = np.random.randint(1, 20, size=10)
    left, bottom, width, height = 0.1, 0.1, 0.8, 0.8
    axes = fig.add_axes([left, bottom, width, height])
    axes.plot(X, Y, 'b')
    axes.set_xlabel('xxxxxxxxxxxxx')
    axes.set_ylabel('yyyyyyyyyyyyy')
    axes.set_title('title biaoti')
    plt.show()
    

    14.1.图中图 (A Plot inside of Another Plot)

    import numpy as np
    import matplotlib.pyplot as plt
    fig = plt.figure()
    X = [1, 2, 3, 4, 5, 6, 7]
    Y = [1, 3, 4, 2, 5, 8, 6]
    axes1 = fig.add_axes([0.1, 0.1, 0.9, 0.9]) # main axes
    # add_axes 参数rect The dimensions [left, bottom, width, height] of the new axes.
    # All quantities are in fractions of figure width and height.
    axes2 = fig.add_axes([0.2, 0.6, 0.4, 0.3]) # inside axes
    # main figure
    axes1.plot(X, Y, 'r')
    axes1.set_xlabel('x')
    axes1.set_ylabel('y')
    axes1.set_title('title')
    # insert
    axes2.plot(Y, X, 'g')
    axes2.set_xlabel('y')
    axes2.set_ylabel('x')
    axes2.set_title('title inside')
    plt.show()
    

    在这里插入图片描述

    14.2.设定绘图范围 (Setting the Plot Range)

    配置轴的范围可以通过在轴对象中使用set_ylim和set_xlim方法来完成。 使用axis(‘tight’),可以自动创建"tightly fitted" 的轴范围:

    import numpy as np
    import matplotlib.pyplot as plt
    fig, axes = plt.subplots(1, 3, figsize=(10, 4))
    x = np.arange(0, 5, 0.25)
    axes[0].plot(x, x**2, x, x**3)
    axes[0].set_title("default axes ranges")
    axes[1].plot(x, x**2, x, x**3)
    axes[1].axis('tight')
    axes[1].set_title("tight axes")
    axes[2].plot(x, x**2, x, x**3)
    axes[2].set_ylim([0, 60])
    axes[2].set_xlim([2, 5])
    axes[2].set_title("custom axes range")
    plt.show()
    

    14.3.对数尺度(Logarithmic Scale)

    可以为一个或两个轴设置对数尺度。使用接受一个参数(值为log)的set_xscale和set_yscale方法分别设置每个轴的scale:
    在这里插入图片描述

    import numpy as np
    import matplotlib.pyplot as plt
    fig = plt.figure()
    ax = fig.add_subplot(1, 1, 1)
    x = np.arange(0, 5, 0.25)
    ax.plot(x, x ** 2, x, x ** 3)
    ax.set_yscale("log")
    plt.show()
    

    在这里插入图片描述

    展开全文
  • plot

    千次阅读 2013-08-22 17:11:37
    plot 函数功能 绘制线性二维图形 使用方法 plot(Y) 当Y为实数时,用每个值的索引和Y的列画图。Y为复数时,plot(Y)等价于plot(real(Y),imag(Y)). 当Y为实数向量时,且Y的维数为m,则plot(Y)等价于plot(X,...
    plot
    

    函数功能
    绘制线性二维图形

    使用方法

    plot(Y)
    当Y为实数时,用每个值的索引和Y的列画图。Y为复数时,plot(Y)等价于plot(real(Y),imag(Y)).
    当Y为实数向量时,且Y的维数为m,则plot(Y)等价于plot(X,Y),其中X=1:m;
    当Y为实数矩阵时,把矩阵按照列的方向分解为几个向量,Y的行数为n,则plot(Y)等价于plot(X,Y),其中X=[1;2;...;n];

    plot(X,Y)
    当X,Y均为实数向量时,并且为维数相同,X=[X(i)],Y=[Y(i)],则plot(X,Y)先描述点(X(i),Y(i)),然后依次画线;
    当X,Y均为复数向量时,则不考虑虚数部分;
    当X,Y均为实数矩阵时,并且为维数相同,plot依次按照对应的列画出线,矩阵有几列就有几条线;
    当X,Y一个为向量,一个为矩阵时,并且向量的维数等于矩阵的行数或者列数,则把矩阵按照向量的方向分解为几个向量,在与向量配对分别画图,矩阵分解几个向量就有几条线。

    plot(X1,Y1,...,Xn,Yn)
    Xn和Yn是成对出现的,在同一坐标轴下将按照顺序对Xn和Yn画图。
    如果Xn或Yn其中一个为矩阵其他为向量且向量维数与矩阵的维数(行或列)相匹配,则按照匹配的方向分解矩阵并画图。
    如果Xn是标量Yn是向量,则垂直的画出不连续的Yn个点在Xn处。
    如果Xn或Yn是复数的,虚部是被忽略的。
    画图时如果线条多于一条时,系统将按照ColorOrder 和LineStyleOrder指定的顺序自动选取颜色和线型。

    plot(X1,Y1,LineSpec,...,Xn,Yn,LineSpec)
    按照三个参数Xn,Yn,LineSpec画线,其中LineSpec 指定了线型,标记符号和画线的颜色,也可以混合使用三参数Xn,Yn,LineSpec和二参数Xn,Yn:
    plot(X1,Y1,X2,Y2,LineSpec,X3,Y3)。

    plot(X1,Y1,LineSpec,'PropertyName',PropertyValue)
    对plot生成的图形目标对象指定的lineseries properties 进行设置。

    plot(axes_handle,X1,Y1,LineSpec,'PropertyName',PropertyValue)
    画图时用axes_handle坐标来代替当前坐标。

    h = plot(X1,Y1,LineSpec,'PropertyName',PropertyValue)
    返回图形对象句柄的一列向量,一个线条对应一个句柄值。

    参数LineSpec特征
    1,线型
    定义符 - -- : -.
    线型 实线(缺省值) 划线 点线 点画线
    www.iLoveMatlab.cn 
    2,线条宽度
    指定线条的宽度,取值为整数(单位为像素)。 

    3,颜色
    定义符 r (red) g (green) b (blue) c (cyan)
    颜色 红色 绿色 蓝色 青色
    定义符 m (magenta) y (yellow) k (black) w (white)
    颜色 品红 黄色 黑色 白色


    4,标记类型
    定义符 + o * . x
    标记类型 加号 小圆圈 星号 实点 交叉号
    定义符 d ^ v > <
    标记类型 菱形 向上三角形 向下三角形 向右三角形 向左三角形
    定义符 s h P    
    标记类型 正方形 正六角星 正五角星    


    5,标记大小
    指定标记符号的大小尺寸,取值为整数(单位为像素).  Matlab中文论坛  
    6,标记面填充颜色
    指定用于填充标记符面的颜色。 
    7,标记周边颜色
    指定标记符颜色或者标记符(小圆圈,正方形,菱形,正五角星 ,正六角星 和四个方向的三角形)周边线条的颜色。  


    应用举例
    画一个sine曲线:
    x = -pi:.1:pi;
    y = sin(x);
    plot(x,y)
    QQ截图未命名.jpg 
    用指定的线宽,标记符号,颜色和标记大小来画line图形:
    x = -pi:pi/10:pi;
    y = tan(sin(x)) - sin(tan(x));
    plot(x,y,'--rs','LineWidth',2,...
                    'MarkerEdgeColor','k',...
                    'MarkerFaceColor','g',...
                    'MarkerSize',10)
    QQ截图未命名1.jpg 
    修改坐标轴刻度线和刻度标签:
    x = -pi:.1:pi;
    y = sin(x);
    plot(x,y)
    set(gca,'XTick',-pi:pi/2:pi)
    set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})
    QQ截图未命名2.jpg 
    添加题目,坐标轴标签和注释:
    x = -pi:.1:pi;
    y = sin(x);
    p = plot(x,y)
    set(gca,'XTick',-pi:pi/2:pi)
    set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})
    xlabel('-\pi \leq \Theta \leq \pi')
    ylabel('sin(\Theta)')
    title('Plot of sin(\Theta)')
    % \Theta appears as a Greek symbol (see String)
    % Annotate the point (-pi/4, sin(-pi/4))
    text(-pi/4,sin(-pi/4),'\leftarrow sin(-\pi\div4)',...
         'HorizontalAlignment','left')
    % Change the line color to red and
    % set the line width to 2 points 
    set(p,'Color','red','LineWidth',2)
    QQ截图未命名3.jpg 
    在同一坐标轴下画多个线型图形:
    plot(rand(12,1))
    % hold axes and all lineseries properties, such as
    % ColorOrder and LineStyleOrder, for the next plot
    hold all
    plot(randn(12,1))
    QQ截图未命名4.jpg 
    设置线型的颜色总是黑的,线的形状循环为solid(实线),dash-dot(点画线), dash-dash(划线)和dotted(点线)。
    set(0,'DefaultAxesColorOrder',[0 0 0],...
          'DefaultAxesLineStyleOrder','-|-.|--|:')
    plot(rand(12,1))
    hold all
    plot(rand(12,1))
    hold all
    plot(rand(12,1))
    QQ截图未命名5.jpg
    展开全文
  • Matlab plot

    千次阅读 2010-05-21 14:43:00
    二维曲线绘图语法plot(Y)plot(X1,Y1,...)plot(X1,Y1,LineSpec,...)plot(...,PropertyName,PropertyValue,...)plot(axes_handle,...)h = plot(...)hlines = plot(v6,...)描述plot(Y)如果Y是m×n的数组,以1:m为X横...

    二维曲线绘图

    语法

    plot(Y)
    plot(X1,Y1,...)
    plot(X1,Y1,LineSpec,...)
    plot(...,'PropertyName',PropertyValue,...)
    plot(axes_handle,...)
    h = plot(...)
    hlines = plot('v6',...)

    描述

    plot(Y)如果Y是m×n的数组,以1:m为X横坐标,Y中的每一列元素为Y坐标,绘制n条曲线;如果Y是n×1或者1×n的向量,则以1:n为横坐标,Y为坐标表绘制1条曲线;如果Y是复数,则plot(Y)等效于plot(real(Y),imag(Y));其它使用情况下,忽略坐标数据中的虚部。

    plot(X1,Y1,...)如果X和Y都是数组,按列取坐标数据绘图,此时它们必须具有相同的尺寸;如果X和Y其中一个是向量另一个为数组,X和Y中尺寸相等的方向对应绘制多条曲线;如果X和Y其中一个是标量另一个为向量,那么将绘制垂直X或者Y轴离散的点。

    X

    Y

    备注

    m×n

    m×n

    按列取坐标数据绘制n条曲线

    X和Y必须具有相同的尺寸

    1×n或n×1

    m×n或n×m

    自动匹配尺寸相同方向绘制m条曲线

    任意四种组合,效果一样

    m×n或n×m

    1×n或n×1

    同上

    同上

    1×1

    1×n或n×1

    绘制垂直X轴离散点

    Y可以任意向量

    1×n或n×1

    1×1

    绘制垂直Y轴离散点

    X可以任意向量

    plot(X1,Y1,LineSpec,...)通过参数LineSpec指定曲线的曲线属性,它包括线型、标记符和颜色。plot函数支持同时绘制任意组图形

    plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2,...)

    此时完全等效于

    plot(X1,Y1,LineSpec1,...)

    hlod all

    plot(X2,Y2,LineSpec2,...)

    MATLAB中提供的线型属性有:

    线型

    说明

    标记符

    说明

    颜色

    说明

    -

    实线(默认)

    +

    加号符

    r

    红色

    --

    双划线

    o

    空心圆

    g

    绿色

    :

    虚线

    *

    星号

    b

    蓝色

    :.

    点划线

    .

    实心圆

    c

    青绿色

    x

    叉号符

    m

    洋红色

    s

    正方形

    y

    黄色

    d

    菱形

    k

    黑色

    ^

    上三角形

    w

    白色

    v

    下三角形

    >

    右三角形

    <

    左三角形

    p

    五角星

    h

    六边形

    需要说明的是,LineSpec中设置曲线线型、标识符和颜色三项属性时,控制符的顺序不受限制并可以省略或者部分省略。也就是说'r-.*'、'-.r*'、'*-.r'等形式是等效的,都表示使用红色点划线连接各个节点,各节点使用“*”标识。

    plot(...,'PropertyName',PropertyValue,...)设置由plot创建的所有曲线句柄对象的属性,Line对象属性和属性值参见附录,具体设置参考下面的实例,当然可以使用set/get进行设置。

    plot(axes_handle,...)指定坐标系,也就是在axes_handle坐标系中绘图,在没有指定时默认为gca。

    h = plot(...)返回由plot创建的所有曲线句柄对象的句柄。每条曲线对应一个句柄,如果有n条曲线,则h为n×1的数组。

    注意

    在同时绘制多条曲线时,如果没有指定曲线属性,plot按顺序循环使用当前坐标系中ColorOrder和LineStyleOrder两个属性。

    默认情况,MATLAB在每次调用plot函数时将ColorOrder和LineStyleOrder自动重置为DefaultAxesColorOrder和DefaultAxesLineStyleOrder。Default**属性我们可以自定义,有效期至MATLAB关闭,Matlab下次启动时将Default**属性重置为厂家设置(Factory)

    set(0,'DefaultAxesColorOrder',’r|g|b|k’,...
     'DefaultAxesLineStyleOrder','-|-.|--|:')

    使用hold all命令可以阻止调用plot函数时自动重置ColorOrder和LineStyleOrder属性,而是循环使用。注意hold on只是使多次绘制的图形叠加(相当于NextPlot),但不能阻止属性重置。

    另外我们可以通过下面四个属性设置标识符的颜色和大小

    LineWidth——指定线宽

    MarkerEdgeColor——指定标识符的边缘颜色

    MarkerFaceColor——指定标识符填充颜色

    MarkerSize——指定标识符的大小

    注意上面四个属性是针对当前坐标系中所有曲线的

    实例

    % by dynamic

    % see also http://www.matlabsky.com

    % 2009.8.20

    %

    X=1:10;

    % 两个都是数组,必须具有相同的尺寸

    X1=[X;X;X]';%10×3

    Y1=rand(10,3)+1;%10×3

    % 其中一个为向量,另一个为数组,自动匹配尺寸相等方向

    X2=1:0.1:10;%1×91

    Y2=[sin(X2);cos(X2)]';%91×2

    % 其中一个是标量,另一为矢量,绘制垂直坐标轴的离散点

    X3=1:10;

    Y3=-0.5;

    fh=figure('numbertitle','off','name','PLOT Usability Demo');%创建figure对象

    ah=axes;%创建axes对象

    h=plot(...%返回所有曲线句柄

    ah,...%指定坐标系,可以省略,此时默认gca

    X1,Y1,...%坐标数据

    '-.^',...%曲线属性,可以省略或部分省略,此时自动选择

    X2,Y2,...

    'm-',...

    X3,Y3,...

    'o',...%注意此组数据设置线型和颜色无效,因为默认绘制离散点

    'LineWidth',2,...%线宽

    'MarkerEdgeColor','k',...%标识符边缘颜色

    'MarkerFaceColor','r',...%标识符填充颜色

    'MarkerSize',8)%标识符大小

     

     

    set(gca,'XTick',-pi:pi/2:pi) set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})

    展开全文
  • 将simulink中 to workspace save format 改为array save 2-D signals as 改为Inherit from input (this choice will be removed - see release notes)
  • matlab用代码输出plot基于python的显着性目标检测测评工具箱 A Python-based salient object detection evaluation toolbox. TODO 添加更详细的注释 优化xlsx导出的代码 剥离USVOS部分的代码,让本仓库更专注一些,...
  • matlab gui(二)对象(axes,line[ezplot,plot],回调函数的写法)
  • matlab plot

    2014-04-02 16:26:07
    plot(...,'PropertyName',PropertyValue,...)设置由plot创建的所有曲线句柄对象的属性,Line对象属性和属性值参见附录,具体设置参考下面的实例,当然可以使用set/get进行设置。 MATLAB中提供的线型属性有: -...
  • MATLAB中plot函数的用法

    万次阅读 多人点赞 2018-04-23 15:47:04
    使用plot绘制二维图像本文转自http://blog.sina.com.cn/s/blog_d8f783c90102woqb.html以及...本文仅介绍plot函数的基本用法——使用plot函数绘制二维点图和线...
  • matlab plot函数详解

    万次阅读 多人点赞 2018-04-28 17:04:08
    在matlab中,plot函数用来绘制二维图像。1.plot默认格式 plot(x,y)这种格式中,若x,y是向量,则它们必须具有相同的长度。函数将以x为横轴,绘制y。 若x,y都是矩阵,则它们必须具有相同的尺寸,plot函数将针对x的各...
  • 糖果条纹补丁candystripe 创建一个 candystripe 图案来填充所有类似补丁的对象在当前轴上。 类似补丁的对象是绘制的任何对象作为 MATLAB 中的补丁。 这包括但不限于:条形、填充、 补丁等candystripe(h) 创建一个...
  • 此代码生成分位数概率图,通常用于研究存在多种条件和多个主题时的React时间分布。 使用此代码,您可以轻松生成简单的分... 我使用扩散过程从多个模拟对象在多种条件下生成大量数据样本。 您可以使用此功能进行测试:-)
  • matlab 画图函数plot

    千次阅读 2017-10-27 09:34:31
    载:http://blog.csdn.net/lk274857347/article/details/54618934 Matlab中plot函数全功能解析 ...plot(Y) ...plot(X1,Y1,...) ...plot(X1,Y1,LineSpec,...) ...plot(...,'PropertyNam
  • plot函数的用法

    千次阅读 2014-09-03 15:45:10
    功能 二维曲线绘图   ...plot(Y) ...plot(X1,Y1,...) ...plot(X1,Y1,LineSpec,...)...plot(...,'PropertyName',PropertyValue,...) plot(axes_handle,...) h = plot(...) hlines = plot('v6',...)   描述 p
  • matlab plot绘图函数官方详解

    千次阅读 多人点赞 2020-06-28 22:47:24
    plot: 二维线图函数 语法 plot(X,Y) plot(X,Y,LineSpec) plot(X1,Y1,...,Xn,Yn) plot(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) plot(Y) plot(Y,LineSpec) plot(___,Name,Value) plot(ax,___) h = plot...
  • 每个 JFreeChart 对象只能有 1 个 Title 对象, 1 个 Plot 对象,可以有多个 SubTitle 对象。 JFreeChart 对象可以进行的操作有:背景的设置(背景颜色、背景图片、透明度等)、边框的设置(是否可见、笔画、 Paint ...
  • MATLAB plot绘图参数解析

    千次阅读 2019-11-21 17:17:35
    功能 二维曲线绘图   语法 ...plot(Y) ...plot(X1,Y1,...) ...plot(X1,Y1,LineSpec,...) ...plot(...,'PropertyName',PropertyValue,...) plot(axes_handle,...) h = plot(...) hlines ...
  • matlab 的plot

    2018-02-02 10:40:19
    1. plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的序号为横坐标值绘制曲线。当x 为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线 例如:此处用    x=0:pi/20:2*pi;  y1...
  • matlab中的plot

    千次阅读 2014-04-15 14:42:00
    随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、博主微信(guyun297890152)、QQ技术交流群(183198395)。...plot(...,'PropertyName',PropertyValue,...) plo...
  • > 单击并拖动对象进行平移> 单击并拖动对象以移动它> 右击显示/隐藏标题> 右键单击​​以适合窗口中的所有图> 按住 Shift 键单击以创建缩放矩形> 双击以居中> 鼠标滚轮放大/缩小* 注意:一些示例使用信号处理工具箱...
  • CorePlot1.0:饼图

    千次阅读 热门讨论 2012-08-01 18:33:06
    在Core Plot中,饼图是一类...16.1.1. 饼图的绘制CorePlot用CPTPieChart 对象代表一个饼图。在 CPTGraph 中添加一个饼图很简单,以下代码向 pieChart 中绘制了一个饼图: CPTPieChart*piePlot = [[CPTPieChart alloc]
  • MATLAB中plot函数功能详解

    万次阅读 多人点赞 2017-06-18 21:34:11
    基本功能 功能:二维曲线绘图 ...plot(Y) plot(X1,Y1,...) plot(X1,Y1,LineSpec,...) plot(...,'PropertyName',PropertyValue,...) plot(axes_handle,...) h = plot(...) hlines = plot('v6',...)   描述:
  • CorePlot1.0:安装

    千次阅读 2012-08-01 18:07:50
    CorePlot升级到1.0了,试用了一下,感觉功能和稳定性上都有了较大提升。所以专门写了几篇 1.0 的试用体验。1. 编译 CorePlot 框架首先需要下载Core Plot框架。 你可以在这里找到 1.0版本 Core Plot 的下载链接: ...
  • Matlab绘制图像(plot函数)

    万次阅读 多人点赞 2020-01-11 13:15:04
    Matlab使用plot函数绘制图像。
  • matlab plot使用

    2013-12-12 10:44:57
    原文地址:plot" href="http://blog.sina.com.cn/s/blog_5245a00f0100jbtx.html" target="_blank">matlab plot作者:blueboylovesky http://happysweetheart2.blog.sohu.com/106503841.html  1 plot(x):x为...
  • CorePlot学习一

    千次阅读 2014-06-18 11:26:32
    阅读这篇国外文章手记而已 原文地址:https://github.com/core-plot/core-plot/wiki/High-Level-Design-Overview 首先,我们先看一下我们绘制...2 再来看看这个CorePlot开源图形库的类的层次结构 ,便于我们源码的理解

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 40,477
精华内容 16,190
关键字:

plot的对象