Interactive GUI visualizing baby name trends over decades with efficient data processing and web scraping.
Bouncy Breakout Game
#Object-oriented#UserControls
An engaging breakout game allowing users to customize the game mode and ball velocity.
CheryLotoshop
#ImageProcessing #Algorithm
An application designed to help users remove unwanted objects/clutters from beautiful photos.
Stock-Prediction-Model
#R#TimeSeries
Analyzing and forecasting stock prices with ARIMA & GARCH models.
Personal Website
#HTML#CSS#JavaScript
My platform for networking and showcasing my programmin work to potential employers/collaborators
Object-Oriented Drawing Tool
#MouseEvents#Campy
An application developed in Python that allows users to interactively draw on a canvas by clicking.
Baby Names Trends
Data AggregationSearch FunctionalityTrend Visualization
The "Baby Names Trends" project is a full-stack application that provides an intuitive interface for users to explore historical trends of baby names from 1900 to 2020. Key features include:
Data Aggregation: Collates baby name data from multiple files into a comprehensive dataset.
Search Functionality: Allows users to search for specific baby names and see their rank over the years. Utilizes case-insensitive search to ensure a seamless user experience.
Trend Visualization: Plots historical trends of baby names on a graphical interface using Tkinter. The graph displays name rankings over decades, illustrating their popularity changes.
Bouncy Breakout Game
Interactive GameplayUser ControlsCustomizable Game Mode
The "Bouncy Breakout Game" project is a classic arcade-style game implemented in Python. Players control a paddle to bounce a ball and break all the bricks on the screen. The player starts with 3 lives and must use the paddle to prevent the ball from falling off the bottom edge of the screen. Key features include:
Interactive Gameplay: The game provides an engaging and interactive experience where players use a mouse to control the paddle.
User Controls: A responsive control system allows players to move the paddle precisely to hit the ball and destroy bricks.
Customizable Game Mode: Adjustable brick amounts, ball velocity, and lives allow users to customize the game mode, enhancing their playing experience.
The "CheryLotoshop" project is an image processing application developed in Python. The program allows users to remove unwanted objects from photos by computing and displaying a composite image based on several input images. Key features include:
Image Processing: Utilizes algorithms to compare pixel values and create a "ghost" effect, seamlessly merging multiple images.
Photo Editing: Allows users to remove unwanted objects from photos, creating cleaner and more visually appealing images.
Batch Processing Algorithm:Handle large volumes of image data & adapt to varying workloads without compromising performance or quality
Stock Prediction Model
Time Series AnalysisARIMA ModelGARCH Model
The "Stock Prediction Models" project involves time series analysis of stock prices using ARIMA and GARCH models. The project focuses on forecasting stock returns and assessing the accuracy of the predictions using backtesting techniques. Key features include:
Time Series Analysis: Analyzes real-world financial data to forecast future trends.
ARIMA Model: Utilizes the ARIMA model to predict stock prices based on past values and error terms.
GARCH Model: Employs the GARCH model to forecast stock price volatility and returns.
Personal Website
Web DevelopmentPortfolioHTML/CSS/JS
The "Personal Website" project is a comprehensive showcase of my skills, accomplishments, and projects. This website serves as an interactive portfolio where visitors can learn more about me, explore my work, and get in touch. Key features include:
Web Development: Demonstrates my web development skills using HTML, CSS, and JavaScript.
Portfolio: Provides a structured and visually appealing presentation of my projects and achievements.
Responsive Design: Ensures the website is accessible and looks great on all devices, from desktops to mobile phones.
Object-Oriented Drawing Tool
Drawing ToolGraphic DesignEvent Handling
The "Object-Oriented Drawing Tool" project is a creative application developed in Python. It allows users to interactively draw lines on a canvas by clicking on the start and end points. Additionally, the project includes a crafted image depicting a serene scene. Key features include:
Drawing Tool: Enables users to draw lines on the canvas by selecting start and end points with their mouse clicks.
Graphic Design: Incorporates a detailed background image titled "Fishing at Sunset" that exhibits complex shapes and designs.
Event Handling: Utilizes Python and the Campy graphics library for graphical interface and mouse events.
About
I’m Tsai-Wei Lin, a PhD student in Computational & Data Sciences at
Washington University in St. Louis (WashU).
My research focuses on modeling public health systems, with emphasis on
agent-based modeling, synthetic population generation,
decision modeling under constraints, and health economics.