Enter your birth details above to see your Navamsa chart.
Understanding the Navamsa (D9) Chart in Vedic Astrology
The Navamsa chart, also known as the D9 chart, is one of the most important divisional charts (Vargas) in Vedic astrology. While the Rashi (D1) chart shows the native's potential, personality, and general life circumstances, the Navamsa chart reveals the deeper, hidden aspects of one's life, particularly concerning marriage, spouse, relationships, marital happiness, character, and inner strengths. It is considered a powerful indicator of one's destiny and the unfolding of their karma.
Why is the Navamsa Chart Important?
Marriage and Spouse: It's the primary chart to analyze the nature of one's marriage, the characteristics of the spouse, and the potential for marital harmony or challenges. The placement of the 7th house lord, Venus, and Jupiter in the Navamsa are crucial.
Inner Nature and Character: While the D1 shows outward personality, the D9 reveals the inner core, moral strength, and true character.
Destiny and Dharma: It provides insights into how one's destiny will unfold and the path of their dharma (righteous duty).
Overall Strength of Planets: The strength of planets in the Navamsa can significantly modify or reinforce their effects in the D1 chart. A debilitated planet in D1 might find strength in its exaltation in D9, indicating resilience.
The Calculation (Simplified Explanation)
The Navamsa chart divides each zodiac sign (30 degrees) into nine equal segments, each measuring 3 degrees and 20 minutes (3°20′). This division is called a 'Navamsa pada'. The calculation of the Navamsa sign depends on the birth time, the position of the Moon at birth, and the zodiac sign of the Lagna (Ascendant).
The fundamental principle is to determine the position of each planet in its respective Navamsa. For most planets, the Navamsa sign is determined by dividing the planet's longitude by 3°20′. However, the calculation for Navamsa has specific rules based on whether the planet is in a movable (Chara), fixed (Sthira), or dual (Dwiswabhava) sign, and also considers the rising sign (Lagna).
A simplified analogy: Imagine each zodiac sign is a large pie. The Navamsa divides that pie into nine equal slices. Each planet is then placed in one of these nine slices within its original zodiac sign. The specific slice a planet falls into depends on complex astronomical calculations based on your birth time and location.
This calculator uses astronomical algorithms to determine the precise degree of each planet and the Ascendant at the time of your birth, and then calculates their corresponding Navamsa positions. It requires accurate birth date, time, and location (latitude/longitude) for precise results.
How to Use This Calculator:
Enter your birth year, month, day, hour, and minute accurately.
Select your time zone offset from UTC.
Enter the Latitude and Longitude of your birthplace. You can find these details online (e.g., using Google Maps).
Click "Calculate Navamsa Chart".
The result will show you the Navamsa sign for your Lagna (Ascendant) and the nine planets. Interpreting these placements requires a qualified Vedic astrologer, but this calculator provides the foundational data for your D9 chart analysis.
function calculateNavamsa() {
var year = parseInt(document.getElementById("birthYear").value);
var month = parseInt(document.getElementById("birthMonth").value);
var day = parseInt(document.getElementById("birthDay").value);
var hour = parseInt(document.getElementById("birthHour").value);
var minute = parseInt(document.getElementById("birthMinute").value);
var tzOffset = parseFloat(document.getElementById("timeZone").value);
var latitude = parseFloat(document.getElementById("latitude").value);
var longitude = parseFloat(document.getElementById("longitude").value);
var resultDiv = document.getElementById("navamsaResult");
resultDiv.innerHTML = "Calculating…"; // Show a loading indicator
if (isNaN(year) || isNaN(month) || isNaN(day) || isNaN(hour) || isNaN(minute) || isNaN(latitude) || isNaN(longitude)) {
resultDiv.innerHTML = "Please enter valid numerical values for all fields.";
return;
}
// Basic validation for time and date ranges
if (month 12 || day 31 || hour 23 || minute 59) {
resultDiv.innerHTML = "Please enter a valid date and time.";
return;
}
if (latitude 90 || longitude 180) {
resultDiv.innerHTML = "Please enter valid latitude (-90 to 90) and longitude (-180 to 180).";
return;
}
// — Astronomical Calculation Core (Simplified Placeholder) —
// IMPORTANT: A real Navamsa calculator requires a robust astronomical library
// or complex calculations involving Julian Day, Sidereal Time, House Cusps,
// planetary positions, etc. This is a highly simplified placeholder
// to demonstrate structure. For accurate results, integrate a proper
// ephemeris library or API.
// We'll simulate a result based on simple inputs for demonstration.
// In a real scenario, you'd use a library like 'astropy' (Python) or
// a JavaScript equivalent, or call an API.
// Example: Let's create a mock function that returns a planet's sign.
// This is NOT astrologically accurate but shows how you would *use*
// the calculated positions.
function getPlanetNavamsaSign(planetLongitudeDegrees) {
var signIndex = Math.floor(planetLongitudeDegrees / 30);
var degreeInSign = planetLongitudeDegrees % 30;
var navamsaIndex = Math.floor(degreeInSign / (3.333333333)); // 30 degrees / 9 = 3.333… degrees per Navamsa
var signs = ["Aries", "Taurus", "Gemini", "Cancer", "Leo", "Virgo", "Libra", "Scorpio", "Sagittarius", "Capricorn", "Aquarius", "Pisces"];
var navamsaSigns = ["Aries", "Cancer", "Sagittarius", "Taurus", "Leo", "Capricorn", "Gemini", "Virgo", "Aquarius", "Cancer", "Scorpio", "Pisces", "Leo", "Sagittarius", "Capricorn", "Virgo", "Aquarius", "Aries", "Libra", "Capricorn", "Aquarius", "Pisces", "Aries", "Taurus", "Gemini"]; // Example sequence for Navamsa signs based on pada
// Simplified logic: This is where the complex astrological math happens.
// For a real calculation, you'd use precise ephemeris data.
// This mock logic attempts to show the concept.
var resultSignIndex = (signIndex * 9 + navamsaIndex) % 12; // Very rough approximation
return signs[resultSignIndex];
}
// Mock planetary longitudes (replace with actual calculations)
// These are arbitrary values for demonstration.
var mockPlanetPositions = {
"Sun": 75.5, // Example: Gemini 25.5 degrees
"Moon": 190.2, // Example: Scorpio 10.2 degrees
"Mars": 250.8, // Example: Aquarius 10.8 degrees
"Mercury": 85.1, // Example: Gemini 25.1 degrees
"Jupiter": 15.9, // Example: Aries 15.9 degrees
"Venus": 35.3, // Example: Taurus 5.3 degrees
"Saturn": 210.5, // Example: Sagittarius 20.5 degrees
"Rahu": 120.0, // Example: Libra 0.0 degrees
"Ketu": 300.0, // Example: Capricorn 0.0 degrees
"Lagna": 45.0 // Example: Taurus 15 degrees
};
// To get accurate planetary longitudes, you'd typically need:
// 1. A library that calculates Julian Day from date/time/timezone.
// 2. A library that calculates Sidereal Time based on Julian Day and Longitude.
// 3. A library that provides Ayanamsa (e.g., Lahiri) for tropical to sidereal conversion.
// 4. A library that provides Mean or True planetary positions for the given date.
// 5. A calculation for House Cusps (like Placidus or Koch, though Vedic often uses equal house or Parnasharadi).
// 6. A conversion of planetary longitudes to Navamsa.
// For this example, we will just map the mock longitudes to Navamsa signs.
// A real calculation would involve fetching actual planet positions using an API or library.
var navamsaResults = {};
for (var planet in mockPlanetPositions) {
navamsaResults[planet] = getPlanetNavamsaSign(mockPlanetPositions[planet]);
}
var outputHtml = "
";
for (var planet in navamsaResults) {
outputHtml += "
" + planet + ": " + navamsaResults[planet] + "
";
}
outputHtml += "
";
// — End of Simplified Placeholder —
resultDiv.innerHTML = outputHtml;
}