예제 #1
0
def dispersao():
    fmax = 100
    friends = [rand.randint(1, fmax) for _ in range(10)]
    minutes = [rand.randint(1, fmax) for _ in range(10)]
    labels = "abcdefghij"

    # cria o gráfico
    plot = Grafico(False)
    plot.titulo = "Minutos diários vs. Número de amigos"
    plot.eixo_x = "# de amigos"
    plot.eixo_y = "minutos diários passados no site"
    plot.font.set_weight("bold")
    plot.font.set_size("large")
    plot.p.axis([0, fmax, 0, fmax])  # eixos iguais

    # grafico de dispersão
    plot.p.scatter(friends, minutes, color='black')

    # nomeia cada posição (alternativa ao p.text)
    for label, friend, minute in zip(labels, friends, minutes):
        plot.p.annotate(
            label,
            xy=(friend, minute),
            xytext=(7, -4),  # personaliza posição
            textcoords='offset points',
            fontproperties=plot.font)

    # exibe
    plot.show()
예제 #2
0
def histogram():
    grades = [83, 95, 91, 87, 70, 30, 85, 82, 100, 67, 73, 77, 0]
    decile = lambda grade: grade // 10 * 10
    histogram = Counter(decile(grade) for grade in grades)
    print(histogram)

    plt = Grafico(False)
    plt.p.bar([x for x in histogram.keys()], histogram.values(), 8)
    plt.p.axis([-6, 106, 0, 5])

    plt.p.xticks(range(0, 101, 10))
    plt.eixo_x = "Decil"
    plt.eixo_y = "# de Alunos"
    plt.titulo = "Distribuição das Notas do Teste 1"

    plt.show()
예제 #3
0
def linhas():
    # usando a cabeça pythonica
    variance = [2**i for i in range(9)]
    bias_square = sorted(variance, reverse=True)
    print(variance, bias_square)
    total_error = [x + y for x, y in zip(variance, bias_square)]
    xs = [i for i, _ in enumerate(variance)]  # pra não usar valor fixo
    print(total_error, xs)

    # múltiplas chamadas ao plot
    plot = Grafico()
    plot.XY(xs, [variance, 'g:', 'variância'],
            [bias_square, 'r-.', 'polarização^2'],
            [total_error, 'b-', 'erro total'])

    # significa posicionar a legenda em "top center"
    plot.p.legend(loc=9)
    plot.eixo_x = "complexidade do modelo"
    plot.titulo = "Relação entre Polarização e Variância"
    plot.show()