Skip to content


Real-Time Satellite Visualization


Tracking satellites in real time form TLS data.

This project code repository on GitHub:

Using Python + pyglet OpenGL library + PyEphem library.
Project code is licensed under the MIT license.

Screen Shots

2D 3D 3D - NOAA satellites 1 3D - NOAA satellites 2 3D - International Space Station 3D - GPS satellites 1 3D - GPS satellites 2 3D - Hubble Space Telescope 3D - AfriStar


Data type: TLS (Two-line element set)
Can be found at

2D version

File:, how to control:

  • Click a satellite to display its orbit.
  • Press H to show/hide all orbits on-screen.
  • Press UP/DOWN to change satellite category.
  • Press LEFT/RIGHT to adjust orbit interval for line drawing.

3D version

File:, control:

  • Press Z/X to zoom in or out.
  • Press arrow keys to rotate the global.

File:, control:

  1. Use arrow keys/drag mouse to move the globe
  2. Use A/W/S/D to rotate the globe in different ways
  3. Reset the view point by click Q(x-axis rotation), E(z-axis rotation), N(all rotation and back to UB)
  4. Use Z/X to zoom in and out
  5. Use G/H to show/hide the satellites’s trace lines
  6. Use number key 1-7 to select satellite sets

File:, control:

All control methods from, plus:

  1. Use R to randomly select a satellite on-screen and output the address below it
  2. Use E to randomly give a point on earth and output its real-world address
  3. Move the globe and press T for the address of the current point (center of the cross)

Sample Data

Satellites Category File Name (inside data folder )
Space Stations stations.txt
NOAA Weather Satellites noaa.txt
GPS Operational gps-ops.txt
Intelsat Satellites intelsat.txt
Science Satellites science.txt
Miscellaneous Military military.txt
Last 30 Days’ Launches tle-new.txt