99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁(yè)職業(yè)發(fā)展數(shù)據(jù)分析告訴你不一樣的中土世界
數(shù)據(jù)分析告訴你不一樣的中土世界
2015-10-14
收藏

數(shù)據(jù)分析告訴你不一樣的中土世界


人口普查對(duì)一個(gè)國(guó)家來(lái)說(shuō), 是了解居民基本情況的重要手段。 很多國(guó)家大約是每十年, 就要花費(fèi)大量人力物力來(lái)進(jìn)行人口普查。不過(guò), 最近, 一個(gè)瑞典的21歲大學(xué)生, 卻一個(gè)人完成了一項(xiàng)全球性的人口普查。 只不過(guò), 普查的對(duì)象是托爾金小說(shuō)的《指環(huán)王》系列小說(shuō)(霍比特人,指環(huán)王, 以及精靈之鉆)中描述的中土世界。

  這位小伙子名叫Emil Johansson, 是瑞典查莫特理工學(xué)院的化學(xué)工程系的學(xué)生。 他在業(yè)余時(shí)間, 利用了近一年的時(shí)間, 在今年11月推出了叫LotrProject項(xiàng)目的網(wǎng)站。 對(duì)托爾金小說(shuō)里的923個(gè)人物進(jìn)行了分析。

  通過(guò)Emil Johansson, 我們知道了霍比特人的平均壽命是96.24年, 而比爾博.巴金斯活到了131歲, 使他成為僅次于斯米戈?duì)?也就是咕嚕)外最長(zhǎng)壽的霍比特人, 而比爾博-巴金斯的一個(gè)侄子, 羅索-巴金斯, 則只活了55歲, 是霍比特人里最短壽的。

clip_image004

  而你能想象嗎, 中土世界里, 女性占總?cè)丝诘谋壤挥?0%不到, 就算是最英俊的矮人, 可能也只能通過(guò)《非誠(chéng)勿擾》才能找到戀愛(ài)對(duì)象了。

  本質(zhì)上, LotrProject其實(shí)是一個(gè)數(shù)據(jù)可視化項(xiàng)目。 它把托爾金小說(shuō)里表述的一個(gè)巨大而復(fù)雜的家譜關(guān)系, 通過(guò)圖表, 地圖, 時(shí)間軸以及簡(jiǎn)單文字說(shuō)明生動(dòng)地表現(xiàn)了出來(lái)。

  下面這個(gè)圖表就是一例, 這個(gè)交互式的圖, 顯示了按照不同種族的壽命分布(精靈因?yàn)殚L(zhǎng)生不老, 所以沒(méi)有列入)。 你可以用鼠標(biāo)點(diǎn)擊不同的部分放大進(jìn)行更細(xì)的信息瀏覽(本站只是截圖, 讀者可以去Lotrproject的網(wǎng)站去試試)。

clip_image006

  看上去像是數(shù)據(jù)極客的游戲吧。 不過(guò), 這正是互聯(lián)網(wǎng)和數(shù)據(jù)分析神奇的地方, 只要你有想法, 有熱情, 技術(shù)宅男一樣也可以變成明星。 自從推出了Lotrproject網(wǎng)站, Emil Johansson很快就出名了。 他的網(wǎng)站收到了了成千上萬(wàn)的評(píng)論, 他還被邀請(qǐng)?jiān)诠诺潜さ腡ED上做演講。 據(jù)說(shuō)還要去參加明年一月的霍比特人研討會(huì)。

  那我們就來(lái)看看這個(gè)21歲的化學(xué)工程系的學(xué)生是如何變成網(wǎng)上的明星的吧。

  在他的網(wǎng)站里, 他對(duì)923個(gè)人物做了分析。 盡管這個(gè)網(wǎng)站才建立不到一年, 這些想法已經(jīng)很早就開(kāi)始了。

  Johansson從小就非常喜歡托爾金的作品。 看過(guò)無(wú)數(shù)遍他的小說(shuō)。 他說(shuō), 從2001年起, 他每年都會(huì)讀一遍指環(huán)王。 大約7年前, 他開(kāi)始根據(jù)托爾金的小說(shuō)《精靈之鉆》, 來(lái)編撰人物家譜。 最終, 他把托爾金系列小說(shuō)里的所有人物都作了歸類(lèi)和分析。

  Johansson很早就想在網(wǎng)上發(fā)表他的研究成果了。 可是他沒(méi)有什么編程的經(jīng)驗(yàn), 所以, 就一直沒(méi)有付諸實(shí)現(xiàn)。 直到他上了大學(xué)以后, 他才又重新開(kāi)始考慮把他的研究上網(wǎng)的項(xiàng)目。

  “作為一個(gè)工科的學(xué)生, 你得知道如何學(xué)習(xí)新的東西, 去干你過(guò)去干不了的事情?!?Johansson說(shuō):“我不會(huì)編程, 不過(guò)我Google用得很熟”。 依靠Google, Johansson自學(xué)了Javascript 和 PHP, 而最終, 他的中土“人口普查”得以上線。

  “起初, 我并沒(méi)有指望有多少人看它?!钡牵?人們最初的反饋好極了。 于是, Johansson決定在家譜的基礎(chǔ)上, 添加上交互式的圖表, 按照中土世界的大事件加上了時(shí)間軸。

  于是, 網(wǎng)站變得越來(lái)越受歡迎。 以至于Johansson不得不考慮把網(wǎng)站獨(dú)立托管了。 Johansson又采用了眾籌方式, 從Indiegogo上籌資, 2天內(nèi)就籌到了600美元。 Johansson最近還開(kāi)發(fā)了一個(gè)安卓的應(yīng)用。 一兩個(gè)月的下載量也超過(guò)了1000次。 Johanson說(shuō)他也想開(kāi)發(fā)一個(gè)iOS的版本, 但是那樣的話需要一臺(tái)蘋(píng)果電腦, 作為一個(gè)全職學(xué)生, 這超過(guò)了他的預(yù)算。 不過(guò), 蘋(píng)果迷們也不要著急。 據(jù)說(shuō)Johansson已經(jīng)租了一臺(tái)電腦, 準(zhǔn)備在明年一月份前推出iOS版本。

clip_image008

  在《指環(huán)王》里, 甘道夫在護(hù)戒遠(yuǎn)程出發(fā)前對(duì)佛羅多說(shuō):“當(dāng)重任輪到我們的時(shí)候, 我們需要決定去做什么?!?Johansson覺(jué)得, 他在花了大量時(shí)間和精力進(jìn)行開(kāi)發(fā)Lotrproject項(xiàng)目的時(shí)候, 就有一種來(lái)的中土世界的感覺(jué)。

  “托爾金把中土世界描述的細(xì)致入微, 從語(yǔ)言到人物, 都是那么地細(xì)致, 當(dāng)你在做這個(gè)項(xiàng)目的時(shí)候, 你仿佛就置身于中土世界一樣”, Johansson這樣描述他的感覺(jué)。

  聽(tīng)上去太像一個(gè)極客了吧。 確實(shí)。 “人們不要怕被稱(chēng)為極客, 每個(gè)人都有一些狂熱的愛(ài)好。 比如時(shí)尚, 汽車(chē), 托爾金。 化學(xué)什么的。 對(duì)了, 我其實(shí)也很喜歡化學(xué)的”, 這個(gè)化工系的學(xué)生如是說(shuō)。

  除了收到大量的《指環(huán)王》系列小說(shuō)的愛(ài)好者的評(píng)論外。 Johansson也收到了一些教師的評(píng)論。 希望能夠授權(quán)在教學(xué)中使用他的這些圖表。 Johnsson本人也在考慮開(kāi)發(fā)一些類(lèi)似工具??梢圆捎门cLotrproject類(lèi)似的方式來(lái)表現(xiàn)真實(shí)世界的歷史時(shí)間。 而除了把中土世界搬到網(wǎng)上外, Johansson也計(jì)劃把另一部魔幻作品《冰與火之歌》的“人口普查”也放到網(wǎng)上去。

  而對(duì)馬上要上映的《霍比特人》的電影, Johansson還在網(wǎng)上放了一張各人物關(guān)系圖。 Johansson就是通過(guò)類(lèi)似的關(guān)系圖開(kāi)始他的家譜繪制的。 而通過(guò)這些圖譜, 影迷們可以更好的了解各種復(fù)雜的人物關(guān)系(編者:可能以后的電影營(yíng)銷(xiāo)可以考慮類(lèi)似的方式了)。

clip_image010

  Johansson說(shuō):“我的項(xiàng)目取得成功非常幸運(yùn), 當(dāng)我重新審視當(dāng)初的想法時(shí), 很難想到, 一個(gè)純粹個(gè)人愛(ài)好竟然能夠成為今天這樣一個(gè)數(shù)據(jù)可視化的項(xiàng)目?!?/span>

數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢(xún)
客服在線
立即咨詢(xún)
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶(hù)后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見(jiàn):http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }