Listen to this Post

Introduction
Peter Atwood’s innovative star map project demonstrates how ArcGIS Online, combined with Arcade expressions and NASA data, can create dynamic, interactive celestial visualizations. By leveraging scripting, live data integration, and layered symbology, this approach opens new possibilities for GIS professionals in astronomy, education, and data storytelling.
Learning Objectives
- Use Arcade expressions to manipulate symbology and labels dynamically.
- Integrate NASA Horizon API data for real-time planetary positioning.
- Apply multi-scale visibility and layer effects to enhance map interactivity.
1. Converting Strings to Special Characters with Arcade
Use Case: Displaying zodiac symbols and Greek letters in star labels.
Arcade Expression Example:
// Convert constellation abbreviations to Unicode symbols
var zodiac = {
"ARI": "♈", "TAU": "♉", "GEM": "♊", "CAN": "♋",
"LEO": "♌", "VIR": "♍", "LIB": "♎", "SCO": "♏",
"SAG": "♐", "CAP": "♑", "AQU": "♒", "PIS": "♓"
};
return zodiac[$feature.Constellation] || $feature.Constellation;
Steps:
1. Open ArcGIS Online Map Viewer.
2. Select your star layer → Configure Labels.
- Paste the Arcade script to replace abbreviations with symbols.
4. Adjust font styling for clarity.
- Live Planetary Positions Using NASA Horizon Data
Use Case: Displaying real-time planet locations for any date in 2025.
NASA Horizon API Workflow:
1. Query planetary ephemerides via:
https://ssd.jpl.nasa.gov/api/horizons.api?format=json&EPHEM_TYPE=OBSERVER&OBJ_DATA=YES&QUANTITIES='1,9'
2. Process JSON output in Arcade to filter by current date:
// Show only today's positions var today = Now(); return IIF(DateDiff(today, $feature.Date) == 0, $feature.Position, null);
Steps:
- Import NASA data as a CSV.
- Use the Arcade script to dynamically filter visible planets.
3. Multi-Scale Star Visibility with Layer Duplication
Use Case: Displaying brighter stars at zoomed-out levels.
Technique:
1. Duplicate your star layer 3 times.
2. Set visibility ranges:
- Layer 1: Bright stars (magnitude ≤ 3.0) → Visible at all scales.
- Layer 2: Medium stars (magnitude ≤ 5.0) → Visible at 1:500,000+.
- Layer 3: All stars → Visible at 1:100,000+.
Arcade Filter Example:
// Filter stars by magnitude return $feature.Magnitude <= 3.0;
- Applying Glow and Blur Effects for Celestial Realism
Use Case: Enhancing nebulae and star glow.
Steps:
1. Select a celestial layer → Layer Properties.
2. Apply “Glow” effect (3px radius, 70% opacity).
- For nebulae, use “Blur” (2px) + “Bloom” effect.
5. Automating Zodiac Label Placement
Use Case: Preventing label clutter in dense star fields.
Arcade Placement Script:
// Prioritize labels for brighter stars return IIF($feature.Magnitude <= 1.5, $feature.Name, "");
What Undercode Say:
- Key Takeaway 1: Arcade expressions bridge data-driven design and real-time interactivity, making GIS a powerful tool beyond Earth-based mapping.
- Key Takeaway 2: NASA API integration showcases how external datasets can enrich spatial projects with minimal backend work.
Analysis:
Atwood’s project exemplifies the shift toward “living maps”—dynamic visualizations that update based on time, user interaction, or external feeds. As APIs and scripting mature, expect more astronomy, weather, and IoT applications in GIS.
Prediction:
By 2030, real-time celestial mapping will become standard in planetariums, aerospace training, and astrophysics research, driven by improved API accessibility and browser-based rendering.
Final Word:
Experiment with these techniques in ArcGIS Online to push boundaries in data visualization. For further learning, explore:
– NASA Horizon API Docs
– ArcGIS Arcade Guide
🎯Let’s Practice For Free:
IT/Security Reporter URL:
Reported By: Peter Atwood – Hackers Feeds
Extra Hub: Undercode MoN
Basic Verification: Pass ✅


