From 67e192dd96a4d9cd57708efa409ae05747710a84 Mon Sep 17 00:00:00 2001 From: samcodes Date: Sun, 25 Feb 2024 19:45:43 -0600 Subject: [PATCH] Removed unnecessary files --- lab/bridgemapstyle.css => bridgemapstyle.css | 0 {lab/icons => icons}/bridge.png | Bin {lab/icons => icons}/longest-bridge.png | Bin lab/longest_bridges_map.html => index.html | 0 lab/bridge_data.json | 974 ------------------ lab/longest_bridges_chart.html | 13 - lab/longest_bridges_chart.js | 71 -- lecture_code/draw_word.html | 15 - lecture_code/draw_word.js | 20 - lecture_code/drawing.html | 27 - lecture_code/expenses.html | 32 - lecture_code/expenses_chart.js | 87 -- lecture_code/hello_chart.html | 12 - lecture_code/hello_chart.js | 23 - lecture_code/hello_map.html | 21 - lecture_code/maps.js | 48 - lecture_code/mapstyle.css | 5 - lecture_code/page_template.html | 63 -- lecture_code/underwater.jpg | Bin 68253 -> 0 bytes ...t_bridges_map.js => longest_bridges_map.js | 0 20 files changed, 1411 deletions(-) rename lab/bridgemapstyle.css => bridgemapstyle.css (100%) rename {lab/icons => icons}/bridge.png (100%) rename {lab/icons => icons}/longest-bridge.png (100%) rename lab/longest_bridges_map.html => index.html (100%) delete mode 100644 lab/bridge_data.json delete mode 100644 lab/longest_bridges_chart.html delete mode 100644 lab/longest_bridges_chart.js delete mode 100644 lecture_code/draw_word.html delete mode 100644 lecture_code/draw_word.js delete mode 100644 lecture_code/drawing.html delete mode 100644 lecture_code/expenses.html delete mode 100644 lecture_code/expenses_chart.js delete mode 100644 lecture_code/hello_chart.html delete mode 100644 lecture_code/hello_chart.js delete mode 100644 lecture_code/hello_map.html delete mode 100644 lecture_code/maps.js delete mode 100644 lecture_code/mapstyle.css delete mode 100644 lecture_code/page_template.html delete mode 100644 lecture_code/underwater.jpg rename lab/longest_bridges_map.js => longest_bridges_map.js (100%) diff --git a/lab/bridgemapstyle.css b/bridgemapstyle.css similarity index 100% rename from lab/bridgemapstyle.css rename to bridgemapstyle.css diff --git a/lab/icons/bridge.png b/icons/bridge.png similarity index 100% rename from lab/icons/bridge.png rename to icons/bridge.png diff --git a/lab/icons/longest-bridge.png b/icons/longest-bridge.png similarity index 100% rename from lab/icons/longest-bridge.png rename to icons/longest-bridge.png diff --git a/lab/longest_bridges_map.html b/index.html similarity index 100% rename from lab/longest_bridges_map.html rename to index.html diff --git a/lab/bridge_data.json b/lab/bridge_data.json deleted file mode 100644 index a72b2a8..0000000 --- a/lab/bridge_data.json +++ /dev/null @@ -1,974 +0,0 @@ -{ - "data": [ - { - "name": "Akashi Kaiky\u014d Bridge", - "span": 1991, - "span_text": "1,991m", - "city": "Kobe", - "location": [ - 34.617028, - 135.021917 - ] - }, - { - "name": "Yangsigang Yangtze River Bridge", - "span": 1700, - "span_text": "1,700m", - "city": "Wuhan", - "location": [ - 30.50667, - 114.25667 - ] - }, - { - "name": "Nansha Bridge(East span)", - "span": 1688, - "span_text": "1,688m", - "city": "Dongguan", - "location": [ - 22.88475, - 113.565667 - ] - }, - { - "name": "Xihoumen Bridge", - "span": 1650, - "span_text": "1,650m", - "city": "Zhoushan", - "location": [ - 30.061778, - 121.916 - ] - }, - { - "name": "Great Belt Bridge", - "span": 1624, - "span_text": "1,624m", - "city": "Kors\u00f8r", - "location": [ - 55.34194, - 11.035917 - ] - }, - { - "name": "Osman Gazi Bridge", - "span": 1550, - "span_text": "1,550m", - "city": "Dilovas\u0131", - "location": [ - 40.75417, - 29.51528 - ] - }, - { - "name": "Yi Sun-sin Bridge", - "span": 1545, - "span_text": "1,545m", - "city": "Gwangyang", - "location": [ - 34.905944, - 127.705028 - ] - }, - { - "name": "Runyang Bridge", - "span": 1490, - "span_text": "1,490m", - "city": "Yangzhou", - "location": [ - 32.206833, - 119.363861 - ] - }, - { - "name": "Second Dongtinghu Bridge [zh]", - "span": 1480, - "span_text": "1,480m", - "city": "Yueyang", - "location": [ - 29.42472, - 113.12222 - ] - }, - { - "name": "Nanjing Fourth Yangtze Bridge", - "span": 1418, - "span_text": "1,418m", - "city": "Nanjing", - "location": [ - 32.17775, - 118.940139 - ] - }, - { - "name": "Humber Bridge", - "span": 1410, - "span_text": "1,410m", - "city": "Hessle", - "location": [ - 53.707972, - -0.450083 - ] - }, - { - "name": "Yavuz Sultan Selim Bridge", - "span": 1408, - "span_text": "1,408m", - "city": "\u0130stanbul", - "location": [ - 41.20861, - 29.11806 - ] - }, - { - "name": "Jiangyin Bridge", - "span": 1385, - "span_text": "1,385m", - "city": "Jiangyin", - "location": [ - 31.945306, - 120.26944 - ] - }, - { - "name": "Tsing Ma Bridge", - "span": 1377, - "span_text": "1,377m", - "city": "Tsing Yi", - "location": [ - 22.351333, - 114.073778 - ] - }, - { - "name": "Hardanger Bridge", - "span": 1310, - "span_text": "1,310m", - "city": "Ulvik", - "location": [ - 60.478583, - 6.829778 - ] - }, - { - "name": "Verrazzano-Narrows Bridge", - "span": 1298, - "span_text": "1,298m", - "city": "New York City", - "location": [ - 40.60639, - -74.045333 - ] - }, - { - "name": "Golden Gate Bridge", - "span": 1280, - "span_text": "1,280m", - "city": "San Francisco", - "location": [ - 37.819306, - -122.478861 - ] - }, - { - "name": "Yangluo Bridge", - "span": 1280, - "span_text": "1,280m", - "city": "Wuhan", - "location": [ - 30.636917, - 114.554944 - ] - }, - { - "name": "H\u00f6ga Kusten Bridge", - "span": 1210, - "span_text": "1,210m", - "city": "Utansj\u00f6", - "location": [ - 62.79806, - 17.9375 - ] - }, - { - "name": "Nansha Bridge(West span)", - "span": 1200, - "span_text": "1,200m", - "city": "Dongguan", - "location": [ - 22.883278, - 113.518889 - ] - }, - { - "name": "Longjiang River Bridge", - "span": 1196, - "span_text": "1,196m", - "city": "Wuhexiang", - "location": [ - 24.838806, - 98.672194 - ] - }, - { - "name": "Aizhai Bridge", - "span": 1176, - "span_text": "1,176m", - "city": "Jishou", - "location": [ - 28.331694, - 109.598111 - ] - }, - { - "name": "Mackinac Bridge", - "span": 1158, - "span_text": "1,158m", - "city": "Mackinaw City", - "location": [ - 45.81556, - -84.727944 - ] - }, - { - "name": "Ulsan Bridge [ko]", - "span": 1150, - "span_text": "1,150m", - "city": "Ulsan", - "location": [ - 35.51139, - 129.39111 - ] - }, - { - "name": "H\u00e5logaland Bridge", - "span": 1145, - "span_text": "1,145m", - "city": "Rombaken", - "location": [ - 68.45889, - 17.48222 - ] - }, - { - "name": "Qingshui River Bridge", - "span": 1130, - "span_text": "1,130m", - "city": "Kaiyang County", - "location": [ - 27.030417, - 107.189333 - ] - }, - { - "name": "Huangpu Bridge", - "span": 1108, - "span_text": "1,108m", - "city": "Guangzhou", - "location": [ - 23.071417, - 113.476083 - ] - }, - { - "name": "Minami Bisan-Seto Bridge", - "span": 1100, - "span_text": "1,100m", - "city": "Sakaide", - "location": [ - 34.36389, - 133.825194 - ] - }, - { - "name": "Xingkang Bridge\u5174\u5eb7\u5927\u6865", - "span": 1100, - "span_text": "1,100m", - "city": "Luding County", - "location": [ - 29.965389, - 102.214889 - ] - }, - { - "name": "Wufengshan Yangtze River Bridge\n\u4e94\u5cf0\u5c71\u957f\u6c5f\u5927\u6865", - "span": 1092, - "span_text": "1,092m", - "city": "Zhenjiang", - "location": [ - 32.2267389, - 119.6765 - ] - }, - { - "name": "Fatih Sultan Mehmet Bridge", - "span": 1090, - "span_text": "1,090m", - "city": "\u0130stanbul", - "location": [ - 41.09111, - 29.06111 - ] - }, - { - "name": "Baling River Bridge", - "span": 1088, - "span_text": "1,088m", - "city": "Guanling Buyei and Miao Autonomous County", - "location": [ - 25.96111, - 105.62944 - ] - }, - { - "name": "Taizhou Bridge", - "span": 1080, - "span_text": "1,080m", - "city": "Taizhou", - "location": [ - 32.246611, - 119.876694 - ] - }, - { - "name": "Ma'anshan Bridge", - "span": 1080, - "span_text": "1,080m", - "city": "Ma'anshan", - "location": [ - 31.610111, - 118.392056 - ] - }, - { - "name": "Bosphorus Bridge", - "span": 1074, - "span_text": "1,074m", - "city": "\u0130stanbul", - "location": [ - 41.045, - 29.03389 - ] - }, - { - "name": "George Washington Bridge", - "span": 1067, - "span_text": "1,067m", - "city": "New York City", - "location": [ - 40.851722, - -73.952722 - ] - }, - { - "name": "Fuma Yangtze River Bridge\u9a78\u9a6c\u957f\u6c5f\u5927\u6865", - "span": 1050, - "span_text": "1,050m", - "city": "Wanzhou", - "location": [ - 30.834667, - 108.469278 - ] - }, - { - "name": "Qipanzhou Yangtse River Bridge\u68cb\u76d8\u6d32\u957f\u6c5f\u5927\u6865", - "span": 1038, - "span_text": "1,038m", - "city": "Huangshi", - "location": [ - 30.1525778, - 115.2672972 - ] - }, - { - "name": "Third Kurushima-Kaiky\u014d Bridge", - "span": 1030, - "span_text": "1,030m", - "city": "Imabari", - "location": [ - 34.11525, - 132.984333 - ] - }, - { - "name": "Second Kurushima-Kaiky\u014d Bridge", - "span": 1020, - "span_text": "1,020m", - "city": "Umashima Island", - "location": [ - 34.12111, - 133.000194 - ] - }, - { - "name": "25 de Abril Bridge", - "span": 1013, - "span_text": "1,013m", - "city": "Lisbon", - "location": [ - 38.689861, - -9.177167 - ] - }, - { - "name": "Forth Road Bridge", - "span": 1006, - "span_text": "1,006m", - "city": "South Queensferry", - "location": [ - 56.0015, - -3.404194 - ] - }, - { - "name": "Yidu Yangtse River Bridge [zh]\u5b9c\u90fd\u957f\u6c5f\u516c\u8def\u5927\u6865", - "span": 1000, - "span_text": "1,000m", - "city": "Yidu", - "location": [ - 30.40917, - 111.51667 - ] - }, - { - "name": "Kita Bisan-Seto Bridge", - "span": 990, - "span_text": "990m", - "city": "Sakaide", - "location": [ - 34.378444, - 133.820333 - ] - }, - { - "name": "Severn Bridge", - "span": 988, - "span_text": "988m", - "city": "Bristol", - "location": [ - 51.610056, - -2.640667 - ] - }, - { - "name": "Yichang Bridge", - "span": 960, - "span_text": "960m", - "city": "Yichang", - "location": [ - 30.569583, - 111.391528 - ] - }, - { - "name": "Shimotsui-Seto Bridge", - "span": 940, - "span_text": "940m", - "city": "Kojima", - "location": [ - 34.431222, - 133.806444 - ] - }, - { - "name": "Xiushan Bridge", - "span": 926, - "span_text": "926m", - "city": "Daishan", - "location": [ - 30.21111, - 122.185361 - ] - }, - { - "name": "Xiling Bridge", - "span": 900, - "span_text": "900m", - "city": "Sandouping", - "location": [ - 30.828472, - 111.04667 - ] - }, - { - "name": "Si Du River Bridge", - "span": 900, - "span_text": "900m", - "city": "Yesanguan", - "location": [ - 30.621139, - 110.395306 - ] - }, - { - "name": "Second Namhae Bridge\uc81c2\ub0a8\ud574\ub300\uad50", - "span": 890, - "span_text": "890m", - "city": "Namhaedo", - "location": [ - 34.942889, - 127.866278 - ] - }, - { - "name": "Humen Pearl River Bridge", - "span": 888, - "span_text": "888m", - "city": "Dongguan", - "location": [ - 22.797083, - 113.615889 - ] - }, - { - "name": "Cuntan Yangtze River Bridge [zh]\u5bf8\u6ee9\u957f\u6c5f\u5927\u6865", - "span": 880, - "span_text": "880m", - "city": "Chongqing", - "location": [ - 29.620611, - 106.606056 - ] - }, - { - "name": "\u014cnaruto Bridge", - "span": 876, - "span_text": "876m", - "city": "Naruto", - "location": [ - 34.23875, - 134.650306 - ] - }, - { - "name": "Lishui River Bridge", - "span": 856, - "span_text": "856m", - "city": "Zhangjiajie", - "location": [ - 29.09861, - 110.24667 - ] - }, - { - "name": "Second Tacoma Narrows Bridge(westbound)", - "span": 853, - "span_text": "853m", - "city": "Tacoma", - "location": [ - 47.268222, - -122.550194 - ] - }, - { - "name": "Third Tacoma Narrows Bridge(eastbound)", - "span": 853, - "span_text": "853m", - "city": "Tacoma", - "location": [ - 47.267889, - -122.550778 - ] - }, - { - "name": "Ask\u00f8y Bridge", - "span": 850, - "span_text": "850m", - "city": "Bergen", - "location": [ - 60.395444, - 5.215222 - ] - }, - { - "name": "Yingwuzhou Bridge", - "span": 850, - "span_text": "850m", - "city": "Wuhan", - "location": [ - 30.534056, - 114.276889 - ] - }, - { - "name": "Jeokgeum Bridge [ko]", - "span": 850, - "span_text": "850m", - "city": "Ucheon", - "location": [ - 34.63139, - 127.50278 - ] - }, - { - "name": "Zhixi Yangtze River Bridge [zh] \u81f3\u559c\u957f\u6c5f\u5927\u6865\uff08\u5e99\u5634\u957f\u6c5f\u5927\u6865\uff09", - "span": 838, - "span_text": "838m", - "city": "Yichang", - "location": [ - 30.715611, - 111.262556 - ] - }, - { - "name": "Nanxi Bridge", - "span": 820, - "span_text": "820m", - "city": "Nanxi District", - "location": [ - 28.783694, - 104.945694 - ] - }, - { - "name": "Taihong Yangtze River Bridge [zh]\u592a\u6d2a\u957f\u6c5f\u5927\u6865", - "span": 808, - "span_text": "808m", - "city": "Chongqing", - "location": [ - 29.6632889, - 106.89333 - ] - }, - { - "name": "Qincaobei Bridge", - "span": 788, - "span_text": "788m", - "city": "Lidu", - "location": [ - 29.714306, - 107.281306 - ] - }, - { - "name": "Innoshima Bridge", - "span": 770, - "span_text": "770m", - "city": "Innoshima", - "location": [ - 34.357139, - 133.180417 - ] - }, - { - "name": "Jinshajiang Hutiaoxia Bridge\n\u91d1\u6c99\u6c5f\u5927\u6865\uff08\u9999\u4e3d\u9ad8\u901f\uff09", - "span": 766, - "span_text": "766m", - "city": "Hutiaoxiazhen", - "location": [ - 27.17417, - 100.08389 - ] - }, - { - "name": "Akinada Bridge", - "span": 750, - "span_text": "750m", - "city": "Kure", - "location": [ - 34.206222, - 132.679389 - ] - }, - { - "name": "Semey Bridge", - "span": 750, - "span_text": "750m", - "city": "Semey", - "location": [ - 50.40972, - 80.22444 - ] - }, - { - "name": "Yuecheng Xijiang Bridge\u60a6\u57ce\u897f\u6c5f\u5927\u6865", - "span": 738, - "span_text": "738m", - "city": "Yunfu", - "location": [ - 23.09361, - 112.21056 - ] - }, - { - "name": "Jinshajiang Jindong Bridge\u91d1\u4e1c\u5927\u6865", - "span": 730, - "span_text": "730m", - "city": "Huidong County", - "location": [ - 26.50925, - 103.040194 - ] - }, - { - "name": "New Carquinez Bridge", - "span": 728, - "span_text": "728m", - "city": "Vallejo", - "location": [ - 38.061028, - -122.226528 - ] - }, - { - "name": "Hakuch\u014d Bridge", - "span": 720, - "span_text": "720m", - "city": "Muroran", - "location": [ - 42.352889, - 140.950333 - ] - }, - { - "name": "Angostura Bridge", - "span": 712, - "span_text": "712m", - "city": "Ciudad Bol\u00edvar", - "location": [ - 8.144417, - -63.598111 - ] - }, - { - "name": "Kanmon Bridge", - "span": 712, - "span_text": "712m", - "city": "Kitakyushu", - "location": [ - 33.961722, - 130.958694 - ] - }, - { - "name": "San Francisco\u2013Oakland Bay Bridge(east half of west span)", - "span": 704, - "span_text": "704m", - "city": "San Francisco", - "location": [ - 37.803389, - -122.371917 - ] - }, - { - "name": "San Francisco\u2013Oakland Bay Bridge(west half of west span)", - "span": 704, - "span_text": "704m", - "city": "San Francisco", - "location": [ - 37.793167, - -122.38306 - ] - }, - { - "name": "Bronx\u2013Whitestone Bridge", - "span": 701, - "span_text": "701m", - "city": "New York City", - "location": [ - 40.801861, - -73.829778 - ] - }, - { - "name": "Maputo\u2013Katembe bridge", - "span": 680, - "span_text": "680m", - "city": "Maputo", - "location": [ - -25.973167, - 32.557417 - ] - }, - { - "name": "Stord Bridge", - "span": 677, - "span_text": "677m", - "city": "Stord", - "location": [ - 59.74806, - 5.402944 - ] - }, - { - "name": "Pierre Laporte Bridge", - "span": 668, - "span_text": "668m", - "city": "Quebec City", - "location": [ - 46.745222, - -71.290472 - ] - }, - { - "name": "Sunxihe Bridge\u7b0b\u6eaa\u6cb3\u5927\u6865", - "span": 660, - "span_text": "660m", - "city": "Bailinzhen", - "location": [ - 28.712417, - 106.462333 - ] - }, - { - "name": "Delaware Memorial Bridge(northbound)", - "span": 656, - "span_text": "656m", - "city": "New Castle", - "location": [ - 39.688972, - -75.51806 - ] - }, - { - "name": "Delaware Memorial Bridge(southbound)", - "span": 656, - "span_text": "656m", - "city": "New Castle", - "location": [ - 39.688389, - -75.518389 - ] - }, - { - "name": "Jinshajiang Hulukou Bridge", - "span": 656, - "span_text": "656m", - "city": "Hulukouzhen", - "location": [ - 26.971222, - 102.891722 - ] - }, - { - "name": "Second Saecheonnyeon Bridge [ko]\ucc9c\uc0ac\ub300\uad50", - "span": 650, - "span_text": "650m", - "city": "Mokpo", - "location": [ - 34.860361, - 126.2055 - ] - }, - { - "name": "Haicang Bridge", - "span": 648, - "span_text": "648m", - "city": "Xiamen", - "location": [ - 24.497278, - 118.068667 - ] - }, - { - "name": "Beipan River Hukun Expressway Bridge", - "span": 636, - "span_text": "636m", - "city": "Qinglong County", - "location": [ - 25.899472, - 105.32361 - ] - }, - { - "name": "Taoyuan Jinsha River Bridge\u5927\u6c38\u9ad8\u901f\u6d9b\u6e90\u91d1\u6c99\u6c5f\u5927\u6865", - "span": 636, - "span_text": "636m", - "city": "Yongsheng County", - "location": [ - 26.18389, - 100.59083 - ] - }, - { - "name": "Puli Bridge", - "span": 628, - "span_text": "628m", - "city": "Pulixiang", - "location": [ - 26.322389, - 104.58778 - ] - }, - { - "name": "Gjemnessund Bridge", - "span": 623, - "span_text": "623m", - "city": "Gjemnes", - "location": [ - 62.97139, - 7.77972 - ] - }, - { - "name": "Yuzui Yangtze Bridge", - "span": 616, - "span_text": "616m", - "city": "Yuzuizhen", - "location": [ - 29.611306, - 106.772556 - ] - }, - { - "name": "Walt Whitman Bridge", - "span": 610, - "span_text": "610m", - "city": "Philadelphia", - "location": [ - 39.905194, - -75.129472 - ] - }, - { - "name": "Tancarville Bridge", - "span": 608, - "span_text": "608m", - "city": "Tancarville", - "location": [ - 49.472667, - 0.464667 - ] - }, - { - "name": "New Little Belt Bridge", - "span": 600, - "span_text": "600m", - "city": "Middelfart", - "location": [ - 55.518639, - 9.749139 - ] - }, - { - "name": "First Kurushima-Kaiky\u014d Bridge", - "span": 600, - "span_text": "600m", - "city": "Umashima Island", - "location": [ - 34.125806, - 133.012528 - ] - }, - { - "name": "E'gongyan Rail Transit Bridge", - "span": 600, - "span_text": "600m", - "city": "Chongqing", - "location": [ - 29.522194, - 106.528222 - ] - }, - { - "name": "E'gongyan Bridge", - "span": 600, - "span_text": "600m", - "city": "Chongqing", - "location": [ - 29.523306, - 106.52825 - ] - } - ] -} diff --git a/lab/longest_bridges_chart.html b/lab/longest_bridges_chart.html deleted file mode 100644 index 974c674..0000000 --- a/lab/longest_bridges_chart.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - -

Some of the longest bridges and their lengths

- - - - - \ No newline at end of file diff --git a/lab/longest_bridges_chart.js b/lab/longest_bridges_chart.js deleted file mode 100644 index fafe8c0..0000000 --- a/lab/longest_bridges_chart.js +++ /dev/null @@ -1,71 +0,0 @@ -let canvas = document.querySelector('#bridge-chart'); -// a button that will be used to switch between the large dataset and the small one -let changeDataButton = document.querySelector('#change-data'); -let context = canvas.getContext('2d'); -// a boolean that will be used to toggle between showing the large data set and the small one -let showLargeBridgeData = false; - -// fetching the bridge data from the json file and storing it in the local variable 'largeBridgeData' -let largeBridgeData = []; -fetch('bridge_data.json') - .then(res => res.json()) - .then(data => { - largeBridgeData = data.data; - }).catch(error => {console.error("unable to fetch the bridge data: ", error)}); - - -let bridges = [ - {name: 'Verrazano-Narrows Bridge', cityState: 'New York, NY', span: 1298.4, location: [40.6066, -74.0447]}, - {name: 'Golden Gate Bridge', cityState: 'San Francisco and Marin, CA', span: 1280.2, location: [37.8199, -122.4783]}, - {name: 'Mackinac Bridge', cityState: 'Mackinaw and St Ignace, MI', span: 1158.0, location: [45.8174, -84.7278]}, - {name: 'George Washington Bridge', cityState: 'New York, NY and New Jersey, NJ', span: 1067.0, location: [40.8517, -73.9527]}, - {name: 'Tacoma Narrows Bridge', cityState: 'Tacoma and Kitsap, WA', span: 853.44, location: [47.2690, -122.5517]} -] - -// creates a new chart object and populates it with the given dataset and then returns it -// should call chart.destroy() on the already created chart if one was already created -let loadBridgeDataSet = (dataSet) => { - // creating the new chart - let bridgesChart = new Chart(context, { - type: 'bar', - data: { - datasets: [ - { - label: 'Length in Meters', - data: [], - backgroundColor: 'green' - } - ], - labels: [] - }, - options: { - scales: { - yAxes: [{ - ticks: { - beginAtZero: true - } - }] - } - } - }); - - // iterating over the dataset and adding the data to the chart - for (let i in dataSet) { - let bridge = dataSet[i]; - bridgesChart.data.labels.push(bridge.name); - bridgesChart.data.datasets[0].data.push(bridge.span); - } - bridgesChart.update(); - return bridgesChart; -} - -// creating the initial chart with the smaller dataset -let chart = loadBridgeDataSet(bridges) - -// adding an event listener to the button to toggle the small and large datasets whenever the button is pressed -changeDataButton.addEventListener('click', function () { - chart.destroy(); - showLargeBridgeData ? chart = loadBridgeDataSet(bridges) : chart = loadBridgeDataSet(largeBridgeData) - showLargeBridgeData = !showLargeBridgeData; -}) - diff --git a/lecture_code/draw_word.html b/lecture_code/draw_word.html deleted file mode 100644 index 8a5c4d5..0000000 --- a/lecture_code/draw_word.html +++ /dev/null @@ -1,15 +0,0 @@ - - - - - Draw on a Picture - - - - -
- - - - - \ No newline at end of file diff --git a/lecture_code/draw_word.js b/lecture_code/draw_word.js deleted file mode 100644 index 3696173..0000000 --- a/lecture_code/draw_word.js +++ /dev/null @@ -1,20 +0,0 @@ -let canvas = document.querySelector('#canvas'); -let context = canvas.getContext('2d'); - -let input = document.querySelector('#image-text'); -input.disabled = true; - -let image = new Image(); -image.src = 'underwater.jpg'; - -image.addEventListener('load', function(){ - context.drawImage(image, 0, 0); - input.disabled = false; -}); - -input.addEventListener('input', function() { - let text = this.value; - context.font = '40px courier'; - context.drawImage(image, 0, 0); - context.fillText(text, 100, 30); -}) diff --git a/lecture_code/drawing.html b/lecture_code/drawing.html deleted file mode 100644 index 96095b1..0000000 --- a/lecture_code/drawing.html +++ /dev/null @@ -1,27 +0,0 @@ - - - - - Drawing Program - - - - - - - \ No newline at end of file diff --git a/lecture_code/expenses.html b/lecture_code/expenses.html deleted file mode 100644 index d32fe75..0000000 --- a/lecture_code/expenses.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - -

Build a chart of your monthly expenses

- - - -
- - -
- -
- - -
- -
- -
- - - diff --git a/lecture_code/expenses_chart.js b/lecture_code/expenses_chart.js deleted file mode 100644 index 01acf0f..0000000 --- a/lecture_code/expenses_chart.js +++ /dev/null @@ -1,87 +0,0 @@ -/* Input elements */ -let expenseNameInput = document.querySelector('#expense-name') -let expenseAmountInput = document.querySelector('#expense-amount') -let addExpenseButton = document.querySelector('#add-expense') - -/* Get chart canvas and contex */ -let chartCanvas = document.querySelector('#expenses-doughnut-chart') -let ctx = chartCanvas.getContext('2d') - - -// creating the chart object -let expenseChart = new Chart(ctx, { - type: 'doughnut', - data: { - datasets: [ - { - data: [], - backgroundColor: [] - } - ], - labels: [] - }, - options: {} // fill in things here later. -}) - -// this array contains a list of all the colors that will be used in the chart -// the first color will be used for the first expense, and so on and so on -let chartColors = [ 'tomato', 'orange', 'dodgerblue', 'mediumseagreen', 'slateblue', 'violet' ] - - -// adds the expense to the chart -function addExpenseToChart(name, amount) { - // adding the expense to the chart - expenseChart.data.labels.push(name); - expenseChart.data.datasets[0].data.push(amount); - - let colorCount = expenseChart.data.datasets[0].backgroundColor.length - let color = chartColors[colorCount % chartColors.length] - - expenseChart.data.datasets[0].backgroundColor.push(color); - - expenseChart.update(); -} - -// adding functionality to the addExpenseButton -addExpenseButton.addEventListener('click', function() { - - let errors = [] - - let expenseName = expenseNameInput.value - let expenseAmount = expenseAmountInput.value - - // Validate both fields are filled in, and the amount is a positive number - if (expenseName.length == 0) { - errors.push('Enter a type of expense') - } - - if (expenseAmount.length == 0 || expenseAmountInput < 0) { - errors.push('Enter a positive amount for the expense') - } - - // If any errors, alert and return - do not procede to add to chart - if (errors.length > 0) { - alert( errors.join('\n') ) - return - } - - // calling function to update the chart - addExpenseToChart(expenseName, expenseAmount); - - // Clear inputs, ready for next expense name and amount. - expenseNameInput.value = '' - expenseAmountInput.value = '' - -}) - - -// adding an event listener to click the add to chart button anytime the enter button is clicked -window.addEventListener('keyup', function() { - if (event.keyCode === 13) { - let inputElements = [expenseNameInput, expenseAmountInput, addExpenseButton]; - if (inputElements.includes(document.activeElement)) { - addExpenseButton.click(); - expenseNameInput.focus(); - } - } -}) \ No newline at end of file diff --git a/lecture_code/hello_chart.html b/lecture_code/hello_chart.html deleted file mode 100644 index 8cf8350..0000000 --- a/lecture_code/hello_chart.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - -

Unscientific survey of soda preferences

- - - - \ No newline at end of file diff --git a/lecture_code/hello_chart.js b/lecture_code/hello_chart.js deleted file mode 100644 index 4d92607..0000000 --- a/lecture_code/hello_chart.js +++ /dev/null @@ -1,23 +0,0 @@ -let canvas = document.querySelector('#soda-chart'); -let context = canvas.getContext('2d'); - -let chart = new Chart(context, { - type: 'bar', - data: { - labels: ['Coke', 'Pepsi','Sprite', 'Either', 'Neither'], - datasets: [{ - label: 'Number of votes', - data: [18, 14, 10, 7, 10], - backgroundColor: ['red', 'blue', 'yellowgreen', 'green', 'yellow'] - }] - }, - options: { - scales: { - yAxes: [{ - ticks: { - beginAtZero: true - } - }] - } - } -}) \ No newline at end of file diff --git a/lecture_code/hello_map.html b/lecture_code/hello_map.html deleted file mode 100644 index 050388c..0000000 --- a/lecture_code/hello_map.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - -

Where are Minnesota State Colleges?

-
- - - diff --git a/lecture_code/maps.js b/lecture_code/maps.js deleted file mode 100644 index a8e810c..0000000 --- a/lecture_code/maps.js +++ /dev/null @@ -1,48 +0,0 @@ -let metroAreaCenterCoordinates = [44.96, -93.2]; -let zoomLevel = 9; // 1 = whole world 20 = city blocks - -// map function takes an id of a div to draw the map under -let map = L.map('college-map').setView(metroAreaCenterCoordinates, zoomLevel); - -// L refers to the leaflet object -L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { - attribution: '© OpenStreetMap contributors' -}).addTo(map); - -campuses = [ - {"name": "Minneapolis College", "website": "https://minneapolis.edu", "coordinates": [44.9724, -93.2844] }, - {"name": "Saint Paul College", "website": "https://saintpaul.edu", "coordinates": [44.94839, -93.1099] }, - {"name": "Normandale Community College", "website": "https://normandale.edu", "coordinates": [44.8297, -93.3312] }, - {"name": "North Hennepin Community College", "website": "https://nhcc.edu", "coordinates": [45.1054232,-93.3767558] }, - {"name": "Century College", "website": "https://www.century.edu/", "coordinates": [45.0438494,-92.9862026] } -] - -// looping over the campuses array and adding popups for each of the campuses -for (let i in campuses) { - let campus = campuses[i]; - L.marker(campus.coordinates).bindPopup(`${campus.name}
Website`).addTo(map); -} - -// let mctcCoordinates = [44.9724, -93.2844]; -// let mctcMarker = L.marker(mctcCoordinates) -// .bindPopup('Minneapolis College
Website') -// .addTo(map); -// -// let stPaulCoordinates = [44.9483, -93.1099]; -// let stpMarker = L.marker(stPaulCoordinates) -// .bindPopup('Saint Paul College
Website') -// .addTo(map); -// -// let nmdCoordinates = [44.8297, -93.3312]; -// let nmdMarker = L.marker(nmdCoordinates) -// .bindPopup('Normandale Community College
Website') -// .addTo(map); - -// here we are adding the circle for the area that is the metro area -let metroAreaCircle = L.circle(metroAreaCenterCoordinates, { - color: 'green', - radius: 30000, - fillOpacity: 0.1 - }) - .bindPopup('Twin Cities Metro Area') - .addTo(map); diff --git a/lecture_code/mapstyle.css b/lecture_code/mapstyle.css deleted file mode 100644 index 5cd1a82..0000000 --- a/lecture_code/mapstyle.css +++ /dev/null @@ -1,5 +0,0 @@ -#college-map { - width: 600px; - height: 500px; - border: 1px green solid; -} \ No newline at end of file diff --git a/lecture_code/page_template.html b/lecture_code/page_template.html deleted file mode 100644 index bf863fb..0000000 --- a/lecture_code/page_template.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - Title - - - - - - - - - \ No newline at end of file diff --git a/lecture_code/underwater.jpg b/lecture_code/underwater.jpg deleted file mode 100644 index 46d1ddf5b6614b2d23844878e89f4168ce602e0b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68253 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�EM^TONb)Gb>yUZQa032Z0bT>(Zx-BX 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 Lq10_p?4SSHH@Owk diff --git a/lab/longest_bridges_map.js b/longest_bridges_map.js similarity index 100% rename from lab/longest_bridges_map.js rename to longest_bridges_map.js