Skip to content


Repository files navigation


Build Status Coverage Status

Python 3.7 Python 2.7 IronPython


Ladybug is a Python library to analyze, modify, and visualize EnergyPlus Weather files (epw). You can download epw files from EPWMap.

This repository is the core library that is the base for the Ladybug Grasshopper Plugin. For plugin-specific questions and comments refer to ladybug-grasshopper.


For the Legacy Ladybug Grasshopper Plugin see this repository.


pip install ladybug-core


# load epw weather data
from ladybug.epw import EPW
epw_data = EPW('path_to_epw_file')
dry_bulb_temp = epw_data.dry_bulb_temperature

# Get altitude and longitude
from ladybug.location import Location
from ladybug.sunpath import Sunpath

# Create location. You can also extract location data from an epw file.
sydney = Location('Sydney', 'AUS', latitude=-33.87, longitude=151.22, time_zone=10)

# Initiate sunpath
sp = Sunpath.from_location(sydney)
sun = sp.calculate_sun(month=11, day=15, hour=11.0)

print('altitude: {}, azimuth: {}'.format(sun.altitude, sun.azimuth))
>>> altitude: 72.26, azimuth: 32.37

Derivative Work

Ladybug is a derivative work of the following software projects:

  • PVLib-python for solar irradiance calculations. Available under BSD 3-clause.
  • PsychroLib for psychrometric calculations. Available under MIT License.

Applicable copyright notices for these works can be found within the relevant .py files.