Colombia After Sunset: Tatacoa Desert, Andean Highlands & Páramo Skies

Stargazing in Colombia changes sharply between the semi-arid Tatacoa basin, the dry Caribbean edge of La Guajira and cloud-prone high country in the Eastern Cordillera. January–February gives this eight-location portfolio its most useful shared planning window: it favors Tatacoa and La Guajira, matches Villa de Leyva’s drier early-year pattern and reduces, without removing, the cloud risk of the páramo. The strongest escape from large-city light comes from remote desert and rural highland settings rather than from Colombia’s metropolitan astronomy facilities.

Colombia Stargazing Score
72/100
Selected-location portfolio
Highest-Rated Location
Tatacoa Desert Observatory · 87/100
Starlight-certified desert setting with public astronomy infrastructure
Preferred Observing Window
January–February
Shared seasonal window used for all eight locations
Locations Assessed
8
Desert, coast, rural Andes, lake basin, reserve and páramo settings
Strongest Sky Type
Dry rural desert
Tatacoa and Alta Guajira lead on low-light escape and open horizons
Main Atmospheric Risk
Tropical cloud and moisture
Most important in Chingaza and the Sierra Nevada de Santa Marta cloud belt

Colombia Night-Sky Planning Map

The marker set spans Huila, Boyacá, Cundinamarca, Magdalena and La Guajira so that dry-sky strength can be weighed against elevation, cloud exposure and nighttime access.

Planning Locations

These markers are planning centers, not parking pins. Tatacoa tracks, Alta Guajira routes, protected-area gates, reserve check-in rules and rural roadside stopping permissions should be verified with the responsible authority, host or local operator before a night session.

Colombia Stargazing Suitability Score

72/100

Colombia’s portfolio combines two Starlight-recognized destinations with remote Caribbean desert, high Boyacá basins, a booked cloud-forest reserve and a páramo visitor center. The 72/100 result uses the same seven factors and weights applied across StargazingFinder country pages, with each country factor taken from the median of all eight location scores. It is an editorial planning index rather than an official sky class, live weather forecast, legal-access guarantee or promise of clear conditions.

Highest-Rated LocationTatacoa Desert Observatory · 87/100
Preferred Observing WindowJanuary–February
Locations Assessed8
Factor Coverage7/7
Method Version2.2
Comparability QualityC
Score ScopeSelected Location Portfolio

Artificial-Light Escape

30%70/100

Clear-Sky Reliability

20%70/100

Atmospheric Transparency Potential

15%63/100

Astronomical Darkness Duration

10%100/100

Elevation and Horizon Quality

10%85/100

Night Access and Legal Clarity

10%78/100

Dark-Sky Protection and Astronomy Support

5%25/100

Weighted Total: 70×0.30 + 70×0.20 + 62.5×0.15 + 100×0.10 + 85×0.10 + 77.5×0.10 + 25×0.05 = 71.875 → 72/100

Comparability Quality C reflects the use of categorical light, cloud and atmospheric proxies at several markers, mixed source periods and uneven nighttime-access documentation. The score remains comparable at the disclosed rubric level, but it should not be read as point-instrument precision.

Read the Stargazing Suitability Score methodology

Eight Night-Sky Planning Locations in Colombia

Scores are sorted from highest to lowest using the same seven-factor formula as the country index.

8 locations shown

Tatacoa Desert Observatory

Villavieja, Huila · approx. 420 m · semi-arid inter-Andean basin

87/100
Highest-Rated Location
DesertTelescopePhotographyStarlight
  • Tatacoa appears on Fundación Starlight’s current Tourist Destination register, with certification dating to September 2019.
  • The Huila government supports an astronomical observatory used for science outreach and visitor observation.
  • Low relief and sparse vegetation open broad sky sectors, while the dry basin is more reliable than Colombia’s cloudier high mountains in January–February.
  • Published all-sky photometry confirms that artificial lighting still affects the Tatacoa astronomical environment, so certification is not treated as a perfect-darkness claim.
Light Escape 85Clear Sky 85Access 85

Main trade-off: Strong sky access does not make every desert track a legal nighttime stopping point. Use an observatory, lodging property or verified public access area rather than assuming a map pin is a pull-off.

Villa de Leyva Rural Starlight Zone

Boyacá · town altitude 2,149 m · Alto Valle de Saquencipá

80/100
MountainTelescopeEasy AccessStarlight

The strongest reason to use Villa de Leyva is not raw altitude. It is the combination of municipal access, established astronomy culture and current Starlight recognition.

  • Fundación Starlight lists Villa de Leyva as a Tourist Destination certified in March 2024 and describes the municipality as a Starlight Town.
  • The municipal government places the town at 2,149 m and notes that the first months of the year are its driest.
  • Rural veredas west and north of the historic center reduce local lighting compared with the central plaza, though mountain ridges limit some horizon sectors.
  • The astronomy tradition includes public outreach and the long-running Villa de Leyva Astronomy Festival.
Light Escape 85Clear Sky 70Access 85

Main trade-off: The Starlight label covers a destination, not every street or field. Choose a booked rural property or organized observation site instead of assuming unrestricted access across private farmland.

Punta Gallinas

Uribia, La Guajira · near sea level · northern desert coast

79/100
DesertCoastRemotePhotography
  • The northern tip of La Guajira removes observers from Colombia’s largest urban light concentrations and offers unusually broad land-and-sea horizons.
  • January–February sits inside the generally dry part of the Alta Guajira annual cycle, supporting the high clear-sky category used here.
  • Caribbean moisture, salt aerosol, dust and strong wind can reduce transparency even on cloud-free nights.
  • Colombia Travel describes Taroa and Punta Gallinas as a remote northern destination reached through multi-stage travel rather than a simple paved-road stop.
Light Escape 85Clear Sky 85Access 50

Main trade-off: Sky potential is stronger than access certainty. Arrange transport and an overnight base with a local operator or host and avoid treating isolated tracks as self-service observing sites.

Cabo de la Vela

Uribia, La Guajira · near sea level · inhabited desert-coast base

75/100
DesertCoastRemotePhotography

Cabo de la Vela gives up some darkness and atmospheric dryness compared with the remoter Punta Gallinas, but it offers a more practical overnight base in the same desert-coast system.

  • Open Caribbean horizons are excellent for low-altitude targets over the sea and wide-field photography.
  • The settlement and visitor activity justify a lower light-escape category than Punta Gallinas, even though the wider Guajira setting remains sparse.
  • Wind and maritime haze are the main atmospheric penalties.
  • Road and local transport arrangements still matter; an exact legal observing pull-off is not implied by the marker.
Light Escape 70Clear Sky 85Access 70

Güicán Rural Highlands

Güicán de la Sierra, Boyacá · town near 3,000 m · Eastern Cordillera

73/100
MountainRemotePhotography
  • The western side of the Sierra Nevada de Güicán places rural observers at high elevation with less atmospheric column than Colombia’s lowland sites.
  • Published Colombian Andes studies identify north-eastern Boyacá as one of the country’s better dry high-altitude regions, though their grid sites do not exactly match this marker.
  • The nearby El Cocuy protected area is not used as the night marker: official park rules require visitors to leave authorized trails by 5:00 p.m.
  • The planning center therefore represents rural Güicán lodging or permission-based land outside the park boundary.
Light Escape 70Clear Sky 70Access 50

Main trade-off: High elevation is useful, but legal nighttime location choice is the weak link. Confirm a host property or other authorized rural site and do not plan to remain inside El Cocuy’s visitor trails after operating hours.

Mirador del Lago de Tota Camping

Cuítiva, Boyacá · Lago de Tota basin · approx. 3,015 m

69/100
MountainEasy AccessPhotography

The lake basin is a different high-Andes proposition from Güicán: easier overnight logistics and broad water horizons, but more moisture and local settlement influence.

  • SITUR Boyacá lists Cámping el Mirador del Lago de Tota as a registered tourism provider in the Cuítiva area and publishes its map coordinates.
  • Lago de Tota lies at about 3,015 m, giving strong elevation without requiring access to a high protected-area trail.
  • The lake creates a broad foreground and several open horizon sectors useful for wide-field imaging.
  • Moisture, fog and local lights around the basin keep clear-sky and transparency scores in the mixed category.
Light Escape 70Clear Sky 55Access 85

Main trade-off: A booked camping property solves much of the legal overnight problem, but lake humidity and clouds can erase the elevation advantage.

Reserva ProAves El Dorado

Sierra Nevada de Santa Marta, Magdalena · San Lorenzo ridge · montane reserve

67/100
MountainRemotePhotography
  • ProAves places the reserve on Cerro Kennedy in the Sierra Nevada de Santa Marta and offers overnight accommodation, giving the marker a clear booked-stay access pattern.
  • The reserve spans a large elevation range up to about 2,600 m and has views toward Sierra Nevada peaks and the Caribbean from parts of the property.
  • Its dry season is documented from December to April, but the habitat remains montane cloud forest and can still produce fog, humidity and rapidly changing cloud.
  • Entry after 7:00 p.m. is not allowed under the published reserve rules, so observers should arrive and check in before the evening cutoff.
Light Escape 70Clear Sky 55Access 85

Main trade-off: The reserve has legal overnight lodging but is not an astronomy site. Any telescope setup should stay within host rules, visitor areas and wildlife-sensitive lighting practices.

Chingaza Monterredondo

Chingaza National Natural Park, Cundinamarca · approx. 3,170 m · páramo and high-Andean forest

62/100
MountainPáramoRemote

Monterredondo is included because it separates the idea of dark mountain terrain from actual usable night-sky conditions: the site is high and rural, yet cloud and protected-area logistics are decisive.

  • Parques Nacionales describes Chingaza as a cold, humid and frequently cloudy high-mountain environment.
  • The same official visitor information lists lodging and camping around Monterredondo, subject to park booking and access rules.
  • SiB Colombia records place the Monterredondo sector near 3,170 m, giving a real elevation advantage when the cloud deck opens.
  • January–February reduces precipitation relative to much of the year but does not turn the páramo into a dry-desert climate.
Light Escape 70Clear Sky 35Access 70

Main trade-off: Cloud reliability is the limiting factor. Night activity must remain within the park’s permitted lodging and visitor regime; a remote road inside a national park is not an automatic telescope site.

Tatacoa’s Sky Is Strongest Away from the Villavieja Light Gradient

Tatacoa’s Starlight status and observatory infrastructure make it Colombia’s clearest astronomy-specific planning choice, but the basin should not be reduced to a single darkness number. Villavieja, visitor facilities and scattered lighting create local gradients across the desert. The 2025 Colombian all-sky photometry study is useful here because it shows that artificial light can remain measurable even at a recognized astronomy destination.

For imaging, the practical decision is therefore about local line of sight as much as distance from a city. A desert depression, nearby lamp or vehicle route can matter more than a few additional kilometers of remoteness. The marker is centered on the established observatory area so that access and astronomy support are weighted alongside darkness.

Neiva is the dominant regional urban source to the south, while Villavieja is the nearer settlement influence. Observers should use terrain and local lighting orientation when choosing a setup, avoid shining white light toward other observers and favor established astronomy properties where parking and nighttime presence are clear.

Colombia Travel: Tatacoa · Colombia Film Commission: observatory setting

Boyacá Offers Three Different High-Altitude Decisions

Villa de Leyva: astronomy support first

Villa de Leyva is the easiest highland choice when organized astronomy, lodging and road access matter more than absolute remoteness. The Starlight Town identity and municipal astronomy activity raise support and access scores, while nearby settlement lighting and mountain enclosure keep the horizon and darkness categories below the desert leaders.

Güicán: altitude first

Güicán trades formal astronomy infrastructure for elevation and a thinner, drier high-Andes atmosphere. The important boundary is El Cocuy National Natural Park: official visitor hours do not allow trail users to remain inside after 5:00 p.m. A night plan therefore belongs at a legitimate rural lodging or permission-based site outside the protected visitor trails.

Lago de Tota: overnight clarity first

The Mirador camping marker solves the overnight-location question more cleanly than an anonymous lakeside pin. Its 3,015 m basin elevation and broad water horizon are attractive, but the lake also raises fog and moisture risk. On a clear night it can outperform its score; over repeated visits, cloud variability keeps it below Villa de Leyva and Güicán.

Punta Gallinas and Cabo de la Vela Split the La Guajira Trade-off

DecisionPunta GallinasCabo de la Vela
Light escapeStronger remote-desert categoryMore settlement influence
HorizonBroad desert and Caribbean sectorsBroad coastal sectors with easier named viewpoints
AtmosphereDry overall, but wind, dust and salt aerosol remain possibleMore maritime haze exposure in the score
Night logisticsMulti-stage local arrangement is the main constraintMore practical overnight base, still requiring local transport planning
Best fitRemote wide-field work when logistics are already arrangedDesert-coast observing with a simpler lodging base

Both markers sit in Wayuu territory. Local transport, host arrangements and community rules are part of the observing plan rather than an afterthought; the map does not imply unrestricted access to land away from established visitor routes.

Páramo Elevation Does Not Automatically Mean Night Access

Chingaza illustrates the distinction well. Monterredondo has a real high-altitude advantage and official overnight visitor infrastructure, yet the park is humid, cloud-prone and governed by booking, gate and visitor rules. The useful observing zone is the permitted lodging or camping context, not an arbitrary shoulder of a mountain road.

The same access lesson is even clearer farther north. El Cocuy’s official rules set daytime trail entry and require visitors to be out by 5:00 p.m., so the protected high peaks are excluded from the scored night marker even though their elevation looks attractive on a map.

Boyacá’s Siscunsí–Ocetá páramo follows another daytime-oriented access pattern, with controlled entry and afternoon exit windows published by regional tourism authorities. For telescope planning, Colombia’s highest-looking point is often less useful than a lower lodging property with explicit overnight permission.

Chingaza official rules · El Cocuy official rules · Boyacá: Siscunsí–Ocetá access

Colombia Location Comparison

All eight scored locations appear in the same descending order as the map and location cards.

#LocationScoreLight EscapeClear SkyTarget UseNight AccessMain Constraint
1Tatacoa Desert Observatory878585Public telescope sessions, wide-field imaging85Local lighting and legal track choice
2Villa de Leyva Rural Starlight Zone808570Organized astronomy, rural imaging85Mountain cloud and private land
3Punta Gallinas798585Remote wide-field and coastal horizons50Transport and local access arrangement
4Cabo de la Vela757085Desert-coast observing70Wind, maritime haze and settlement light
5Güicán Rural Highlands737070High-altitude rural imaging50Permission-based night location outside park trails
6Mirador del Lago de Tota Camping697055Highland lake foregrounds, camping sessions85Fog and moisture
7Reserva ProAves El Dorado677055Booked mountain stay with selective sky views85Cloud forest and host lighting rules
8Chingaza Monterredondo627035Páramo sky when conditions open70Persistent cloud risk and protected-area rules

Tonight’s Astronomical Darkness

Calculated live from each location’s coordinates using NOAA’s public solar-position formula. Weather, cloud cover and local obstructions are not included.

Calculating…

Score Verification and Limitations

Preferred Observing Window: January–February

Locations Assessed: 8

Method Version: 2.2

Comparability Quality: C

Principal data periods: Current Starlight destination status; official standing visitor and geography records; Villa de Leyva municipal climate description; published GOES 2008–2012 mountain site-testing context; a 30-year Colombian station-climate study used as regional atmospheric context; NOAA full-window solar geometry.

Limitations: Several light, cloud and atmospheric inputs use disclosed categorical rubrics rather than point SQM, VIIRS, cloud-cover or water-vapour extractions. Mountain microclimates can differ over short distances. Protected-area, road, gate, community and lodging rules can change and should be checked with the responsible authority or host before travel.

Dark-sky and astronomy: Fundación Starlight · Huila Government
Protected-area access: Chingaza · El Cocuy
Regional tourism and terrain: SITUR Boyacá · Colombia Travel · ProAves El Dorado
(function(){ “use strict”; var boot=function(){ var pageRoot=document.getElementById(“stargaze-in-colombia”); if(!pageRoot){return;} var prefersReduced=false; if(typeof window.matchMedia===”function”){ prefersReduced=window.matchMedia(“(prefers-reduced-motion: reduce)”).matches; } var mapElement=document.getElementById(“dsky-map-colombia”); if(!mapElement){return;} var root=mapElement.closest(“.dsky-page”); if(!root){return;} if(root!==pageRoot){return;} if(typeof window.L===”undefined”){return;} if(mapElement.dataset.ready===”1″){return;} if(mapElement._leaflet_id){return;} var map=window.L.map(mapElement,{scrollWheelZoom:false,attributionControl:true}); mapElement._dskyMap=map; mapElement.dataset.ready=”1″; if(map.attributionControl){ map.attributionControl.setPrefix(false); } window.L.tileLayer(“https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png”,{ maxZoom:19, attribution:”\u00A9 OpenStreetMap contributors” }).addTo(map); var mapData=[ {name:”Tatacoa Desert Observatory”,region:”Huila”,score:87,raw:86.5000,lat:3.233856,lng:-75.169344,cardId:”tatacoa-desert-observatory-card”}, {name:”Villa de Leyva Rural Starlight Zone”,region:”Boyacá”,score:80,raw:79.7500,lat:5.633000,lng:-73.525000,cardId:”villa-de-leyva-starlight-card”}, {name:”Punta Gallinas”,region:”La Guajira”,score:79,raw:79.2500,lat:12.457780,lng:-71.665560,cardId:”punta-gallinas-card”}, {name:”Cabo de la Vela”,region:”La Guajira”,score:75,raw:74.5000,lat:12.195475,lng:-72.147218,cardId:”cabo-de-la-vela-card”}, {name:”Güicán Rural Highlands”,region:”Boyacá”,score:73,raw:72.5000,lat:6.463000,lng:-72.412000,cardId:”guican-rural-highlands-card”}, {name:”Mirador del Lago de Tota Camping”,region:”Boyacá”,score:69,raw:68.5000,lat:5.572050,lng:-72.944580,cardId:”mirador-lago-tota-card”}, {name:”Reserva ProAves El Dorado”,region:”Magdalena”,score:67,raw:67.0000,lat:11.108930,lng:-74.065830,cardId:”reserva-el-dorado-card”}, {name:”Chingaza Monterredondo”,region:”Cundinamarca”,score:62,raw:61.5000,lat:4.623580,lng:-73.726690,cardId:”chingaza-monterredondo-card”} ]; var createMarkerIcon=function(index){ var markerNode=document.createElement(“span”); markerNode.className=”dsky-marker”; markerNode.setAttribute(“aria-hidden”,”true”); markerNode.textContent=String(index+1); return window.L.divIcon({ className:””, html:markerNode, iconSize:[34,34], iconAnchor:[17,17], popupAnchor:[0,-18] }); }; var highlightCard=function(card){ if(!card){return;} card.classList.add(“is-highlighted”); card.scrollIntoView({behavior:prefersReduced?”auto”:”smooth”,block:”center”}); window.setTimeout(function(){ card.classList.remove(“is-highlighted”); },1600); }; var createPopup=function(location){ var popup=document.createElement(“div”); popup.className=”dsky-popup”; var name=document.createElement(“strong”); name.textContent=location.name; popup.appendChild(name); popup.appendChild(document.createElement(“br”)); var summary=document.createElement(“span”); summary.textContent=location.region+” · “+location.score+”/100”; popup.appendChild(summary); popup.appendChild(document.createElement(“br”)); var detail=document.createElement(“a”); detail.className=”dsky-popup-detail”; detail.href=”#”+location.cardId; detail.dataset.cardId=location.cardId; detail.textContent=”View Details Below”; detail.addEventListener(“click”,function(event){ event.preventDefault(); var card=document.getElementById(location.cardId); highlightCard(card); }); popup.appendChild(detail); return popup; }; var markers=[]; var bounds=window.L.latLngBounds([]); mapData.forEach(function(location,index){ var marker=window.L.marker([location.lat,location.lng],{ icon:createMarkerIcon(index) }).addTo(map).bindPopup(createPopup(location)); marker.on(“click”,function(){ marker.openPopup(); }); markers.push(marker); bounds.extend([location.lat,location.lng]); }); map.fitBounds(bounds,{padding:[32,32],maxZoom:6}); var legendItems=Array.prototype.slice.call(root.querySelectorAll(“.dsky-map-item”)); legendItems.forEach(function(button,index){ button.dataset.cardId=mapData[index].cardId; button.addEventListener(“click”,function(){ var marker=markers[index]; if(!marker){return;} map.panTo(marker.getLatLng()); marker.openPopup(); mapElement.focus(); }); }); var repairMap=function(){ if(mapElement._dskyMap){ mapElement._dskyMap.invalidateSize(false); } }; window.requestAnimationFrame(function(){ window.requestAnimationFrame(repairMap); }); window.setTimeout(repairMap,250); window.setTimeout(repairMap,1000); window.addEventListener(“resize”,repairMap); if(typeof window.ResizeObserver===”function”){ var mapResizeObserver=new window.ResizeObserver(function(){ repairMap(); }); mapResizeObserver.observe(mapElement); } var searchInput=root.querySelector(“.dsky-search”); var filterButtons=Array.prototype.slice.call(root.querySelectorAll(“.dsky-filter-btn”)); var cardsArray=Array.prototype.slice.call(root.querySelectorAll(“.dsky-spot-card”)); var resultCount=root.querySelector(“.dsky-result-count”); var activeFilter=”all”; var updateResults=function(){ var query=””; if(searchInput){ query=searchInput.value.toLowerCase().trim(); } var count=0; cardsArray.forEach(function(card){ var searchText=(card.dataset.name+” “+card.dataset.region+” “+card.dataset.tags).toLowerCase(); var matchesSearch=searchText.indexOf(query)!==-1; var matchesFilter=true; if(activeFilter!==”all”){ matchesFilter=card.dataset.tags.split(” “).indexOf(activeFilter)!==-1; } var show=false; if(matchesSearch){ if(matchesFilter){ show=true; } } if(show){ card.classList.remove(“dsky-hidden”); count=count+1; }else{ card.classList.add(“dsky-hidden”); } }); if(resultCount){ if(count===1){ resultCount.textContent=”1 location shown”; }else{ resultCount.textContent=String(count)+” locations shown”; } } }; if(searchInput){ searchInput.addEventListener(“input”,updateResults); } filterButtons.forEach(function(button){ button.addEventListener(“click”,function(){ activeFilter=button.dataset.filter; filterButtons.forEach(function(item){ var active=item===button; item.classList.toggle(“is-active”,active); item.setAttribute(“aria-pressed”,active?”true”:”false”); }); updateResults(); }); }); var evidenceButtons=Array.prototype.slice.call(root.querySelectorAll(“.dsky-evidence-toggle”)); evidenceButtons.forEach(function(button){ button.addEventListener(“click”,function(){ var panelId=button.getAttribute(“aria-controls”); var panel=document.getElementById(panelId); if(!panel){return;} if(panel.hidden){ panel.hidden=false; button.setAttribute(“aria-expanded”,”true”); button.textContent=”Hide Method, Location Values and Sources”; }else{ panel.hidden=true; button.setAttribute(“aria-expanded”,”false”); button.textContent=”View Method, Location Values and Sources”; } }); }); var countryCard=root.querySelector(“.dsky-score-card”); if(countryCard){ var factors=Array.prototype.slice.call(countryCard.querySelectorAll(“.dsky-score-factor”)); if(factors.length===7){ var weightTotal=0; var countryTotal=0; var formulaParts=[]; factors.forEach(function(factor){ var score=Number(factor.dataset.score); var weight=Number(factor.dataset.weight); weightTotal=weightTotal+weight; countryTotal=countryTotal+(score*weight/100); formulaParts.push(String(score)+”×”+(weight/100).toFixed(2)); }); if(weightTotal===100){ var countryRounded=Math.round(countryTotal); countryCard.dataset.overallScore=String(countryRounded); Array.prototype.slice.call(root.querySelectorAll(“[data-country-score-display]”)).forEach(function(node){ node.textContent=String(countryRounded); }); var weightedFormula=countryCard.querySelector(“.dsky-weighted-formula”); var weightedResult=countryCard.querySelector(“.dsky-weighted-result”); if(weightedFormula){ weightedFormula.textContent=formulaParts.join(” + “); } if(weightedResult){ weightedResult.textContent=countryTotal.toFixed(3)+” → “+countryRounded+”/100″; } } } } cardsArray.forEach(function(card){ var light=Number(card.dataset.lightScore); var clear=Number(card.dataset.clearScore); var atmosphere=Number(card.dataset.atmosphereScore); var darkness=Number(card.dataset.darknessScore); var horizon=Number(card.dataset.horizonScore); var access=Number(card.dataset.accessScore); var support=Number(card.dataset.supportScore); var calculatedRaw=(light*0.30)+(clear*0.20)+(atmosphere*0.15)+(darkness*0.10)+(horizon*0.10)+(access*0.10)+(support*0.05); var storedRaw=card.dataset.locationScoreRaw; var rawMatches=Number(storedRaw).toFixed(4)===Number(calculatedRaw).toFixed(4); card.dataset.scoreValid=rawMatches?”1″:”0”; var rounded=Math.round(calculatedRaw); card.dataset.locationScore=String(rounded); var visibleScore=card.querySelector(“.dsky-location-score-number”); if(visibleScore){ visibleScore.textContent=String(rounded); } }); var expectedOrder=cardsArray.slice().sort(function(a,b){ var scoreA=Number(a.dataset.locationScore); var scoreB=Number(b.dataset.locationScore); if(scoreA===scoreB){ return Number(b.dataset.locationScoreRaw)-Number(a.dataset.locationScoreRaw); } return scoreB-scoreA; }); var cardOrderValid=cardsArray.every(function(card,index){ return card===expectedOrder[index]; }); var mapOrderValid=cardsArray.every(function(card,index){ return card.dataset.locationName===mapData[index].name; }); var legendOrderValid=legendItems.every(function(button,index){ return button.dataset.cardId===mapData[index].cardId; }); root.dataset.locationOrderValid=cardOrderValid?”1″:”0″; root.dataset.mapOrderValid=mapOrderValid?”1″:”0″; root.dataset.legendOrderValid=legendOrderValid?”1″:”0″; var visibleScores=cardsArray.map(function(card){ return Number(card.dataset.locationScore); }).sort(function(a,b){ return b-a; }); var topScore=visibleScores[0]; var leaders=cardsArray.filter(function(card){ return Number(card.dataset.locationScore)===topScore; }); var leaderNames=leaders.map(function(card){ return card.dataset.locationName; }); root.dataset.bestLocation=leaderNames.join(” | “); root.dataset.bestLocationScore=String(topScore); root.dataset.bestLocationCount=String(leaders.length); var bestLabel=leaders.length===1?”Highest-Rated Location”:”Joint Highest-Rated Locations”; var bestName=leaderNames.join(“, “); Array.prototype.slice.call(root.querySelectorAll(“[data-best-location-label]”)).forEach(function(node){ node.textContent=bestLabel; }); Array.prototype.slice.call(root.querySelectorAll(“[data-best-location-name]”)).forEach(function(node){ node.textContent=bestName; }); Array.prototype.slice.call(root.querySelectorAll(“[data-best-location-score]”)).forEach(function(node){ node.textContent=String(topScore); }); cardsArray.forEach(function(card){ card.classList.remove(“is-top-location”); var existingBadge=card.querySelector(“.dsky-top-badge”); if(existingBadge){ existingBadge.parentNode.removeChild(existingBadge); } }); leaders.forEach(function(card){ card.classList.add(“is-top-location”); var badge=document.createElement(“span”); badge.className=”dsky-top-badge”; badge.textContent=leaders.length===1?”Highest-Rated Location”:”Joint Highest-Rated Location”; var top=card.querySelector(“.dsky-spot-top”); if(top){ top.appendChild(badge); } }); }; if(document.readyState===”loading”){ document.addEventListener(“DOMContentLoaded”,boot,{once:true}); }else{ boot(); } })();
📌

Complete guide: Stargazing Countries

Scroll to Top