Purpose - This study aims to develop and visualize two-dimensional (2D) and three-dimensional (3D) sine waves using the Spyder application as a programming-based physics learning medium to improve students’ understanding of wave concepts through dynamic visualization. Design/methods/approach - The study employs numerical simulation through mathematical modeling of waves using the Python programming language. Scientific libraries such as NumPy and Matplotlib are utilized to generate 2D and 3D visual representations of sine waves. The process involves writing simulation code in Spyder and conducting visual analysis of the resulting graphs. Findings - The results show that 2D visualization effectively illustrates simple harmonic oscillation patterns, while 3D visualization demonstrates radial wave propagation that corresponds to real physical phenomena such as water and sound waves. The use of Spyder enhances students’ understanding of key wave parameters, including amplitude, wavelength, phase, and propagation direction. Research implication/limitation - This study implies that programming-based visualization can support interactive and exploratory physics learning while strengthening students’ digital literacy and computational thinking skills. However, the study is limited to simulation-based analysis and does not yet include empirical measurement of learning outcomes or comparisons with other learning media. Originality/value - This research offers an innovative integration of Python programming and physics education by utilizing Spyder as a learning medium for visualizing sine waves in both 2D and 3D formats, providing added value in enhancing conceptual understanding and computational skills in physics learning.