# Generating Elliptic Curves

In the following section, we are going to see how to generate Elliptic Curves and draw the curve with Python.

## A Weierstrass Curve

The python code below draw a Weierstrass Curve:

    #!/usr/bin/env python3

    import matplotlib.pyplot as plt
    from Cryptotools.Groups.curve import Curve

    a = 3
    b = 8

    curve = Curve(a, b, Curve.WEIERSTRASS)
    x = curve.x
    curve.generatePoints()
    y = curve.y
    yn = curve.yn
    points = curve.getPoints()

    plt.figure(figsize=(10, 6))
    plt.plot(x, y, color='b', label=f'$y^2 = x^3 + {a}x + {b}$')
    plt.plot(x, yn, color='b', )
    plt.legend()
    plt.show()

« Previous