1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Anuncie Aqui
    Anuncie aqui você Também: fdantas@4each.com.br

[Python] Matplotlib fill between

Discussão em 'Python' iniciado por Stack, Maio 1, 2025.

  1. Stack

    Stack Membro Participativo

    I want to use fill between or whatever necesary to colour instead of plotting points in this figure. Basically substitute the dots by a continuos band of colour. How may I achieve this?

    [​IMG]

    The relevant code is the following (the points can be thought as three sets of experimental data, which more or less they are)

    import matplotlib.pyplot as plt
    from matplotlib.ticker import MaxNLocator
    from pylab import figure, show

    plt.rc('text', usetex=True)
    plt.rc('font', family='serif')

    fig = figure()
    ax = fig.add_subplot(111)

    p1, = ax.plot(x_124,y_124,'o')
    p2, = ax.plot(x_125,y_125,'o')
    p3, = ax.plot(x_126,y_126,'o')

    xmax=max(x_124+x_125+x_126)
    xmin=min(x_124+x_125+x_126)
    ymax=max(y_124+y_125+y_126)
    ymin=min(y_124+y_125+y_126)

    plt.title('Escenario $m_{h}^{\mathrm{max}}$')

    plt.ticklabel_format(style='sci',scilimits=(0,0),axis='both')

    ax.xaxis.set_major_locator(MaxNLocator(12))
    ax.yaxis.set_major_locator(MaxNLocator(12))
    plt.xlim(0.96*xmin,1.04*xmax)
    plt.ylim(0.96*ymin,1.04*ymax)

    plt.legend(['$m_h$ = 124 GeV','$m_h$ = 125 GeV','$m_h$ = 126 GeV'],numpoints=1,loc=0)

    plt.xlabel('M3SQ / GeV')
    plt.ylabel('M3SU / GeV')

    ax.grid()
    show()

    Continue reading...

Compartilhe esta Página