Easy access to Jua's weather & power services
Project description
Jua Python SDK
Access industry-leading weather forecasts with ease
The Jua Python SDK provides a simple and powerful interface to Jua's state-of-the-art weather forecasting capabilities. Easily integrate accurate weather data into your applications, research, or analysis workflows.
Getting Started 🚀
Prerequisites
- Python 3.11 or higher
- Internet connection for API access
Installation
Install jua with pip:
pip install jua
Alternatively, checkout uv for managing dependencies and Python versions:
uv init && uv add jua
Authentication
Generate an API key from the Jua dashboard and save it to ~/.jua/default/api-key.json.
Coming soon: Simply run jua auth to authenticate via your web browser.
Examples
Access the latest 20-day forecast for a point location
Retrieve temperature forecasts for Zurich and visualize the data:
import matplotlib.pyplot as plt
from jua import JuaClient
from jua.types.geo import LatLon
from jua.weather import Models, Variables
client = JuaClient()
model = client.weather.get_model(Models.EPT1_5)
zurich = LatLon(lat=47.3769, lon=8.5417)
# Get latest forecast
forecast = model.forecast.get_forecast(
points=[zurich]
)
temp_data = forecast[Variables.AIR_TEMPERATURE_AT_HEIGHT_LEVEL_2M]
temp_data.to_celcius().to_absolute_time().plot()
plt.show()
Show output
Plot global forecast with 10-hour lead time
Generate a global wind speed visualization:
import matplotlib.pyplot as plt
from jua import JuaClient
from jua.weather import Models, Variables
client = JuaClient()
model = client.weather.get_model(Models.EPT1_5)
lead_time = 10 # hours
dataset = model.forecast.get_forecast(
prediction_timedelta=lead_time,
variables=[
Variables.WIND_SPEED_AT_HEIGHT_LEVEL_10M,
],
)
dataset[Variables.WIND_SPEED_AT_HEIGHT_LEVEL_10M].plot()
plt.show()
Show output
Access historical weather data
Retrieve and visualize temperature data for Europe from a specific date:
import matplotlib.pyplot as plt
from jua import JuaClient
from jua.weather import Models, Variables
client = JuaClient()
model = client.weather.get_model(Models.EPT1_5_EARLY)
init_time = "2024-02-01 06:00:00"
hindcast = model.hindcast.get_hindcast(
variables=[Variables.AIR_TEMPERATURE_AT_HEIGHT_LEVEL_2M],
init_time=init_time,
prediction_timedelta=0,
# Select Europe
latitude=slice(71, 36),
longitude=slice(-15, 50),
method="nearest",
)
data = hindcast[Variables.AIR_TEMPERATURE_AT_HEIGHT_LEVEL_2M]
data.plot()
plt.show()
Show output
Documentation
For comprehensive documentation, visit docs.jua.ai.
Contributing
See the contribution guide to get started.
Changes
See the changelog for the latest changes.
Support
If you encounter any issues or have questions, please:
- Check the documentation
- Open an issue on GitHub
- Contact support@jua.ai
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jua-0.9.1.tar.gz.
File metadata
- Download URL: jua-0.9.1.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.8.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a77a76722478f4bfb8b066a9bba8fa6a4a3e12e18f84fb01c812be3b5825a8a7
|
|
| MD5 |
ecba4fab2f5cfd6fae62714856f57713
|
|
| BLAKE2b-256 |
ddc656ada474a5e9ea35f43e58aa53b313d43cd3b2e0ed7da001249c49e2716f
|
File details
Details for the file jua-0.9.1-py3-none-any.whl.
File metadata
- Download URL: jua-0.9.1-py3-none-any.whl
- Upload date:
- Size: 51.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.8.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1727349358af345b625b5999bf55de00dda09e302f1d7af8ce37722e96c466f9
|
|
| MD5 |
e5c3f2ff1f618bfe67b59579fd8d3030
|
|
| BLAKE2b-256 |
09511824422160e8fdbe6e31b90121fe651faf8f62e6f2a42802f3eaca32f14d
|