Last active
November 17, 2017 12:32
-
-
Save Masoumeh/ccf4a94268adf5e8942e36b7bd974b66 to your computer and use it in GitHub Desktop.
Cornu Hierarchichal Geographical Data
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"description": "Cornu Regions", | |
"children": [ | |
{ | |
"description": "خراسان", | |
"children": [ | |
{ | |
"description": "جوين، جوين، كويان", | |
"size": 1, | |
"name": "جوين" | |
}, | |
{ | |
"description": "بيهق، بيهق", | |
"size": 1, | |
"name": "بيهق" | |
}, | |
{ | |
"description": "بشت، بشت", | |
"size": 1, | |
"name": "بشت" | |
}, | |
{ | |
"description": "نيسابور، نيسابور", | |
"size": 1, | |
"name": "نيسابور" | |
}, | |
{ | |
"description": "بشتفروش، بشتفروش، بستنفروش", | |
"size": 1, | |
"name": "بشتفروش" | |
}, | |
{ | |
"description": "قوهستان، قوهستان", | |
"size": 1, | |
"name": "قوهستان" | |
}, | |
{ | |
"description": "طوس، طوس، طابران", | |
"size": 1, | |
"name": "طوس" | |
}, | |
{ | |
"description": "خواف، خواف", | |
"size": 1, | |
"name": "خواف" | |
}, | |
{ | |
"description": "باخرز، باخرز", | |
"size": 1, | |
"name": "باخرز" | |
}, | |
{ | |
"description": "جام، جام", | |
"size": 1, | |
"name": "جام" | |
}, | |
{ | |
"description": "بوسنج، بوسنج، فشنج، بوشنك", | |
"size": 1, | |
"name": "بوسنج" | |
}, | |
{ | |
"description": "باذغيس، باذغيس، باذغيس", | |
"size": 1, | |
"name": "باذغيس" | |
}, | |
{ | |
"description": "مرو، مرو، مرو الشاهجان", | |
"size": 1, | |
"name": "مرو" | |
}, | |
{ | |
"description": "الأسفزار، الأسفزار", | |
"size": 1, | |
"name": "الأسفزار" | |
}, | |
{ | |
"description": "هراة، هراة", | |
"size": 1, | |
"name": "هراة" | |
}, | |
{ | |
"description": "كنج رستاق، كنج رستاق", | |
"size": 1, | |
"name": "كنج رستاق" | |
}, | |
{ | |
"description": "مرو الروذ، مرو الروذ", | |
"size": 1, | |
"name": "مرو الروذ" | |
}, | |
{ | |
"description": "غرج الشار، غرج الشار، جرجستان", | |
"size": 1, | |
"name": "غرج الشار" | |
}, | |
{ | |
"description": "جوزجان، جوزجان", | |
"size": 1, | |
"name": "جوزجان" | |
}, | |
{ | |
"description": "الجرزوان، الجرزوان", | |
"size": 1, | |
"name": "الجرزوان" | |
}, | |
{ | |
"description": "بلخ، بلخ", | |
"size": 1, | |
"name": "بلخ" | |
}, | |
{ | |
"description": "الباميان، الباميان", | |
"size": 1, | |
"name": "الباميان" | |
}, | |
{ | |
"description": "طخارستان، طخارستان", | |
"size": 1, | |
"name": "طخارستان" | |
}, | |
{ | |
"description": "بغلان، بغلان", | |
"size": 1, | |
"name": "بغلان" | |
}, | |
{ | |
"description": "بذخشان، بذخشان", | |
"size": 1, | |
"name": "بذخشان" | |
}, | |
{ | |
"description": "وخان، وخان", | |
"size": 1, | |
"name": "وخان" | |
} | |
], | |
"name": "خراسان" | |
}, | |
{ | |
"description": "ماوراءالنهر", | |
"children": [ | |
{ | |
"description": "خوارزم، خوارزم", | |
"size": 1, | |
"name": "خوارزم" | |
}, | |
{ | |
"description": "بخارة، بخارة", | |
"size": 1, | |
"name": "بخارة" | |
}, | |
{ | |
"description": "نسف، نسف", | |
"size": 1, | |
"name": "نسف" | |
}, | |
{ | |
"description": "الصغد، الصغد", | |
"size": 1, | |
"name": "الصغد" | |
}, | |
{ | |
"description": "سنجرفغن، سنجرفغن", | |
"size": 1, | |
"name": "سنجرفغن" | |
}, | |
{ | |
"description": "أوفر، أوفر", | |
"size": 1, | |
"name": "أوفر" | |
}, | |
{ | |
"description": "مايمرغ، مايمرغ، مايمرغ", | |
"size": 1, | |
"name": "مايمرغ" | |
}, | |
{ | |
"description": "كش، كش، كش", | |
"size": 1, | |
"name": "كش" | |
}, | |
{ | |
"description": "الشاوذار، الشاوذار", | |
"size": 1, | |
"name": "الشاوذار" | |
}, | |
{ | |
"description": "الصغانيان، الصغانيان", | |
"size": 1, | |
"name": "الصغانيان" | |
}, | |
{ | |
"description": "قباذيان، قباذيان، قواذيان", | |
"size": 1, | |
"name": "قباذيان" | |
}, | |
{ | |
"description": "فاراب، فاراب، باراب", | |
"size": 1, | |
"name": "فاراب" | |
}, | |
{ | |
"description": "نهر وخشاب، نهر وخشاب", | |
"size": 1, | |
"name": "نهر وخشاب" | |
}, | |
{ | |
"description": "أشروسنة، أشروسنة", | |
"size": 1, | |
"name": "أشروسنة" | |
}, | |
{ | |
"description": "وخش، وخش", | |
"size": 1, | |
"name": "وخش" | |
}, | |
{ | |
"description": "الشاش، الشاش، بلاد الشاش", | |
"size": 1, | |
"name": "الشاش" | |
}, | |
{ | |
"description": "مينك، مينك", | |
"size": 1, | |
"name": "مينك" | |
}, | |
{ | |
"description": "مسحا، مسحا", | |
"size": 1, | |
"name": "مسحا" | |
}, | |
{ | |
"description": "الختل، الختل", | |
"size": 1, | |
"name": "الختل" | |
}, | |
{ | |
"description": "إسبيجاب، إسبيجاب", | |
"size": 1, | |
"name": "إسبيجاب" | |
}, | |
{ | |
"description": "إيلاق، إيلاق", | |
"size": 1, | |
"name": "إيلاق" | |
}, | |
{ | |
"description": "الرشت، الرشت", | |
"size": 1, | |
"name": "الرشت" | |
}, | |
{ | |
"description": "نساء، نساء، نسيا", | |
"size": 1, | |
"name": "نساء" | |
}, | |
{ | |
"description": "كروان، كروان", | |
"size": 1, | |
"name": "كروان" | |
}, | |
{ | |
"description": "جدغل، جدغل", | |
"size": 1, | |
"name": "جدغل" | |
}, | |
{ | |
"description": "فرغانة، فرغانة", | |
"size": 1, | |
"name": "فرغانة" | |
}, | |
{ | |
"description": "نقاد، نقاد، نقاد", | |
"size": 1, | |
"name": "نقاد" | |
}, | |
{ | |
"description": "فامر، فامر", | |
"size": 1, | |
"name": "فامر" | |
}, | |
{ | |
"description": "الخرلخية، الخرلخية", | |
"size": 1, | |
"name": "الخرلخية" | |
} | |
], | |
"name": "ماوراءالنهر" | |
}, | |
{ | |
"description": "اندلس", | |
"children": [ | |
{ | |
"description": "وشقة، وشقة", | |
"size": 1, | |
"name": "وشقة" | |
}, | |
{ | |
"description": "بلنسية، بلنسية", | |
"size": 1, | |
"name": "بلنسية" | |
}, | |
{ | |
"description": "سرقوسة، سرقوسة، سرقوسطة", | |
"size": 1, | |
"name": "سرقوسة" | |
}, | |
{ | |
"description": "تدمير، تدمير", | |
"size": 1, | |
"name": "تدمير" | |
}, | |
{ | |
"description": "تطيلة، تطيلة", | |
"size": 1, | |
"name": "تطيلة" | |
}, | |
{ | |
"description": "بجانة، بجانة", | |
"size": 1, | |
"name": "بجانة" | |
}, | |
{ | |
"description": "وادي الحجارة، وادي الحجارة", | |
"size": 1, | |
"name": "وادي الحجارة" | |
}, | |
{ | |
"description": "لبيرة، لبيرة، إلبيرة", | |
"size": 1, | |
"name": "لبيرة" | |
}, | |
{ | |
"description": "طليطلة، طليطلة", | |
"size": 1, | |
"name": "طليطلة" | |
}, | |
{ | |
"description": "رية، رية، ريه", | |
"size": 1, | |
"name": "رية" | |
}, | |
{ | |
"description": "مالقة، مالقة", | |
"size": 1, | |
"name": "مالقة" | |
}, | |
{ | |
"description": "فحص البلوط، فحص البلوط", | |
"size": 1, | |
"name": "فحص البلوط" | |
}, | |
{ | |
"description": "جزيرة الخضراء، جزيرة الخضراء", | |
"size": 1, | |
"name": "جزيرة الخضراء" | |
}, | |
{ | |
"description": "فريش، فريش، قرسيس", | |
"size": 1, | |
"name": "فريش" | |
}, | |
{ | |
"description": "شذونة، شذونة، شدونة", | |
"size": 1, | |
"name": "شذونة" | |
}, | |
{ | |
"description": "إشبيلية، إشبيلية", | |
"size": 1, | |
"name": "إشبيلية" | |
}, | |
{ | |
"description": "قادس، قادس", | |
"size": 1, | |
"name": "قادس" | |
}, | |
{ | |
"description": "بطليوس، بطليوس، بطليوث", | |
"size": 1, | |
"name": "بطليوس" | |
}, | |
{ | |
"description": "باجة، باجة", | |
"size": 1, | |
"name": "باجة" | |
}, | |
{ | |
"description": "خشنبة، خشنبة، أخشنبة", | |
"size": 1, | |
"name": "خشنبة" | |
}, | |
{ | |
"description": "يابسة، يابسة", | |
"size": 1, | |
"name": "يابسة" | |
} | |
], | |
"name": "اندلس" | |
}, | |
{ | |
"description": "الیمن", | |
"children": [ | |
{ | |
"description": "ضنكان، ضنكان", | |
"size": 1, | |
"name": "ضنكان" | |
}, | |
{ | |
"description": "عطار، عطار", | |
"size": 1, | |
"name": "عطار" | |
}, | |
{ | |
"description": "جزيرة كمران، جزيرة كمران", | |
"size": 1, | |
"name": "جزيرة كمران" | |
}, | |
{ | |
"description": "جازان، جازان", | |
"size": 1, | |
"name": "جازان" | |
}, | |
{ | |
"description": "الحردة، الحردة", | |
"size": 1, | |
"name": "الحردة" | |
}, | |
{ | |
"description": "حكم، حكم", | |
"size": 1, | |
"name": "حكم" | |
}, | |
{ | |
"description": "حيران، حيران", | |
"size": 1, | |
"name": "حيران" | |
}, | |
{ | |
"description": "سردد، سردد، سردد", | |
"size": 1, | |
"name": "سردد" | |
}, | |
{ | |
"description": "رماع، رماع", | |
"size": 1, | |
"name": "رماع" | |
}, | |
{ | |
"description": "ملحان، ملحان", | |
"size": 1, | |
"name": "ملحان" | |
}, | |
{ | |
"description": "المندب، المندب", | |
"size": 1, | |
"name": "المندب" | |
}, | |
{ | |
"description": "هوزان، هوزان", | |
"size": 1, | |
"name": "هوزان" | |
}, | |
{ | |
"description": "حجور، حجور", | |
"size": 1, | |
"name": "حجور" | |
}, | |
{ | |
"description": "قفاعة، قفاعة", | |
"size": 1, | |
"name": "قفاعة" | |
}, | |
{ | |
"description": "جبلان، جبلان", | |
"size": 1, | |
"name": "جبلان" | |
}, | |
{ | |
"description": "قدم، قدم، قدم", | |
"size": 1, | |
"name": "قدم" | |
}, | |
{ | |
"description": "حراز، حراز", | |
"size": 1, | |
"name": "حراز" | |
}, | |
{ | |
"description": "الأخروج، الأخروج", | |
"size": 1, | |
"name": "الأخروج" | |
}, | |
{ | |
"description": "حضور، حضور", | |
"size": 1, | |
"name": "حضور" | |
}, | |
{ | |
"description": "وادعة، وادعة", | |
"size": 1, | |
"name": "وادعة" | |
}, | |
{ | |
"description": "ركب، ركب", | |
"size": 1, | |
"name": "ركب" | |
}, | |
{ | |
"description": "عنة، عنة", | |
"size": 1, | |
"name": "عنة" | |
}, | |
{ | |
"description": "بون، بون", | |
"size": 1, | |
"name": "بون" | |
}, | |
{ | |
"description": "شرعب، شرعب", | |
"size": 1, | |
"name": "شرعب" | |
}, | |
{ | |
"description": "المصانع، المصانع", | |
"size": 1, | |
"name": "المصانع" | |
}, | |
{ | |
"description": "السحول، السحول", | |
"size": 1, | |
"name": "السحول" | |
}, | |
{ | |
"description": "واضع المعلل، واضع المعلل", | |
"size": 1, | |
"name": "واضع المعلل" | |
}, | |
{ | |
"description": "خيوان، خيوان", | |
"size": 1, | |
"name": "خيوان" | |
}, | |
{ | |
"description": "ألهان، ألهان", | |
"size": 1, | |
"name": "ألهان" | |
}, | |
{ | |
"description": "ذبحان، ذبحان", | |
"size": 1, | |
"name": "ذبحان" | |
}, | |
{ | |
"description": "بوشان، بوشان", | |
"size": 1, | |
"name": "بوشان" | |
}, | |
{ | |
"description": "همدان، همدان", | |
"size": 1, | |
"name": "همدان" | |
}, | |
{ | |
"description": "السكاسك، السكاسك", | |
"size": 1, | |
"name": "السكاسك" | |
}, | |
{ | |
"description": "الجند، الجند", | |
"size": 1, | |
"name": "الجند" | |
}, | |
{ | |
"description": "الثجة، الثجة", | |
"size": 1, | |
"name": "الثجة" | |
}, | |
{ | |
"description": "الحقل، الحقل", | |
"size": 1, | |
"name": "الحقل" | |
}, | |
{ | |
"description": "رحابة، رحابة", | |
"size": 1, | |
"name": "رحابة" | |
}, | |
{ | |
"description": "الغدر، الغدر", | |
"size": 1, | |
"name": "الغدر" | |
}, | |
{ | |
"description": "خشب، خشب", | |
"size": 1, | |
"name": "خشب" | |
}, | |
{ | |
"description": "مرمل، مرمل", | |
"size": 1, | |
"name": "مرمل" | |
}, | |
{ | |
"description": "عنس، عنس", | |
"size": 1, | |
"name": "عنس" | |
}, | |
{ | |
"description": "ميتم، ميتم", | |
"size": 1, | |
"name": "ميتم" | |
}, | |
{ | |
"description": "أرحب، أرحب", | |
"size": 1, | |
"name": "أرحب" | |
}, | |
{ | |
"description": "ذمار، ذمار", | |
"size": 1, | |
"name": "ذمار" | |
}, | |
{ | |
"description": "يحصب، يحصب", | |
"size": 1, | |
"name": "يحصب" | |
}, | |
{ | |
"description": "المعافر، المعافر", | |
"size": 1, | |
"name": "المعافر" | |
}, | |
{ | |
"description": "هجر وبدر، هجر وبدر", | |
"size": 1, | |
"name": "هجر وبدر" | |
}, | |
{ | |
"description": "رعين، رعين", | |
"size": 1, | |
"name": "رعين" | |
}, | |
{ | |
"description": "ذو جرة، ذو جرة", | |
"size": 1, | |
"name": "ذو جرة" | |
}, | |
{ | |
"description": "يام، يام", | |
"size": 1, | |
"name": "يام" | |
}, | |
{ | |
"description": "الخولان، الخولان", | |
"size": 1, | |
"name": "الخولان" | |
}, | |
{ | |
"description": "بدر، بدر", | |
"size": 1, | |
"name": "بدر" | |
}, | |
{ | |
"description": "دمث، دمث", | |
"size": 1, | |
"name": "دمث" | |
}, | |
{ | |
"description": "ثات ورداع، ثات ورداع", | |
"size": 1, | |
"name": "ثات ورداع" | |
}, | |
{ | |
"description": "جوف همدان، جوف همدان", | |
"size": 1, | |
"name": "جوف همدان" | |
}, | |
{ | |
"description": "نسفان، نسفان", | |
"size": 1, | |
"name": "نسفان" | |
}, | |
{ | |
"description": "كحلان، كحلان", | |
"size": 1, | |
"name": "كحلان" | |
}, | |
{ | |
"description": "أبياين، أبياين", | |
"size": 1, | |
"name": "أبياين" | |
}, | |
{ | |
"description": "رداع، رداع", | |
"size": 1, | |
"name": "رداع" | |
}, | |
{ | |
"description": "أخلة، أخلة", | |
"size": 1, | |
"name": "أخلة" | |
}, | |
{ | |
"description": "يافع، يافع", | |
"size": 1, | |
"name": "يافع" | |
}, | |
{ | |
"description": "سباء، سباء", | |
"size": 1, | |
"name": "سباء" | |
}, | |
{ | |
"description": "مأرب، مأرب", | |
"size": 1, | |
"name": "مأرب" | |
}, | |
{ | |
"description": "جوف مراد، جوف مراد", | |
"size": 1, | |
"name": "جوف مراد" | |
}, | |
{ | |
"description": "السرو، السرو", | |
"size": 1, | |
"name": "السرو" | |
}, | |
{ | |
"description": "دثينة، دثينة", | |
"size": 1, | |
"name": "دثينة" | |
}, | |
{ | |
"description": "كندة و سكون، كندة و سكون", | |
"size": 1, | |
"name": "كندة و سكون" | |
}, | |
{ | |
"description": "مهرة، مهرة", | |
"size": 1, | |
"name": "مهرة" | |
} | |
], | |
"name": "الیمن" | |
}, | |
{ | |
"description": "الرحاب", | |
"children": [ | |
{ | |
"description": "بغروند، بغروند", | |
"size": 1, | |
"name": "بغروند" | |
}, | |
{ | |
"description": "جرزان، جرزان", | |
"size": 1, | |
"name": "جرزان" | |
}, | |
{ | |
"description": "أرمنية، أرمنية", | |
"size": 1, | |
"name": "أرمنية" | |
}, | |
{ | |
"description": "سغدبيل، سغدبيل", | |
"size": 1, | |
"name": "سغدبيل" | |
}, | |
{ | |
"description": "بسفرجان، بسفرجان", | |
"size": 1, | |
"name": "بسفرجان" | |
}, | |
{ | |
"description": "ميمذ، ميمذ، ميمذ", | |
"size": 1, | |
"name": "ميمذ" | |
}, | |
{ | |
"description": "أران، أران", | |
"size": 1, | |
"name": "أران" | |
}, | |
{ | |
"description": "شكي، شكي", | |
"size": 1, | |
"name": "شكي" | |
}, | |
{ | |
"description": "أذربيجان، أذربيجان", | |
"size": 1, | |
"name": "أذربيجان" | |
}, | |
{ | |
"description": "باجروان، باجروان، موقان، موغكان", | |
"size": 1, | |
"name": "باجروان" | |
}, | |
{ | |
"description": "الأبخان، الأبخان، لايجان، ليزان، ليزان، ليران", | |
"size": 1, | |
"name": "الأبخان" | |
}, | |
{ | |
"description": "موغان، موغان، موغكان، موقان", | |
"size": 1, | |
"name": "موغان" | |
}, | |
{ | |
"description": "شروان، شروان، شروان", | |
"size": 1, | |
"name": "شروان" | |
} | |
], | |
"name": "الرحاب" | |
}, | |
{ | |
"description": "خوزستان", | |
"children": [ | |
{ | |
"description": "سوس، سوس", | |
"size": 1, | |
"name": "سوس" | |
}, | |
{ | |
"description": "اللور، اللور", | |
"size": 1, | |
"name": "اللور" | |
}, | |
{ | |
"description": "مناذر، مناذر", | |
"size": 1, | |
"name": "مناذر" | |
}, | |
{ | |
"description": "جنديسابور، جنديسابور", | |
"size": 1, | |
"name": "جنديسابور" | |
}, | |
{ | |
"description": "الأهواز، الأهواز، سوق الأهواز", | |
"size": 1, | |
"name": "الأهواز" | |
}, | |
{ | |
"description": "تستر، تستر، ششتر", | |
"size": 1, | |
"name": "تستر" | |
}, | |
{ | |
"description": "عسكر مكرم، عسكر مكرم", | |
"size": 1, | |
"name": "عسكر مكرم" | |
}, | |
{ | |
"description": "الدورق، الدورق، السراق", | |
"size": 1, | |
"name": "الدورق" | |
}, | |
{ | |
"description": "رام هرمز، رام هرمز، رامهرمز", | |
"size": 1, | |
"name": "رام هرمز" | |
}, | |
{ | |
"description": "حومة الزط، حومة الزط، الزط", | |
"size": 1, | |
"name": "حومة الزط" | |
}, | |
{ | |
"description": "الجايزن، الجايزن", | |
"size": 1, | |
"name": "الجايزن" | |
} | |
], | |
"name": "خوزستان" | |
}, | |
{ | |
"description": "الجبال", | |
"children": [ | |
{ | |
"description": "ماسبذان، ماسبذان", | |
"size": 1, | |
"name": "ماسبذان" | |
}, | |
{ | |
"description": "مهرجانقذق، مهرجانقذق", | |
"size": 1, | |
"name": "مهرجانقذق" | |
}, | |
{ | |
"description": "همذان، همذان", | |
"size": 1, | |
"name": "همذان" | |
}, | |
{ | |
"description": "الكرج، الكرج، كرج أبو دلف", | |
"size": 1, | |
"name": "الكرج" | |
}, | |
{ | |
"description": "فراهان، فراهان", | |
"size": 1, | |
"name": "فراهان" | |
}, | |
{ | |
"description": "طبريش، طبريش", | |
"size": 1, | |
"name": "طبريش" | |
}, | |
{ | |
"description": "قم، قم", | |
"size": 1, | |
"name": "قم" | |
}, | |
{ | |
"description": "قاشان، قاشان", | |
"size": 1, | |
"name": "قاشان" | |
}, | |
{ | |
"description": "إصبهان، إصبهان، إصفهان", | |
"size": 1, | |
"name": "إصبهان" | |
}, | |
{ | |
"description": "برخوار، برخوار", | |
"size": 1, | |
"name": "برخوار" | |
}, | |
{ | |
"description": "كروان، كروان", | |
"size": 1, | |
"name": "كروان" | |
}, | |
{ | |
"description": "دماوند، دماوند", | |
"size": 1, | |
"name": "دماوند" | |
} | |
], | |
"name": "الجبال" | |
}, | |
{ | |
"description": "الدیلم", | |
"children": [ | |
{ | |
"description": "جيل، جيل، جيلان", | |
"size": 1, | |
"name": "جيل" | |
}, | |
{ | |
"description": "ديلمان، ديلمان، الديلم", | |
"size": 1, | |
"name": "ديلمان" | |
}, | |
{ | |
"description": "طلقان، طلقان", | |
"size": 1, | |
"name": "طلقان" | |
}, | |
{ | |
"description": "الرويان، الرويان", | |
"size": 1, | |
"name": "الرويان" | |
}, | |
{ | |
"description": "طبرستان، طبرستان", | |
"size": 1, | |
"name": "طبرستان" | |
}, | |
{ | |
"description": "فادوسبان، فادوسبان، قادوستان، قادوسيان", | |
"size": 1, | |
"name": "فادوسبان" | |
}, | |
{ | |
"description": "قومس، قومس", | |
"size": 1, | |
"name": "قومس" | |
}, | |
{ | |
"description": "جرجان، جرجان", | |
"size": 1, | |
"name": "جرجان" | |
}, | |
{ | |
"description": "جرجان، جرجان", | |
"size": 1, | |
"name": "جرجان" | |
}, | |
{ | |
"description": "دهستان، دهستان", | |
"size": 1, | |
"name": "دهستان" | |
} | |
], | |
"name": "الدیلم" | |
}, | |
{ | |
"description": "Sicile", | |
"children": [], | |
"name": "Sicile" | |
}, | |
{ | |
"description": "برقة", | |
"children": [ | |
{ | |
"description": "سبخة منهوشا، سبخة منهوشا", | |
"size": 1, | |
"name": "سبخة منهوشا" | |
}, | |
{ | |
"description": "برقة، برقة", | |
"size": 1, | |
"name": "برقة" | |
} | |
], | |
"name": "برقة" | |
}, | |
{ | |
"description": "الشام", | |
"children": [ | |
{ | |
"description": "الجبال، الجبال", | |
"size": 1, | |
"name": "الجبال" | |
}, | |
{ | |
"description": "الغور، الغور", | |
"size": 1, | |
"name": "الغور" | |
}, | |
{ | |
"description": "فهل، فهل", | |
"size": 1, | |
"name": "فهل" | |
}, | |
{ | |
"description": "الشرات، الشرات", | |
"size": 1, | |
"name": "الشرات" | |
}, | |
{ | |
"description": "جبل سنير، جبل سنير", | |
"size": 1, | |
"name": "جبل سنير" | |
}, | |
{ | |
"description": "البلقاء، البلقاء", | |
"size": 1, | |
"name": "البلقاء" | |
}, | |
{ | |
"description": "جبل بهرة، جبل بهرة", | |
"size": 1, | |
"name": "جبل بهرة" | |
}, | |
{ | |
"description": "بوقا، بوقا", | |
"size": 1, | |
"name": "بوقا" | |
}, | |
{ | |
"description": "تل منس، تل منس", | |
"size": 1, | |
"name": "تل منس" | |
}, | |
{ | |
"description": "صوران، صوران", | |
"size": 1, | |
"name": "صوران" | |
} | |
], | |
"name": "الشام" | |
}, | |
{ | |
"description": "السند", | |
"children": [ | |
{ | |
"description": "مكران، مكران", | |
"size": 1, | |
"name": "مكران" | |
}, | |
{ | |
"description": "كلوان، كلوان، كلوان", | |
"size": 1, | |
"name": "كلوان" | |
}, | |
{ | |
"description": "توران، توران", | |
"size": 1, | |
"name": "توران" | |
}, | |
{ | |
"description": "أيل، أيل", | |
"size": 1, | |
"name": "أيل" | |
}, | |
{ | |
"description": "البدهة، البدهة", | |
"size": 1, | |
"name": "البدهة" | |
}, | |
{ | |
"description": "ويهند، ويهند", | |
"size": 1, | |
"name": "ويهند" | |
}, | |
{ | |
"description": "قنوج، قنوج", | |
"size": 1, | |
"name": "قنوج" | |
}, | |
{ | |
"description": "سرنديب، سرنديب", | |
"size": 1, | |
"name": "سرنديب" | |
} | |
], | |
"name": "السند" | |
}, | |
{ | |
"description": "أقور", | |
"children": [ | |
{ | |
"description": "سروج، سروج", | |
"size": 1, | |
"name": "سروج" | |
}, | |
{ | |
"description": "ديار مضر، ديار مضر", | |
"size": 1, | |
"name": "ديار مضر" | |
}, | |
{ | |
"description": "ديار بكر، ديار بكر", | |
"size": 1, | |
"name": "ديار بكر" | |
}, | |
{ | |
"description": "ديار ربيعة، ديار ربيعة", | |
"size": 1, | |
"name": "ديار ربيعة" | |
}, | |
{ | |
"description": "جزيرة إبن عمر، جزيرة إبن عمر", | |
"size": 1, | |
"name": "جزيرة إبن عمر" | |
} | |
], | |
"name": "أقور" | |
}, | |
{ | |
"description": "الخزر", | |
"children": [ | |
{ | |
"description": "البجاناك، البجاناك، البجاناكية", | |
"size": 1, | |
"name": "البجاناك" | |
}, | |
{ | |
"description": "الأرثا، الأرثا، الأرثانية", | |
"size": 1, | |
"name": "الأرثا" | |
}, | |
{ | |
"description": "السرير، السرير", | |
"size": 1, | |
"name": "السرير" | |
}, | |
{ | |
"description": "برطاس، برطاس", | |
"size": 1, | |
"name": "برطاس" | |
}, | |
{ | |
"description": "الخزر، الخزر", | |
"size": 1, | |
"name": "الخزر" | |
}, | |
{ | |
"description": "بلغار، بلغار", | |
"size": 1, | |
"name": "بلغار" | |
}, | |
{ | |
"description": "البجاناك، البجاناك، البجاناكية", | |
"size": 1, | |
"name": "البجاناك" | |
}, | |
{ | |
"description": "جزيرة سياه كوه، جزيرة سياه كوه", | |
"size": 1, | |
"name": "جزيرة سياه كوه" | |
}, | |
{ | |
"description": "بشجرت، بشجرت، بسجرد", | |
"size": 1, | |
"name": "بشجرت" | |
} | |
], | |
"name": "الخزر" | |
}, | |
{ | |
"description": "سيجستان", | |
"children": [ | |
{ | |
"description": "نيشك، نيشك", | |
"size": 1, | |
"name": "نيشك" | |
}, | |
{ | |
"description": "بست، بست", | |
"size": 1, | |
"name": "بست" | |
}, | |
{ | |
"description": "بشلنك، بشلنك", | |
"size": 1, | |
"name": "بشلنك" | |
}, | |
{ | |
"description": "بغنين، بغنين", | |
"size": 1, | |
"name": "بغنين" | |
}, | |
{ | |
"description": "بلد داور، بلد داور، بلا داور، زمين داور", | |
"size": 1, | |
"name": "بلد داور" | |
}, | |
{ | |
"description": "الرخاج، الرخاج، الرخوذ", | |
"size": 1, | |
"name": "الرخاج" | |
}, | |
{ | |
"description": "قندهار، قندهار", | |
"size": 1, | |
"name": "قندهار" | |
}, | |
{ | |
"description": "بالش، بالش، بالس، والش، والشتان", | |
"size": 1, | |
"name": "بالش" | |
}, | |
{ | |
"description": "غزنة، غزنة، غزنين", | |
"size": 1, | |
"name": "غزنة" | |
} | |
], | |
"name": "سيجستان" | |
}, | |
{ | |
"description": "جزيرة العرب", | |
"children": [ | |
{ | |
"description": "رحبة، رحبة، رحبة", | |
"size": 1, | |
"name": "رحبة" | |
}, | |
{ | |
"description": "الحجاز، الحجاز", | |
"size": 1, | |
"name": "الحجاز" | |
}, | |
{ | |
"description": "بطن النخل، بطن النخل", | |
"size": 1, | |
"name": "بطن النخل" | |
}, | |
{ | |
"description": "دهلك، دهلك", | |
"size": 1, | |
"name": "دهلك" | |
}, | |
{ | |
"description": "عشم، عشم", | |
"size": 1, | |
"name": "عشم" | |
}, | |
{ | |
"description": "تربة، تربة", | |
"size": 1, | |
"name": "تربة" | |
}, | |
{ | |
"description": "جرش، جرش", | |
"size": 1, | |
"name": "جرش" | |
}, | |
{ | |
"description": "تهامة، تهامة", | |
"size": 1, | |
"name": "تهامة" | |
}, | |
{ | |
"description": "بيشة، بيشة", | |
"size": 1, | |
"name": "بيشة" | |
}, | |
{ | |
"description": "كثبة، كثبة، كثنة", | |
"size": 1, | |
"name": "كثبة" | |
}, | |
{ | |
"description": "هجيرة، هجيرة", | |
"size": 1, | |
"name": "هجيرة" | |
}, | |
{ | |
"description": "السد، السد", | |
"size": 1, | |
"name": "السد" | |
}, | |
{ | |
"description": "الثنية، الثنية", | |
"size": 1, | |
"name": "الثنية" | |
}, | |
{ | |
"description": "أحور، أحور", | |
"size": 1, | |
"name": "أحور" | |
}, | |
{ | |
"description": "الفلج، الفلج", | |
"size": 1, | |
"name": "الفلج" | |
}, | |
{ | |
"description": "العرض، العرض", | |
"size": 1, | |
"name": "العرض" | |
}, | |
{ | |
"description": "اليمامة، اليمامة", | |
"size": 1, | |
"name": "اليمامة" | |
}, | |
{ | |
"description": "الصمان، الصمان", | |
"size": 1, | |
"name": "الصمان" | |
}, | |
{ | |
"description": "الخرج، الخرج", | |
"size": 1, | |
"name": "الخرج" | |
}, | |
{ | |
"description": "حضرموت، حضرموت", | |
"size": 1, | |
"name": "حضرموت" | |
}, | |
{ | |
"description": "يبرين، يبرين", | |
"size": 1, | |
"name": "يبرين" | |
}, | |
{ | |
"description": "الهجر، الهجر", | |
"size": 1, | |
"name": "الهجر" | |
}, | |
{ | |
"description": "أوال، أوال", | |
"size": 1, | |
"name": "أوال" | |
}, | |
{ | |
"description": "الأحقاف، الأحقاف", | |
"size": 1, | |
"name": "الأحقاف" | |
}, | |
{ | |
"description": "قطر، قطر", | |
"size": 1, | |
"name": "قطر" | |
}, | |
{ | |
"description": "السبخة، السبخة", | |
"size": 1, | |
"name": "السبخة" | |
}, | |
{ | |
"description": "البينونة، البينونة", | |
"size": 1, | |
"name": "البينونة" | |
}, | |
{ | |
"description": "عمان، عمان", | |
"size": 1, | |
"name": "عمان" | |
} | |
], | |
"name": "جزيرة العرب" | |
}, | |
{ | |
"description": "المغرب", | |
"children": [ | |
{ | |
"description": "سجلماسة، سجلماسة", | |
"size": 1, | |
"name": "سجلماسة" | |
}, | |
{ | |
"description": "تنجة، تنجة", | |
"size": 1, | |
"name": "تنجة" | |
}, | |
{ | |
"description": "تاهرت، تاهرت", | |
"size": 1, | |
"name": "تاهرت" | |
}, | |
{ | |
"description": "مطماطة، مطماطة", | |
"size": 1, | |
"name": "مطماطة" | |
}, | |
{ | |
"description": "قبيشة، قبيشة", | |
"size": 1, | |
"name": "قبيشة" | |
}, | |
{ | |
"description": "قسطيلية، قسطيلية", | |
"size": 1, | |
"name": "قسطيلية" | |
}, | |
{ | |
"description": "مكنة أبو منصور، مكنة أبو منصور", | |
"size": 1, | |
"name": "مكنة أبو منصور" | |
}, | |
{ | |
"description": "قمودة، قمودة", | |
"size": 1, | |
"name": "قمودة" | |
}, | |
{ | |
"description": "نفزاوة، نفزاوة", | |
"size": 1, | |
"name": "نفزاوة" | |
} | |
], | |
"name": "المغرب" | |
}, | |
{ | |
"description": "بادية العرب", | |
"children": [ | |
{ | |
"description": "بطن السر، بطن السر", | |
"size": 1, | |
"name": "بطن السر" | |
}, | |
{ | |
"description": "سلما، سلما", | |
"size": 1, | |
"name": "سلما" | |
}, | |
{ | |
"description": "الهبير، الهبير", | |
"size": 1, | |
"name": "الهبير" | |
} | |
], | |
"name": "بادية العرب" | |
}, | |
{ | |
"description": "العراق", | |
"children": [ | |
{ | |
"description": "عقرقوف، عقرقوف", | |
"size": 1, | |
"name": "عقرقوف" | |
}, | |
{ | |
"description": "البطائح، البطائح، البطيحة", | |
"size": 1, | |
"name": "البطائح" | |
}, | |
{ | |
"description": "كسكر، كسكر", | |
"size": 1, | |
"name": "كسكر" | |
} | |
], | |
"name": "العراق" | |
}, | |
{ | |
"description": "کرمان", | |
"children": [ | |
{ | |
"description": "السيرجان، السيرجان", | |
"size": 1, | |
"name": "السيرجان" | |
}, | |
{ | |
"description": "بردسير، بردسير، بردشير، كوشير", | |
"size": 1, | |
"name": "بردسير" | |
}, | |
{ | |
"description": "رذبار، رذبار، رذبال", | |
"size": 1, | |
"name": "رذبار" | |
} | |
], | |
"name": "کرمان" | |
}, | |
{ | |
"description": "فارس", | |
"children": [ | |
{ | |
"description": "جزيرة خرك، جزيرة خرك", | |
"size": 1, | |
"name": "جزيرة خرك" | |
}, | |
{ | |
"description": "سردان، سردان", | |
"size": 1, | |
"name": "سردان" | |
}, | |
{ | |
"description": "بزرنج، بزرنج", | |
"size": 1, | |
"name": "بزرنج" | |
}, | |
{ | |
"description": "نجيرم، نجيرم", | |
"size": 1, | |
"name": "نجيرم" | |
}, | |
{ | |
"description": "بلا سابور، بلا سابور", | |
"size": 1, | |
"name": "بلا سابور" | |
}, | |
{ | |
"description": "خرمق، خرمق", | |
"size": 1, | |
"name": "خرمق" | |
}, | |
{ | |
"description": "خميجان، خميجان", | |
"size": 1, | |
"name": "خميجان" | |
}, | |
{ | |
"description": "سابور، سابور، شهرستان", | |
"size": 1, | |
"name": "سابور" | |
}, | |
{ | |
"description": "كام فيروز، كام فيروز", | |
"size": 1, | |
"name": "كام فيروز" | |
}, | |
{ | |
"description": "تير مردان، تير مردان", | |
"size": 1, | |
"name": "تير مردان" | |
}, | |
{ | |
"description": "الرون، الرون", | |
"size": 1, | |
"name": "الرون" | |
}, | |
{ | |
"description": "أرجمان، أرجمان", | |
"size": 1, | |
"name": "أرجمان" | |
}, | |
{ | |
"description": "برم، برم", | |
"size": 1, | |
"name": "برم" | |
}, | |
{ | |
"description": "كمين، كمين", | |
"size": 1, | |
"name": "كمين" | |
}, | |
{ | |
"description": "نيريز، نيريز", | |
"size": 1, | |
"name": "نيريز" | |
}, | |
{ | |
"description": "يزد، يزد، كثة", | |
"size": 1, | |
"name": "يزد" | |
}, | |
{ | |
"description": "روبنج، روبنج", | |
"size": 1, | |
"name": "روبنج" | |
}, | |
{ | |
"description": "سيف عمارة، سيف عمارة", | |
"size": 1, | |
"name": "سيف عمارة" | |
}, | |
{ | |
"description": "جزيرة لفت، جزيرة لفت، جزيرة بركاوان، جزيرة بنو كاوان", | |
"size": 1, | |
"name": "جزيرة لفت" | |
}, | |
{ | |
"description": "الروذان، الروذان", | |
"size": 1, | |
"name": "الروذان" | |
} | |
], | |
"name": "فارس" | |
}, | |
{ | |
"description": "مصر", | |
"children": [ | |
{ | |
"description": "فرفارون، فرفارون", | |
"size": 1, | |
"name": "فرفارون" | |
}, | |
{ | |
"description": "الداخلة، الداخلة", | |
"size": 1, | |
"name": "الداخلة" | |
}, | |
{ | |
"description": "الواحات، الواحات", | |
"size": 1, | |
"name": "الواحات" | |
}, | |
{ | |
"description": "المليداس، المليداس، المليدس", | |
"size": 1, | |
"name": "المليداس" | |
}, | |
{ | |
"description": "الحوف الغربي، الحوف الغربي", | |
"size": 1, | |
"name": "الحوف الغربي" | |
}, | |
{ | |
"description": "مصيل، مصيل", | |
"size": 1, | |
"name": "مصيل" | |
}, | |
{ | |
"description": "الخارجة، الخارجة", | |
"size": 1, | |
"name": "الخارجة" | |
}, | |
{ | |
"description": "البدقون، البدقون", | |
"size": 1, | |
"name": "البدقون" | |
}, | |
{ | |
"description": "الشراك، الشراك", | |
"size": 1, | |
"name": "الشراك" | |
}, | |
{ | |
"description": "إخنا، إخنا", | |
"size": 1, | |
"name": "إخنا" | |
}, | |
{ | |
"description": "بهنسى، بهنسى", | |
"size": 1, | |
"name": "بهنسى" | |
}, | |
{ | |
"description": "خربتا، خربتا", | |
"size": 1, | |
"name": "خربتا" | |
}, | |
{ | |
"description": "شباس، شباس", | |
"size": 1, | |
"name": "شباس" | |
}, | |
{ | |
"description": "تيدة، تيدة", | |
"size": 1, | |
"name": "تيدة" | |
}, | |
{ | |
"description": "الفيوم، الفيوم", | |
"size": 1, | |
"name": "الفيوم" | |
}, | |
{ | |
"description": "الأفراحون، الأفراحون", | |
"size": 1, | |
"name": "الأفراحون" | |
}, | |
{ | |
"description": "طوة، طوة", | |
"size": 1, | |
"name": "طوة" | |
}, | |
{ | |
"description": "مريس، مريس", | |
"size": 1, | |
"name": "مريس" | |
}, | |
{ | |
"description": "منوف العليا، منوف العليا", | |
"size": 1, | |
"name": "منوف العليا" | |
}, | |
{ | |
"description": "بطن الريف، بطن الريف", | |
"size": 1, | |
"name": "بطن الريف" | |
}, | |
{ | |
"description": "أتريب، أتريب", | |
"size": 1, | |
"name": "أتريب" | |
}, | |
{ | |
"description": "دمسيس، دمسيس", | |
"size": 1, | |
"name": "دمسيس" | |
}, | |
{ | |
"description": "البشرود، البشرود", | |
"size": 1, | |
"name": "البشرود" | |
}, | |
{ | |
"description": "سمنود، سمنود", | |
"size": 1, | |
"name": "سمنود" | |
}, | |
{ | |
"description": "الأوسية، الأوسية", | |
"size": 1, | |
"name": "الأوسية" | |
}, | |
{ | |
"description": "نوسا، نوسا", | |
"size": 1, | |
"name": "نوسا" | |
}, | |
{ | |
"description": "نطوية، نطوية، نطو الرمان", | |
"size": 1, | |
"name": "نطوية" | |
}, | |
{ | |
"description": "بسطة، بسطة", | |
"size": 1, | |
"name": "بسطة" | |
}, | |
{ | |
"description": "طمي، طمي", | |
"size": 1, | |
"name": "طمي" | |
}, | |
{ | |
"description": "الحوف الشرقي، الحوف الشرقي", | |
"size": 1, | |
"name": "الحوف الشرقي" | |
}, | |
{ | |
"description": "بلد النوبة، بلد النوبة", | |
"size": 1, | |
"name": "بلد النوبة" | |
}, | |
{ | |
"description": "الدير، الدير، دير بو شنودة", | |
"size": 1, | |
"name": "الدير" | |
}, | |
{ | |
"description": "قربيت، قربيت", | |
"size": 1, | |
"name": "قربيت" | |
}, | |
{ | |
"description": "أطربية، أطربية", | |
"size": 1, | |
"name": "أطربية" | |
}, | |
{ | |
"description": "إبليل، إبليل", | |
"size": 1, | |
"name": "إبليل" | |
}, | |
{ | |
"description": "صان، صان", | |
"size": 1, | |
"name": "صان" | |
}, | |
{ | |
"description": "مقرة، مقرة، مقرة", | |
"size": 1, | |
"name": "مقرة" | |
}, | |
{ | |
"description": "دندرة، دندرة", | |
"size": 1, | |
"name": "دندرة" | |
}, | |
{ | |
"description": "قنا، قنا", | |
"size": 1, | |
"name": "قنا" | |
}, | |
{ | |
"description": "قفط، قفط، قفط", | |
"size": 1, | |
"name": "قفط" | |
}, | |
{ | |
"description": "أتفو، أتفو", | |
"size": 1, | |
"name": "أتفو" | |
}, | |
{ | |
"description": "بلاق، بلاق، أبلاق", | |
"size": 1, | |
"name": "بلاق" | |
}, | |
{ | |
"description": "الجفار، الجفار", | |
"size": 1, | |
"name": "الجفار" | |
}, | |
{ | |
"description": "تيه بنو إسرائل، تيه بنو إسرائل", | |
"size": 1, | |
"name": "تيه بنو إسرائل" | |
}, | |
{ | |
"description": "بلاد الحبشة، بلاد الحبشة", | |
"size": 1, | |
"name": "بلاد الحبشة" | |
}, | |
{ | |
"description": "بلاد البجة، بلاد البجة", | |
"size": 1, | |
"name": "بلاد البجة" | |
} | |
], | |
"name": "مصر" | |
} | |
], | |
"name": "Cornu" | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<meta charset="utf-8"> | |
<style> | |
circle, | |
path { | |
cursor: pointer; | |
} | |
circle { | |
fill: none; | |
pointer-events: all; | |
} | |
#tooltip { background-color: white; | |
padding: 3px 5px; | |
border: 1px solid black; | |
text-align: center;} | |
html { | |
font-family: Amiri; | |
} | |
</style> | |
<body> | |
<script src="http://d3js.org/d3.v3.min.js"></script> | |
<script> | |
var margin = {top: 350, right: 480, bottom: 350, left: 480}, | |
radius = Math.min(margin.top, margin.right, margin.bottom, margin.left) - 10; | |
function filter_min_arc_size_text(d, i) {return (d.dx*d.depth*radius/3)>14}; | |
var hue = d3.scale.category10(); | |
var luminance = d3.scale.sqrt() | |
.domain([0, 1e6]) | |
.clamp(true) | |
.range([90, 20]); | |
var svg = d3.select("body").append("svg") | |
.attr("width", margin.left + margin.right) | |
.attr("height", margin.top + margin.bottom) | |
.append("g") | |
.attr("transform", "translate(" + margin.left + "," + margin.top + ")"); | |
var partition = d3.layout.partition() | |
.sort(function(a, b) { return d3.ascending(a.name, b.name); }) | |
.size([2 * Math.PI, radius]); | |
var arc = d3.svg.arc() | |
.startAngle(function(d) { return d.x; }) | |
.endAngle(function(d) { return d.x + d.dx - .01 / (d.depth + .5); }) | |
.innerRadius(function(d) { return radius / 3 * d.depth; }) | |
.outerRadius(function(d) { return radius / 3 * (d.depth + 1) - 1; }); | |
//Tooltip description | |
var tooltip = d3.select("body") | |
.append("div") | |
.attr("id", "tooltip") | |
.style("position", "absolute") | |
.style("z-index", "10") | |
.style("opacity", 0); | |
function format_number(x) { | |
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); | |
} | |
function format_description(d) { | |
var description = d.description; | |
return '<b>' + d.name + '</b></br>'+ d.description; | |
} | |
function computeTextRotation(d) { | |
var angle=(d.x +d.dx/2)*180/Math.PI - 90 | |
return angle; | |
} | |
function mouseOverArc(d) { | |
d3.select(this).attr("stroke","black") | |
tooltip.html(format_description(d)); | |
return tooltip.transition() | |
.duration(50) | |
.style("opacity", 0.9); | |
} | |
function mouseOutArc(){ | |
d3.select(this).attr("stroke","") | |
return tooltip.style("opacity", 0); | |
} | |
function mouseMoveArc (d) { | |
return tooltip | |
.style("top", (d3.event.pageY-10)+"px") | |
.style("left", (d3.event.pageX+10)+"px"); | |
} | |
var root_ = null; | |
d3.json("cornu_subRegs_sunBurst.json", function(error, root) { | |
if (error) return console.warn(error); | |
// Compute the initial layout on the entire tree to sum sizes. | |
// Also compute the full name and fill color for each node, | |
// and stash the children so they can be restored as we descend. | |
partition | |
.value(function(d) { return d.size; }) | |
.nodes(root) | |
.forEach(function(d) { | |
d._children = d.children; | |
d.sum = d.value; | |
d.key = key(d); | |
d.fill = fill(d); | |
}); | |
// Now redefine the value function to use the previously-computed sum. | |
partition | |
.children(function(d, depth) { return depth < 2 ? d._children : null; }) | |
.value(function(d) { return d.sum; }); | |
var center = svg.append("circle") | |
.attr("r", radius / 3) | |
.on("click", zoomOut); | |
center.append("title") | |
.text("zoom out"); | |
var partitioned_data=partition.nodes(root).slice(1) | |
var path = svg.selectAll("path") | |
.data(partitioned_data) | |
.enter().append("path") | |
.attr("d", arc) | |
.style("fill", function(d) { return d.fill; }) | |
.each(function(d) { this._current = updateArc(d); }) | |
.on("click", zoomIn) | |
.on("mouseover", mouseOverArc) | |
.on("mousemove", mouseMoveArc) | |
.on("mouseout", mouseOutArc); | |
var texts = svg.selectAll("text") | |
.data(partitioned_data) | |
.enter().append("text") | |
.filter(filter_min_arc_size_text) | |
.attr("transform", function(d) { return "rotate(" + computeTextRotation(d) + ")"; }) | |
.attr("x", function(d) { return radius / 3 * d.depth; }) | |
.attr("dx", "6") // margin | |
.attr("dy", ".35em") // vertical-align | |
.text(function(d,i) {return d.name}) | |
function zoomIn(p) { | |
if (p.depth > 1) p = p.parent; | |
if (!p.children) return; | |
zoom(p, p); | |
} | |
function zoomOut(p) { | |
if (!p.parent) return; | |
zoom(p.parent, p); | |
} | |
// Zoom to the specified new root. | |
function zoom(root, p) { | |
if (document.documentElement.__transition__) return; | |
// Rescale outside angles to match the new layout. | |
var enterArc, | |
exitArc, | |
outsideAngle = d3.scale.linear().domain([0, 2 * Math.PI]); | |
function insideArc(d) { | |
return p.key > d.key | |
? {depth: d.depth - 1, x: 0, dx: 0} : p.key < d.key | |
? {depth: d.depth - 1, x: 2 * Math.PI, dx: 0} | |
: {depth: 0, x: 0, dx: 2 * Math.PI}; | |
} | |
function outsideArc(d) { | |
return {depth: d.depth + 1, x: outsideAngle(d.x), dx: outsideAngle(d.x + d.dx) - outsideAngle(d.x)}; | |
} | |
center.datum(root); | |
// When zooming in, arcs enter from the outside and exit to the inside. | |
// Entering outside arcs start from the old layout. | |
if (root === p) enterArc = outsideArc, exitArc = insideArc, outsideAngle.range([p.x, p.x + p.dx]); | |
var new_data=partition.nodes(root).slice(1) | |
path = path.data(new_data, function(d) { return d.key; }); | |
// When zooming out, arcs enter from the inside and exit to the outside. | |
// Exiting outside arcs transition to the new layout. | |
if (root !== p) enterArc = insideArc, exitArc = outsideArc, outsideAngle.range([p.x, p.x + p.dx]); | |
d3.transition().duration(d3.event.altKey ? 7500 : 750).each(function() { | |
path.exit().transition() | |
.style("fill-opacity", function(d) { return d.depth === 1 + (root === p) ? 1 : 0; }) | |
.attrTween("d", function(d) { return arcTween.call(this, exitArc(d)); }) | |
.remove(); | |
path.enter().append("path") | |
.style("fill-opacity", function(d) { return d.depth === 2 - (root === p) ? 1 : 0; }) | |
.style("fill", function(d) { return d.fill; }) | |
.on("click", zoomIn) | |
.on("mouseover", mouseOverArc) | |
.on("mousemove", mouseMoveArc) | |
.on("mouseout", mouseOutArc) | |
.each(function(d) { this._current = enterArc(d); }); | |
path.transition() | |
.style("fill-opacity", 1) | |
.attrTween("d", function(d) { return arcTween.call(this, updateArc(d)); }); | |
}); | |
texts = texts.data(new_data, function(d) { return d.key; }) | |
texts.exit() | |
.remove() | |
texts.enter() | |
.append("text") | |
texts.style("opacity", 0) | |
.attr("transform", function(d) { return "rotate(" + computeTextRotation(d) + ")"; }) | |
.attr("x", function(d) { return radius / 3 * d.depth; }) | |
.attr("dx", "6") // margin | |
.attr("dy", ".35em") // vertical-align | |
.filter(filter_min_arc_size_text) | |
.text(function(d,i) {return d.name}) | |
.transition().delay(750).style("opacity", 1) | |
} | |
}); | |
function key(d) { | |
var k = [], p = d; | |
while (p.depth) k.push(p.name), p = p.parent; | |
return k.reverse().join("."); | |
} | |
function fill(d) { | |
var p = d; | |
while (p.depth > 1) p = p.parent; | |
var c = d3.lab(hue(p.name)); | |
c.l = luminance(d.sum); | |
return c; | |
} | |
function arcTween(b) { | |
var i = d3.interpolate(this._current, b); | |
this._current = i(0); | |
return function(t) { | |
return arc(i(t)); | |
}; | |
} | |
function updateArc(d) { | |
return {depth: d.depth, x: d.x, dx: d.dx}; | |
} | |
d3.select(self.frameElement).style("height", margin.top + margin.bottom + "px"); | |
</script> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment