An OpenQASM visualisation tool
The qasm2image repository provides functions to represent quantum circuits written following the OpenQASM specification.
The tool and all the dependencies are available via the PIP tool. See the installation instructions below.
pip3 install cffi pip3 install qasm2image
In a Python environnement
# Import the functions from qasm2image import qasm2svg from qasm2image import qasm2png # Generate your QASM string (either read from a file or generate a circuit and ask for its QASM). qasm_str = "..." # Define the basis used to represent the circuit basis = 'u1,u2,u3,U,cx' # Compute the SVG representation svg_str = qasm2svg(qasm_str, basis=basis, show_clbits=True) # Compute the PNG representation png_bytes = qasm2png(qasm_str, basis=basis, show_clbits=True) # Types of the outputs assert type(svg_str) is str assert type(png_bytes) is bytes # Write the result into files with open('circuit.svg', 'w') as svg_file: svg_file.write(svg_str) # Don't forget to write in *binary* mode for PNG with open('circuit.png', 'wb') as png_file: png_file.write(png_bytes)
In a shell environnement
A script is provided to change QASM code directly from the command line.
$ qasm2image -h usage: qasm2image [-h] [-b BASIS] [--hide-clbits] [-s SCALE] input_file output_file Transform a quantum circuit in QASM format to an image format. positional arguments: input_file the QASM file implementing the circuit to transform output_file the image file that will be generated by the tool optional arguments: -h, --help show this help message and exit -b BASIS, --basis BASIS a comma-separated list of gate names which represent the gate basis in which the circuit will be decomposed --hide-clbits if present, classical bits will not be represented -s SCALE, --scale SCALE scale of the PNG image. SVG output is not affected by this parameter
This project is distributed under the CeCILL-B license. A copy of the whole license is included in the repository.
In order to use the work in this repository you have a strong obligation to cite (as stated in the license):
- The author of the work: Adrien Suau (see on my GitHub page or mail me if any doubt).
- The CERFACS (Centre Européen de Recherche et de Formation Avancée en Calcul Scientifique).
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size qasm2image-0.8.0.tar.gz (27.5 kB)||File type Source||Python version None||Upload date||Hashes View|