Fitness Tracker

Fitness Tracker Project Overview

  1. Objectives:
    • Track daily steps.
    • Record workouts (type, duration).
    • Calculate calories burned based on steps and workouts.
    • Visualize data.
  2. Technologies:
    • Python
    • Pandas for data manipulation
    • Matplotlib for visualization

Step-by-Step Implementation

Step 1: Set Up Your Environment

Make sure you have Python installed along with the required libraries. You can install the necessary libraries using pip:

pip install pandas matplotlib

Step 2: Define the Fitness Tracker Class

Create a class to encapsulate the fitness tracking functionality.

import pandas as pd
import matplotlib.pyplot as plt

class FitnessTracker:
    def __init__(self):
        self.data = pd.DataFrame(columns=['Date', 'Steps', 'Workout Type', 'Duration', 'Calories Burned'])
    
    def add_steps(self, date, steps):
        self.data = self.data.append({'Date': date, 'Steps': steps, 'Workout Type': None, 'Duration': None, 'Calories Burned': None}, ignore_index=True)
    
    def add_workout(self, date, workout_type, duration):
        # Calculate calories burned (approximate: 5 calories per minute for moderate exercise)
        calories_burned = duration * 5
        self.data = self.data.append({'Date': date, 'Steps': None, 'Workout Type': workout_type, 'Duration': duration, 'Calories Burned': calories_burned}, ignore_index=True)
    
    def total_steps(self):
        return self.data['Steps'].sum()

    def total_calories(self):
        return self.data['Calories Burned'].sum()

    def visualize_data(self):
        self.data['Date'] = pd.to_datetime(self.data['Date'])
        self.data.set_index('Date', inplace=True)
        
        plt.figure(figsize=(10, 5))
        plt.plot(self.data.index, self.data['Steps'], label='Steps', marker='o')
        plt.plot(self.data.index, self.data['Calories Burned'].cumsum(), label='Calories Burned', marker='o')
        plt.title('Fitness Tracker Data')
        plt.xlabel('Date')
        plt.ylabel('Count')
        plt.legend()
        plt.xticks(rotation=45)
        plt.tight_layout()
        plt.show()

Step 3: Use the Fitness Tracker

Now, let’s create an instance of the FitnessTracker class and add some data.

# Initialize the fitness tracker
tracker = FitnessTracker()

# Adding some sample data
tracker.add_steps('2023-09-01', 10000)
tracker.add_steps('2023-09-02', 8000)
tracker.add_workout('2023-09-02', 'Running', 30)
tracker.add_steps('2023-09-03', 12000)
tracker.add_workout('2023-09-03', 'Cycling', 45)

# Display total steps and calories burned
print(f"Total Steps: {tracker.total_steps()}")
print(f"Total Calories Burned: {tracker.total_calories()}")

# Visualize the data
tracker.visualize_data()

Step 4: Run the Project

  1. Save your code in a file, e.g., fitness_tracker.py.
  2. Run the script using Python:
python fitness_tracker.py

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *