const rawArray = `name,type,city,yr,status Сатпаевская обогатительная фабрика №3,Горнорудное дело,Сатпаев,1985,Работает по назначению Жезказганский медеплавильный завод,Металлургическая,Жезказган,1971,Работает по назначению Многофункциональная РЛС "Дон-2НП",Прочие,Балхаш,1954,Заброшено Асфальтный завод,Прочие,Балхаш,1944,Заброшено, руины Автомобильная ремонтная база,Прочие,Приозерск,1956,Заброшено, говорили что будет капитальный ремонт Приозерский хлебзавод,Пищевая,Приозерск,1966,Заброшен, сейчас там складские предприятия Обогатительная фабрика,Горнорудное дело,Приозерск,1995,Работает по назначению НГРЛС «Дарьял-У»,Прочие,Балхаш,1982,Заброшен, разрушен Станция космической связи «Орбита»,Прочие,Балхаш,1975,Заброшено, руины Балхашский гормолзовод,Пищевая,Балхаш,1967,Работает по назначению Хлебозавод (ныне Балхаш-нан),Пищевая,Балхаш,1966,Работает по назначению Хлебзавод Каракоз,Прочие,Балхаш,1964,Заброшено, руины Балхашский горно-металлургический комбинат,Горнорудное дело,Балхаш,1938,Работает по назначению Балхашский рыбокомбинат,Пищевая,Шашубай,1940,Работает по назначению КазЗолото,Горнорудное дело,Балхаш,1954,Заброшено, руины Карагайлинский горно-обогатительный комбинат,Горнорудное дело,Караганда,1952,Работает по назначению Производство нестандартизированного оборудования и малой механизации №2,Машиностроительная,Шахтинск,1974,Работает по назначению Шахта Казахстанская,Горнорудное дело,Шахтинск,1957,Заброшено Шахта имени Ленина,Горнорудное дело,Шахтинск,1964,Действующий Балхаш-9,Прочие,Гульшат, Сарышаган, Приозерск (Балхаш),1964,Заброшенный НКМЗ (Ново-Карагандинский машиностроительный завод),Машиностроительная,Караганды,1955,Заброшенный Банно-прачечный комбинат,Прочие,Balhash,1935,Законсервированный Балхашский завод обработки цветных металлов,Металлургическая,Балхаш,1942,Действующий Балхашский монтажный филиал,Прочие,Балхаш,1933,Действующий Рыбзавод в Бурубайтале,Прочие,Бурубайтал, Мынарал (Балхаш),1930,Действующий Южно-Жезказганский рудник,Горнорудное дело,Жезказган,1965,Действующий Восточно-Жезказганский рудник,Горнорудное дело,Жезказган,1964,Действующий Джезказганский шахтопроходческий трест,Горнорудное дело,Жезказган,1966,Действующий Жезказганские обогатительные фабрики №1, 2,Горнорудное дело,Жезказган,1954,Действующий Жезказганская обогатительная фабрика №3,Горнорудное дело,Сатпаев,1985,Законсервированный Карагайлинская обогатительная фабрика,Горнорудное дело,Карагайлы (Караганда),1959,Действующий Балхашская обогатительная фабрика,Горнорудное дело,Балхаш,1938,Действующий Сарысуйская обогатительная фабрика,Горнорудное дело,Караганда,1914-1916,Заброшенный Спасский медеплавильный завод,Металлургическая,Спасск (Караганда),1863,Снесённый Жезказганский горно-металлургический комбинат,Металлургическая,Жезказган,1958,Действующий Жайремский горно-обогатительный комбинат,Горнорудное дело,Жайрем,1976,Действующий Карагандинский завод резинотехнических изделий,Прочие,Сарань,1974-1994,Действующий Шахтинский завод синтетических моющих средств,Прочие,Шахтинск,1974,Законсервированный Караганди́нский металлургический комбинат,Металлургическая,Темиртау,1944,Действующий Карагандинский завод металлоконструкций,Металлургическая,Караганда,1963,Действующий Карагандинский машзавод № 1,Машиностроительная,Караганда,1947,Действующий Машиностроительный Завод имени Пархоменко,Машиностроительная,Караганда,1943,Действующий Завод Нестандартного Оборудования и Малой Механизации (НОММ),Машиностроительная,Шахтинск,1974,Действующий Ново-Карагандинский цементный завод (ныне ПО «Карагандацемент», АО «Карцемент»),Химическая,Темиртау,1953,Действующий Карагандинский завод асбестоцементных изделий,Химическая,Темиртау,1959,Законсервированный Карагандинский пивоваренный завод (Эфес Караганда пивоваренный завод),Пищевая,Караганда,1958,Действующий Карагандинская кондитерская фабрика (АО «Конфеты Караганды»),Пищевая,Караганда,1956,Заброшенный Карагандинский маргариновый завод (раньше КМЗ, ныне АО "Eurasian Foods"),Пищевая,Караганда,1971,Действующий Карагандинский мелькомбинат,Пищевая,Караганда,1941,Действующий Карагандинский хлебо-макаронно-кондитерский комбинат (ХМКК),Пищевая,Караганда,1956,Действующий Карагандинская обувная фабрика (КОФ),Прочие,Караганда,1942,"Снесённый" Абайская швейная фабрика,Текстильная,Абай,1969,Законсервированный Деревообрабатывающий комбинат (сейчас ИП «Столярный цех»),Прочие,Абай,1950,Действующий Абайский литейно-механический завод,Машиностроительная,Абай,1958,Заброшенный Абайский домостроительный комбинат (Абайский завод ЖБИ),Прочие,Карабас,1957,Заброшенный Южно-Топарское рудоуправление (ЮТРУ),Прочие,Южный,1976,"Снесённый" Элеватор в поселке Жарык,Прочие,Жарык,1948,Заброшенный Пивной завод в поселке Жезказган,Прочие,Жезказган,0,Заброшенный Индейководческая фабрика,Прочие,Кенгир,0,Заброшенный Кумолинский Горно-Обогатительный комбинат (ГОК),Прочие,Карсакбай,1946,Заброшенный Карсакпайский медеплавильный завод,Металлургическая,Карсакпай,1928,Законсервированный Жезказганский завод керамических стеновых материалов,Прочие,Жезказган,1956,Заброшенный Кирпичный завод,Прочие,Жезказган,1967,Заброшенный Завод железобетонных конструкций,Прочие,Жезказган,1956,Действующий КазМехСервис,Машиностроительная,Жезказган,1966,Действующий Старый хлебозавод,Пищевая,Жезказган,1954,Заброшенный Трикотажная фабрика,Текстильная,Жезказган,1922,Заброшенный Мелькомбинат,Пищевая,Жезказган,????,Продается Шаханский завод железобетонных изделий,Прочие,Шахан,1966,Заброшенный Шахтинский завод железобетонных изделий,Прочие,Шахтинск,1976,Заброшенный Шахта «Долинская»,Горнорудное дело,Северо-Западный,1971,Заброшенный Саранский Хлебзавод,Пищевая,Саранск,1976,Действующий Саранская швейно-трикотажная фабрика,Текстильная,Саранск,1956,Действующий Молочная ферма,Пищевая,Караганда,1956,Заброшенный Завод железобетонных изделий и конструкций,Прочие,Топар,1965,Заброшенный Завод ремонт горно-шахтного оборудования,Машиностроительная,Караганда,1968,Действующий Карагандинский угольный энергозавод,Энергетическая,Караганда,1956,Действующий Центрказэнергоремонт,Энергетическая,Караганда,1965,Действующий Казчерметавтоматика,Машиностроительная,Караганда,1963,Действующий Карагандажилстрой,Прочие,Караганда,1946-1948,Снесённый Колбасный цех,Пищевая,Актас,1960,Действующий Завод ЖБИ-5,Прочие,Актас,1965,Действующий Сабурханская центральная обогатительная фабрика,Горнорудное дело,Актас,1966,Действующий Карагандинский авторемонтный завод,Машиностроительная,Караганда,1965,Действующий Центрально-Казахстанский Элеватор,Прочие,Караганда,2001,Действующий Завод «Горные машины»,Машиностроительная,Караганда,1961,Действующий Бывшая шахта имени 50-летия Октябрьской революции,Горнорудное дело,Караганда,1959-1999,Законсервированный Шахта им. Горбачёва,Горнорудное дело,Караганда,1936,Заброшенный Шахта «Кировская»,Горнорудное дело,Караганда,1937,Действующий Центральная обогатительная фабрика "Восточная",Горнорудное дело,Караганда,1980,Действующий Асфальтный завод,Прочие,Жумабек,1975,Заброшенный Завод ЖБИ,Прочие,Караганда,1976,Действующий Шахта им. Кузембаева,Горнорудное дело,Сарань,1959,Действующий Карагандинский завод Металлоизделий,Машиностроительная,Караганда,1955,Действующий Карагандинский завод электротехнических изделий,Машиностроительная,Караганда,1963,Действующий Карагандинский литейный завод,Металлургическая,Караганда,1967,Действующий Аглопроизводство (АГП),Пищевая,Темиртау,1963,Действующий Листопрокатный цех №1 (ЛПЦ-1),Металлургическая,Темиртау,1968,Действующий Сортопрокатный цех,Металлургическая,Темиртау,1970,Действующий Коксохимическое производство,Химическая,Темиртау,1960,Действующий Карагандинская чулочно-носочная фабрика,Текстильная,Темиртау,1964,Действующий Хлебозавод Бидай-нан,Пищевая,Темиртау,1955,Законсервированный Карагандинский завод синтетического каучука,Химическая,Темиртау,1941,Действующий Темиртауский Мукомольный завод/ Мелькомбинат,Пищевая,Темиртау,1955,Действующий Карагандинский завод асбестоцементных изделий,Прочие,поселок Актау,1959,Законсервировано Осакаровский элеватор,Пищевая,поселок Осакаровка,1971,Действующий Осакаровский пивзавод,Пищевая,поселок Осакаровка,1965,Действующий Уштобинский маслозавод,Пищевая,село Уштобе,1938,Действующий Свиноводческий комплекс Волынский,Пищевая,село Дубровка,1976,Действующий Шахта Актасская,Горнорудное дело,поселок Актас,1958,Действующий Шахта имени Кузембаева,Горнорудное дело,поселок Сарань,1959,Действующий Шахта Долинская,Горнорудное дело,село Долинка,1961,Заброшена Карагандинский литейно-машиностроительный завод,Машиностроительная,Караганда,1941,Действующий`; /** * * @param {string} key * @param {Array} array */ function counterArrayByKey(key, array) { const idx = array.findIndex(k => k === key); if (idx === -1) return 0; return counterArrayByKey(key, array.slice(idx + 1)) + 1; } function obtainTypesOfCity(city, rawArray) { return rawArray.split("\n").slice(1, -1).map(l => l.split(",")).filter(q => q[2] === city ? q : null).map(e => e[1]); } const typesKaraganda = [ "Химическая", "Химическая", "Химическая", "Химическая", "Химическая", "Текстильная", "Текстильная", "Текстильная", "Текстильная", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Прочие", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Пищевая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Металлургическая", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Машиностроительная", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", "Горнорудное дело", ] const typesByCity = [ obtainTypesOfCity("Шахтинск", rawArray), obtainTypesOfCity("Караганда", rawArray), obtainTypesOfCity("Темиртау", rawArray), obtainTypesOfCity("Жезказган", rawArray), obtainTypesOfCity("Сатпаев", rawArray), obtainTypesOfCity("Балхаш", rawArray), ]; const ctxType = document.getElementById('typeKaraganda').getContext('2d'); const myPieChart = new Chart(ctxType, { type: 'pie', data: { labels: [ "Металлургическая", "Горнорудное дело", "Машиностроительная", "Химическая", "Пищевая", "Текстильная", "Прочие​" ], datasets: [{ label: 'My First Dataset', data: [ counterArrayByKey("Металлургическая", typesKaraganda), counterArrayByKey("Горнорудное дело", typesKaraganda), counterArrayByKey("Машиностроительная", typesKaraganda), counterArrayByKey("Химическая", typesKaraganda), counterArrayByKey("Пищевая", typesKaraganda), counterArrayByKey("Текстильная", typesKaraganda), counterArrayByKey("Прочие​", typesKaraganda) ], backgroundColor: [ 'rgba(255, 99, 132, 0.8 )', 'rgba(54, 162, 235, 0.8 )', 'rgba(255, 206, 86, 0.8 )', 'rgba(75, 192, 192, 0.8 )', 'rgba(153, 102, 255, 0.8 )', 'rgba(255, 159, 64, 0.8 )', 'rgba(255, 99, 132, 0.8 )', 'rgba(201, 203, 207, 0.8 )', 'rgba(255, 0, 0, 0.8 )', 'rgba(0, 255, 0, 0.8 )' ], borderColor: [ 'rgba(255, 99, 132, 1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)', 'rgba(75, 192, 192, 1)', 'rgba(153, 102, 255, 1)', 'rgba(255, 159, 64, 1)', 'rgba(255, 99, 132, 1)', 'rgba(201, 203, 207, 1)', 'rgba(255, 0, 0, 1)', 'rgba(0, 255, 0, 1)' ], borderWidth: 1 }] }, options: { responsive: true, plugins: { legend: { position: 'top', }, tooltip: { callbacks: { label: function (tooltipItem) { return tooltipItem.label + ': ' + tooltipItem.raw; } } } } } }); const ctxYr = document.getElementById('years').getContext('2d'); const myBarLineChart = new Chart(ctxYr, { type: 'bar', data: { labels: [ "До 1940 года", "1940–1960 гг.", "1960–1980 гг.", "1980–2000 гг." ], datasets: [ { label: 'Года', data: [65, 59, 80, 81, 56, 55, 40], backgroundColor: 'rgba(75, 192, 192, 0.2)', borderColor: 'rgba(75, 192, 192, 1)', borderWidth: 1, type: 'bar' } ] }, options: { responsive: true, scales: { y: { beginAtZero: true } }, plugins: { legend: { position: 'top', }, tooltip: { callbacks: { label: function (tooltipItem) { return tooltipItem.dataset.label + ': ' + tooltipItem.raw; } } } } } }); for ([k,types] of typesByCity.entries()) { const ctxType = document.getElementById(`types_${k}`).getContext('2d'); new Chart(ctxType, { type: 'pie', data: { labels: [ "Металлургическая", "Горнорудное дело", "Машиностроительная", "Химическая", "Пищевая", "Текстильная", "Прочие​" ], datasets: [{ label: 'My First Dataset', data: [ counterArrayByKey("Металлургическая", types), counterArrayByKey("Горнорудное дело", types), counterArrayByKey("Машиностроительная", types), counterArrayByKey("Химическая", types), counterArrayByKey("Пищевая", types), counterArrayByKey("Текстильная", types), counterArrayByKey("Прочие​", types) ], backgroundColor: [ 'rgba(255, 99, 132, 0.8 )', 'rgba(54, 162, 235, 0.8 )', 'rgba(255, 206, 86, 0.8 )', 'rgba(75, 192, 192, 0.8 )', 'rgba(153, 102, 255, 0.8 )', 'rgba(255, 159, 64, 0.8 )', 'rgba(255, 99, 132, 0.8 )', 'rgba(201, 203, 207, 0.8 )', 'rgba(255, 0, 0, 0.8 )', 'rgba(0, 255, 0, 0.8 )' ], borderColor: [ 'rgba(255, 99, 132, 1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)', 'rgba(75, 192, 192, 1)', 'rgba(153, 102, 255, 1)', 'rgba(255, 159, 64, 1)', 'rgba(255, 99, 132, 1)', 'rgba(201, 203, 207, 1)', 'rgba(255, 0, 0, 1)', 'rgba(0, 255, 0, 1)' ], borderWidth: 1 }] }, options: { responsive: true, plugins: { legend: { position: 'top', }, tooltip: { callbacks: { label: function (tooltipItem) { return tooltipItem.label + ': ' + tooltipItem.raw; } } } } } }); }