migrate to pixi

This commit is contained in:
Dustella 2025-05-05 11:24:58 +08:00
parent a6e598a26f
commit 285c273b01
Signed by: Dustella
GPG Key ID: 35AA0AA3DC402D5C
7 changed files with 1781 additions and 1 deletions

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true

4
.gitignore vendored
View File

@ -28,3 +28,7 @@ linux
*.7z
res
*.txt
# pixi environments
.pixi
*.egg-info

View File

@ -80,10 +80,30 @@ class NcData:
return iter([self.dataset, self.tplatitude, self.tplongitude, self.tpaltitude, self.ktemp, self.time, self.date, self.date_time])
ENABLE_SABER_FILTERING = True # 是否启用SABER数据的过滤
def data_nc_load(file_path):
dataset = nc.Dataset(file_path, 'r')
# do filtering
if ENABLE_SABER_FILTERING:
# lon_valid = (ds.tplongitude >= 0) & (ds.tplongitude <= 360)
lon_valid = (dataset.variables['tplongitude'][:] >= 0) & (
dataset.variables['tplongitude'][:] <= 360)
dataset = dataset.where(lon_valid, drop=True)
# 第二步:纬度筛选 (-90-90)
lat_valid = (dataset.variables['tplatitude'][:] >= -
90) & (dataset.variables['tplatitude'][:] <= 90)
dataset = dataset.where(lat_valid, drop=True)
# 第三步:温度筛选 (80-1000 或 -999)
temp_valid = ((dataset.variables['ktemp'][:] >= 80) & (
dataset.variables['ktemp'][:] <= 1000)) | (dataset.variables['ktemp'][:] == -999)
dataset = dataset.where(temp_valid, drop=True)
# 纬度数据,二维数组形状为(42820,379) 42820为事件379则为不同高度
tplatitude = dataset.variables['tplatitude'][:, :]
tplongitude = dataset.variables['tplongitude'][:, :] # 经度数据

View File

@ -861,7 +861,7 @@ class TidiGravityWPlotMonthly:
plt.figure(figsize=(10, 6)) # 设置图像大小
# 绘制热力图,设置 x 和 y 轴的标签
sns.heatmap(data0_reversed, annot=False, cmap='YlGnBu', linewidths=0.5,
yticklabels=h_reversed, xticklabels=months, cbar_kws={'label': ' Gravitational potential energy'})
yticklabels=h_reversed, xticklabels=months, cbar_kws={'label': '重力波动能'})
# 横坐标过长,设置等间隔展示
interval = 34 # 横坐标显示间隔

1531
pixi.lock generated Normal file

File diff suppressed because it is too large Load Diff

114
pixi.toml Normal file
View File

@ -0,0 +1,114 @@
[workspace]
authors = ["Dustella <fdnoaivj@outlook.com>"]
channels = ["main", "r", "msys2", "https://repo.anaconda.com/pkgs/main", "https://repo.anaconda.com/pkgs/r"]
name = "zephyr"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[dependencies]
_libgcc_mutex = { version = "==0.1", build = "main" }
_openmp_mutex = { version = "==5.1", build = "1_gnu" }
bzip2 = { version = "==1.0.8", build = "h5eee18b_6" }
ca-certificates = { version = "==2024.12.31", build = "h06a4308_0" }
ld_impl_linux-64 = { version = "==2.40", build = "h12ee557_0" }
libffi = { version = "==3.4.4", build = "h6a678d5_1" }
libgcc-ng = { version = "==11.2.0", build = "h1234567_1" }
libgomp = { version = "==11.2.0", build = "h1234567_1" }
libstdcxx-ng = { version = "==11.2.0", build = "h1234567_1" }
libuuid = { version = "==1.41.5", build = "h5eee18b_0" }
ncurses = { version = "==6.4", build = "h6a678d5_0" }
openssl = { version = "==3.0.15", build = "h5eee18b_0" }
pip = { version = "==24.2", build = "py310h06a4308_0" }
python = { version = "==3.10.11", build = "h955ad1f_3" }
readline = { version = "==8.2", build = "h5eee18b_0" }
setuptools = { version = "==75.1.0", build = "py310h06a4308_0" }
sqlite = { version = "==3.45.3", build = "h5eee18b_0" }
tk = { version = "==8.6.14", build = "h39e8969_0" }
wheel = { version = "==0.44.0", build = "py310h06a4308_0" }
xz = { version = "==5.4.6", build = "h5eee18b_1" }
zlib = { version = "==1.2.13", build = "h5eee18b_1" }
[pypi-dependencies]
aiofiles = "==24.1.0"
altgraph = "==0.17.4"
asttokens = "==3.0.0"
blinker = "==1.9.0"
certifi = "==2024.12.14"
cftime = "==1.6.4.post1"
click = "==8.1.8"
comm = "==0.2.2"
contourpy = "==1.3.1"
cycler = "==0.12.1"
debugpy = "==1.8.11"
decorator = "==5.1.1"
exceptiongroup = "==1.2.2"
executing = "==2.1.0"
flask = "==3.1.0"
flask-cors = "==5.0.0"
fonttools = "==4.55.3"
gevent = "==24.11.1"
greenlet = "==3.1.1"
h11 = "==0.14.0"
h2 = "==4.1.0"
hpack = "==4.1.0"
hypercorn = "==0.17.3"
hyperframe = "==6.1.0"
ipykernel = "==6.29.5"
ipython = "==8.31.0"
itsdangerous = "==2.2.0"
jedi = "==0.19.2"
jinja2 = "==3.1.5"
joblib = "==1.4.2"
jupyter-client = "==8.6.3"
jupyter-core = "==5.7.2"
kiwisolver = "==1.4.8"
markupsafe = "==3.0.2"
matplotlib = "==3.10.0"
matplotlib-inline = "==0.1.7"
mpmath = "==1.3.0"
nest-asyncio = "==1.6.0"
netcdf4 = "==1.7.2"
numpy = "==2.2.1"
packaging = "==24.2"
pandas = "==2.2.3"
parso = "==0.8.4"
pexpect = "==4.9.0"
pillow = "==11.1.0"
platformdirs = "==4.3.6"
priority = "==2.0.0"
prompt-toolkit = "==3.0.48"
psutil = "==6.1.1"
ptyprocess = "==0.7.0"
pure-eval = "==0.2.3"
pyarrow = "==18.1.0"
pygments = "==2.19.1"
pyinstaller = "==6.11.1"
pyinstaller-hooks-contrib = "==2025.0"
pyparsing = "==3.2.1"
python-dateutil = "==2.9.0.post0"
pytz = "==2024.2"
pyzmq = "==26.2.0"
quart = "==0.20.0"
quart-cors = "==0.8.0"
scikit-learn = "==1.6.1"
scipy = "==1.15.1"
seaborn = "==0.13.2"
six = "==1.17.0"
stack-data = "==0.6.3"
sympy = "==1.13.3"
taskgroup = "==0.2.2"
threadpoolctl = "==3.5.0"
tomli = "==2.2.1"
tornado = "==6.4.2"
traitlets = "==5.14.3"
typing-extensions = "==4.12.2"
tzdata = "==2024.2"
wcwidth = "==0.2.13"
werkzeug = "==3.1.3"
windrose = "==1.9.2"
wsproto = "==1.2.0"
xarray = "==2025.1.1"
zope-event = "==5.0"
zope-interface = "==7.2"

109
zephyr.yaml Normal file
View File

@ -0,0 +1,109 @@
name: zephyr
channels:
- defaults
- https://repo.anaconda.com/pkgs/main
- https://repo.anaconda.com/pkgs/r
dependencies:
- _libgcc_mutex=0.1=main
- _openmp_mutex=5.1=1_gnu
- bzip2=1.0.8=h5eee18b_6
- ca-certificates=2024.12.31=h06a4308_0
- ld_impl_linux-64=2.40=h12ee557_0
- libffi=3.4.4=h6a678d5_1
- libgcc-ng=11.2.0=h1234567_1
- libgomp=11.2.0=h1234567_1
- libstdcxx-ng=11.2.0=h1234567_1
- libuuid=1.41.5=h5eee18b_0
- ncurses=6.4=h6a678d5_0
- openssl=3.0.15=h5eee18b_0
- pip=24.2=py310h06a4308_0
- python=3.10.11=h955ad1f_3
- readline=8.2=h5eee18b_0
- setuptools=75.1.0=py310h06a4308_0
- sqlite=3.45.3=h5eee18b_0
- tk=8.6.14=h39e8969_0
- wheel=0.44.0=py310h06a4308_0
- xz=5.4.6=h5eee18b_1
- zlib=1.2.13=h5eee18b_1
- pip:
- aiofiles==24.1.0
- altgraph==0.17.4
- asttokens==3.0.0
- blinker==1.9.0
- certifi==2024.12.14
- cftime==1.6.4.post1
- click==8.1.8
- comm==0.2.2
- contourpy==1.3.1
- cycler==0.12.1
- debugpy==1.8.11
- decorator==5.1.1
- exceptiongroup==1.2.2
- executing==2.1.0
- flask==3.1.0
- flask-cors==5.0.0
- fonttools==4.55.3
- gevent==24.11.1
- greenlet==3.1.1
- h11==0.14.0
- h2==4.1.0
- hpack==4.1.0
- hypercorn==0.17.3
- hyperframe==6.1.0
- ipykernel==6.29.5
- ipython==8.31.0
- itsdangerous==2.2.0
- jedi==0.19.2
- jinja2==3.1.5
- joblib==1.4.2
- jupyter-client==8.6.3
- jupyter-core==5.7.2
- kiwisolver==1.4.8
- markupsafe==3.0.2
- matplotlib==3.10.0
- matplotlib-inline==0.1.7
- mpmath==1.3.0
- nest-asyncio==1.6.0
- netcdf4==1.7.2
- numpy==2.2.1
- packaging==24.2
- pandas==2.2.3
- parso==0.8.4
- pexpect==4.9.0
- pillow==11.1.0
- platformdirs==4.3.6
- priority==2.0.0
- prompt-toolkit==3.0.48
- psutil==6.1.1
- ptyprocess==0.7.0
- pure-eval==0.2.3
- pyarrow==18.1.0
- pygments==2.19.1
- pyinstaller==6.11.1
- pyinstaller-hooks-contrib==2025.0
- pyparsing==3.2.1
- python-dateutil==2.9.0.post0
- pytz==2024.2
- pyzmq==26.2.0
- quart==0.20.0
- quart-cors==0.8.0
- scikit-learn==1.6.1
- scipy==1.15.1
- seaborn==0.13.2
- six==1.17.0
- stack-data==0.6.3
- sympy==1.13.3
- taskgroup==0.2.2
- threadpoolctl==3.5.0
- tomli==2.2.1
- tornado==6.4.2
- traitlets==5.14.3
- typing-extensions==4.12.2
- tzdata==2024.2
- wcwidth==0.2.13
- werkzeug==3.1.3
- windrose==1.9.2
- wsproto==1.2.0
- xarray==2025.1.1
- zope-event==5.0
- zope-interface==7.2