p1: lat_fix
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 71 KiB |
@@ -551,7 +551,22 @@ def plot_latitude_effects(
|
|||||||
# Plot continuous curve
|
# Plot continuous curve
|
||||||
ax.plot(latitudes, fuel_ratios, 'g-', linewidth=2, label='Fuel Ratio vs Latitude')
|
ax.plot(latitudes, fuel_ratios, 'g-', linewidth=2, label='Fuel Ratio vs Latitude')
|
||||||
|
|
||||||
# Mark launch sites
|
# Mark launch sites with custom offsets to avoid overlap with curve
|
||||||
|
# Offsets: (x, y) in points - positive y moves text up, positive x moves right
|
||||||
|
label_offsets = {
|
||||||
|
'赤道': (5, -15), # Below curve
|
||||||
|
'Kourou': (5, 8), # Above curve
|
||||||
|
'SDSC': (5, -15), # Below curve
|
||||||
|
'Texas': (-50, 8), # Left and above
|
||||||
|
'Florida': (5, 8), # Above curve
|
||||||
|
'California': (-60, -8), # Left
|
||||||
|
'Virginia': (5, 8), # Above curve
|
||||||
|
'Taiyuan': (-45, -12), # Left and below
|
||||||
|
'Mahia': (5, 8), # Above curve
|
||||||
|
'Alaska': (5, -15), # Below curve
|
||||||
|
'Baikonur': (5, 8), # Above curve
|
||||||
|
}
|
||||||
|
|
||||||
for name, site in LAUNCH_SITES.items():
|
for name, site in LAUNCH_SITES.items():
|
||||||
abs_lat = abs(site.latitude)
|
abs_lat = abs(site.latitude)
|
||||||
site_temp = LaunchSite(site.name, abs_lat)
|
site_temp = LaunchSite(site.name, abs_lat)
|
||||||
@@ -559,12 +574,14 @@ def plot_latitude_effects(
|
|||||||
ax.plot(abs_lat, result['fuel_ratio'], 'mo', markersize=8)
|
ax.plot(abs_lat, result['fuel_ratio'], 'mo', markersize=8)
|
||||||
# Simplified label
|
# Simplified label
|
||||||
label = site.name.split('(')[0].strip()
|
label = site.name.split('(')[0].strip()
|
||||||
|
# Get custom offset for this site, default to (5, 8)
|
||||||
|
offset = label_offsets.get(name, (5, 8))
|
||||||
ax.annotate(label, (abs_lat, result['fuel_ratio']),
|
ax.annotate(label, (abs_lat, result['fuel_ratio']),
|
||||||
textcoords="offset points", xytext=(3, 3), fontsize=8, rotation=15)
|
textcoords="offset points", xytext=offset, fontsize=11)
|
||||||
|
|
||||||
ax.set_xlabel('Latitude |φ| (°)', fontsize=12)
|
ax.set_xlabel('Latitude |φ| (°)', fontsize=12)
|
||||||
ax.set_ylabel('Fuel / Payload Mass Ratio', fontsize=12)
|
ax.set_ylabel('Fuel / Payload Mass Ratio', fontsize=12)
|
||||||
ax.set_title(f'Fuel Requirement vs Launch Latitude{title_suffix}', fontsize=13)
|
# ax.set_title(f'Fuel Requirement vs Launch Latitude{title_suffix}', fontsize=13)
|
||||||
ax.grid(True, alpha=0.3)
|
ax.grid(True, alpha=0.3)
|
||||||
ax.set_xlim(0, 65)
|
ax.set_xlim(0, 65)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user