◇ 北京東城、西城、海淀的學區和房價分佈。
學區房是不是動輒幾十萬一平米?居住環境是不是一定特別差?學區房與孩子成才之間的邏輯是怎麼建立的?騰訊新聞谷雨實驗室近期推出《搶灘學區房:三個傢庭的焦慮與選擇》,試圖用多角度敘事方式來回答關於學區房的諸多問題。
這樣一個由騰訊新聞、數據工場、騰訊房產三方合作的數據驅動型作品是怎樣完成的?我們邀請四位主創——張艾華(項目統籌 / 騰訊新聞)、羅京運(文字記者 / 騰訊新聞)、陳羽萱(交互設計和開發 / 數據工場)、吳嘉川(數據分析和可視化 / 數據工場)來探討:扒開北京學區房地圖之後,他們發現瞭什麼?
《搶灘學區房》背後
分享人 / 張艾華 羅京運 陳羽萱 吳嘉川
整理 / 王敏
編輯 / 李婧怡
統籌者需明確輕重緩急
谷雨故事:" 搶灘學區房 " 的選題立意是什麼?
張艾華:為什麼居住條件差價格貴的學區房,人們還搶著買?作品的開篇引語中有一句話:" 買下帶有優質學區資源的房子,就等於買下縮小階級差距的先機 "。這句話是在故事完成後編輯提出的,團隊也一致認為追求學區房,其實正是出於一種 " 向上的焦慮 "。
前幾天有篇文章《北京,有 2000 萬人假裝在生活》引起自媒體的又一次狂歡,人們調侃中國的中產階級平均每月要焦慮三次,《搶灘學區房》故事中的主人公大概就是屬於此類。根據他們的焦慮程度,我們可以把文中三個故事看成學區房眾生相的天堂、人間和地獄。
學區房現象不僅北京特有,甚至不是中國特有,很多國傢都有這個概念。比如《紐約時報》今年也有一個關於學區房的數據新聞作品,在開篇段落就提及教育資源對人們置業選擇的一些影響。
我們在這個選題中選擇瞭兩個切入角度,首先是故事維度,怎麼找到被學區房裹挾的典型傢庭?他們的心態是怎樣的?被動還是主動?
關於這些問題的探究也引申出我們在每個故事開頭給讀者出的選擇題——如果你們是故事中的人物,會怎樣選擇自己的人生?
其次是更理性的數據部分。除瞭探究學區房的市場情況、學區房和教育這兩個概念的關聯邏輯,我們還要跳出 " 學區房一定要跟教育綁定 " 的觀點,觀察學區房作為房產的投資屬性。
◇ 城六區高中示范校數量比較。數據來源 / 北京教育考試院
谷雨故事:選題確定後,團隊如何組建?
張艾華:如何組建項目組要根據項目自身的特點來決定。最初,我們將這個項目定性為數據驅動的報導。首先要思考兩個問題——數據來源以及數據由誰來處理。騰訊房產和騰訊新聞同屬騰訊的網絡媒體條線,彼此溝通成本低,合作意願強。於是我們選擇瞭他們。
數據處理部分的工作由數據工場負責。雖然騰訊不缺業內堪稱優秀的設計師和開發人員,但我們還是希望這個項目的每個環節都能由最專業的人或團隊來完成。數據工場由黃志敏老師帶隊,項目團隊成員都是哥大 LEDE 項目的優秀畢業生,在數據可視化尤其是數據新聞領域可以說是首屈一指。
另外,故事采寫和項目統籌、上線、發佈、推廣等工作則由騰訊新聞來完成的。
谷雨故事:這麼龐大的一個團隊要如何完成彼此間的協作?
張艾華:統籌者需要清楚傳達需求,明確輕重緩急,需要的時候還可以將需求差異化為低級和高級兩個不同的版本。
我會跟記者同事說:" 希望你在采訪中能兼顧到數據,數據將用於制作故事裡的圖表,這對整個報導的可視化非常重要。最好能夠按照我給的 excel 表格結構去獲取,如果不能一一對應,就把最相關的信息備註在裡面即可。最好可以在采訪結束就發給我,不需要等到交稿時一起。" 這是我跟同事傳達需求的一種習慣。
但是由一個人來控制一個項目是不現實的。項目把關要采取總分式的結構,每個環節都還要有一個專業領域的把關人。
文字記者在采寫中帶入數據思維
谷雨故事:采訪前期做瞭哪些準備?
羅京運:我們采訪的大背景是全國范圍內,包括深圳、北京等城市的房產市場政策都做瞭一些大調整,人們對房產領域的關註度和議論程度都很高。
在這樣的大環境下,我們選擇瞭學區房這個小切口,反倒發掘瞭很多有意思的故事。我們最開始瞭解這個選題的時候,其實跟很多人一樣,帶著一種不解或者好奇的心態——為什麼這些人會買?
前期我們做瞭很多案頭和資料整理的工作,先是在網上加入一些學區房及教育論壇,和微信群或論壇裡的傢長聊。很快就發現大傢所說的學區房為什麼被稱為學區房。正如艾華在介紹中提到的,在北京或是其他大城市,學區房代表的是一種優質的教育資源。
當然也不能單一地理解,這背後也有投資的因素。在學區房這個領域裡,這一撥人買完,依然有下一撥人會來買。教育資源分配不公的事實沒有改變,學區房的投資屬性就會顯得特別堅固。沿著這樣的思路,就能理解人們去買學區房的本質是什麼,以及傢長們口中盛傳的北京不同學區之間的差異到底在哪。
前期,基於數據團隊做出的北京學區地圖,我們開始有針對性地尋找合適的采訪案例,最終找到瞭項目中呈現的那三個。通過這三個案例把人物買房子的心態或者圍繞學區房買賣的一些個人經歷展現出來。
三個主人公的個體差異也代表著學區房購買者的不同。有土豪能夠一擲千金,有小中產傢庭需要把所有資產全部拿出來置換,也有人因為買學區房而經歷一段非常不好的經歷。最後從結構以及整體的邏輯過渡上來看,這三個故事都是比較成功的。
◇ " 置換學區房 " 的一傢四口。
谷雨故事:項目最初定位為數據新聞,作為文字記者在采訪過程中會帶入數據思維嗎?
羅京運:我是一個文字記者,對數據新聞不太瞭解,所以就需要和數據團隊、熟悉設計的同事聊,去理解數據傳播依據什麼樣的敘事邏輯。在慢慢熟悉的過程中有瞭稍微清晰一點的認知:數據應該怎樣體現在一個報道裡,這些信息如何反過來配合這個數據,最終為它所用。
值得一提的是,如果按照以往的采訪方式,我隻需要從某個角度采訪,然後把故事呈現出來就可以瞭。但因為是數據新聞,最終要求在數據上有所體現,所以我們會有意地在采訪過程中發現那些值得用數據化呈現的部分。
例如其中一個故事選擇的地點是德勝學區,德勝學區屬於北京最頂尖的學區,作品中專門有一部分數據可視化是圍繞著這一案例去呈現的,包括它的優質學校分佈以及升學率等。
另外一個例子是我們做房山學區房報道的時候,故事主人公提到他當時買房的選擇根據是北京地鐵六號線。六號線是東西橫貫北京從海淀往西城過渡的一條地鐵線,恰好也是北京學區房房價隱含的那條邏輯線。海淀西城這兩個學區的差異就是北京學區房購買者口中盛傳的那條所謂進階鏈條——西城是高原,海淀是丘陵,其他的城區是平原或者窪地。
◇ 總價 600 萬能買到多大的房子。數據來源 / 鏈傢
按照以往的方式我可能會一筆帶過這個線索。但這次因為覺得這背後有數據流,而且從數據上看也似乎是合適的,所以就把它做瞭一些特殊的處理,很詳細地訪問每一個站點是怎麼看房子的,大概房價是多少,以及對應的學區是什麼樣的。
可視化也需要敘事
谷雨故事:在制作移動端故事分鏡腳本時,你們有什麼考慮?
陳羽萱:雖然數據工場在這次學區房項目裡隻負責設計和開發,但因為我和我的同事嘉川本身都有新聞背景,所以我們在項目最初階段,也就是文字記者和攝影記者還沒定稿之前就加入瞭討論,很早就開始想要怎麼排版,更好地呈現這個故事。
在所有的東西還沒有定稿之前,我們隻能先用手畫一個腳本,所以看起來有些簡陋,但卻非常有助於溝通。我們也可以從中看出這個故事大體的面貌,也清楚我們所要做的素材是什麼樣的。
分鏡腳本的好處是能夠很好地幫你想清楚,在同一則故事裡有多個媒介的時候要怎麼安排。
比如押寶學區房這一則故事裡包含瞭非常豐富的媒介,有圖片、文字、圖表、視頻,還有一個交互式地圖。那怎麼讓這麼豐富的媒介排列出一個讀者可以跟隨的閱讀節奏呢?我們用分鏡腳本就可以清楚地展示每一個媒介的位置在哪裡,要傳遞給讀者的訊息是什麼。
◇ " 押寶學區房 " 故事中的北京市西城區陽光麗景小區。
更具體點說,押寶學區房講的是主人公在買房的過程中,身傢在七八年間從一百多萬到六千萬是怎樣達成的,原本我們是打算把這部分內容放在故事的中間。但考慮到需要在故事的最開始吸引讀者,所以我們就把這個我們認為最精彩的、最有互動效果的故事放在最前面。
另外我們也用分鏡腳本來判斷:有沒有更特殊的排版能夠突顯故事本身魅力?像纏訟學區房的故事中,主人公用瞭五年打學區房官司,房子沒辦法入住,同時房價又在飆升。
◇ " 纏訟學區房 " 故事主人公宋毅。
我們覺得這是整個故事裡面最精彩的部分。但這部分內容不一定有那麼強大的數據成分。我們一開始做瞭一個折線圖表現五年內房價飆升,但考慮到這個故事中最重要的部分是買賣雙方,所以我們采取瞭買傢賣傢左右各列一邊的呈現方式,讓大傢直觀看到五年內他們各自經歷過什麼,各自的說辭又是什麼。
◇ " 纏訟學區房 " 五年中房價的漲幅。數據來源 / 根據房產交易網站同小區歷史交易推算
谷雨故事:為什麼項目中大部分的可視化和互動以滑動的方式代替其他互動方式?
陳羽萱:這樣的設計很大一部分是因為我們認為可視化和文字一樣,都需要有一個敘事存在,讓讀者可以跟著這個敘事瞭解故事情境。我們想通過滑動這樣比較直接的方式觸發下一個故事的環節。讀者需要做的考慮越少,就越可以接受我們給他安排的故事順序。
代碼不是萬能的
谷雨故事:你們是如何抓取某房產交易網站數據的?
吳嘉川:這張地圖上的藍點都是某房產交易網站上面的數據。我們抓取瞭每個小區四月份的掛牌均價、房屋的年齡、地址、坐標信息等等。
我們是用 Python 加上 MongoDB 的方式把抓取下來的數據存在 MongoDB 中。MongoDB 可以幫你處理和導出你所需要的不同數據格式。抓取完這些數據後還要做一些簡單的處理,比如清理一些重復的小區,去除一些空值等。
◇ 最初存儲在 MongoDb 裡的數據。
值得一提的是,因為某房產交易網站上的數據特別多,所以當時抓取時每兩萬多就要換一個 IP 地址。因為我現在住在美國,所以我采取的方式是把所有的腳本都放在 Amazon Web Services 上運行,AWS 每次重啟都會自動換一下 IP。這是一個應對反扒的必要技能。
谷雨故事:如何抓取小區邊界?
吳嘉川:小區邊界的抓取是項目可視化中最耗時的部分。我們用的是 Python 裡面的 splinter,抓取某地圖網站裡的小區 id,獲得小區的樣子。
我們發現有部分小區的邊界是沒有被抓取到的。原因可能是某地圖網站裡並沒有這些小區的邊界信息,比如北京的很多胡同。所以記錄下來之後,我在另一傢地圖網站上又抓瞭一遍,盡量保證小區邊界是完整的。另外,除瞭用代碼來抓取之外,還需要人工核對,這部分也花瞭不少時間。
有一個反扒技能可以跟大傢分享。如果你非常頻繁地抓取,這些網站就會設置一些幹擾。比如某地圖網站地圖會把你的地圖搞亂,我就把它放在 AWS 上不斷重啟,用美國新加坡的服務器不斷換著用。某地圖網站地圖還需要輸入一些驗證碼或者滑動圖片等,這些都是人工完成的。所以代碼不是萬能的,很多時候還是要通過手工的方法。
◇ splinter 模擬人工操作。
谷雨故事:能給我們介紹一下 QGIS 的用法嗎?
吳嘉川:當所有的數據都準備好之後,我們用 QGIS 做瞭一個靜態的學區房地圖。但我們發現它們沒有和北京行政區地圖重合。這才發現很多地圖網站地圖有自己的火星坐標系。最後,我們用簡單的 Python 把他們都轉成通用的格式,才可以重合起來。
在這個項目中,我們大量地使用瞭 QGIS。在主圖中,我們用六邊形做瞭這個學區的房價地圖。這個部分也是 QGIS 的 MMQGIS 插件實現的。這也是我第一次使用,它可以用 Python 寫好的 library 將一定區域內的數值算個平均值。
整個過程中,我們也一直用 QGIS 打草稿。京運前面也提到,我們做的是數據驅動的報道,我們先把這張學區房地圖以一個不是很美的方式呈現出來,這樣就可以在圖上找到一些價格高地。再把從教育官網上整理下來的 " 牛小 " 的數據放在地圖上,這樣就可以粗略判斷房價很高的地方是不是真的有 " 牛小 "。
另外,我們也花瞭很多時間驗證 " 牛小 "。因為北京的小學有不一樣的名字。比如,西城師范學校附屬小學也叫西師附小,所以還需要一個人工核實的步驟。除瞭上網查官網之外就是打電話給門衛,根據地址來找學校的話會更準確一點。
讀者提問
Q(陳嘉慧 / 財新):四部曲的包裝方法是怎麼想到的?有什麼考量因素?
張艾華:最開始我們希望整個報道做成一個長網頁的形式,但後來發現四個板塊(三個故事,一個可視化)的調性其實不太相符,不太好放在一個作品裡。
還有一個技術問題是每個故事板塊調用的 js 庫不一樣,放在一起的話開發難度就非常大。然後也希望大傢在手機上有個輕量的閱讀體驗,所以不希望做太長。
Q(劉佳昕 / 財新):在時間安排和分工方面,實際操作與最初計劃有何不同?是否有過變動和調整?哪裡用時用力最多,難度最大?
張艾華:我們的項目進度確實是在不斷調整,故事挖掘上有個很大的困難就是團隊成員很年輕,大傢身邊基本沒有哪個人可以成為報道對象。所以挖掘故事花費的時間其實比真正寫稿的時間還長。
陳羽萱:技術方面也遇到瞭一些困難。我們做瞭一個 D3 的互動可視化地圖。在手機上交互時因為考慮到不同設備屏幕大小不一很難完美呈現,所以做瞭很多調整和修改。像圖解學區房這一塊,我們要讓東、西、海這三個不規則的區域在手機上面有比較好的表現,就需要花比較多的時間來調整。
Q(王秀麗 / 西安外國語大學):設計團隊中既有騰訊的人又有數據工場的人,你們怎麼分工?怎麼保證設計的整體感覺保持統一呢?
張艾華:數據工場更多是做 UI、交互的設計,視覺設計為瞭要保持騰訊出品的一致性,會請騰訊新聞產品組的同學來進行一個優化和再次包裝。
Q(張萍 / 重慶大學):項目統籌給文字記者采訪時要求要采訪到的數據是哪些 ? 這些數據維度是怎麼設置或者說構思的 ?
張艾華:數據維度是產品端、內容端基於故事本身邏輯所梳理出來的一些可視化空間。這些素材都是由兩位記者同學在采訪時幫我們搜羅出來的。
Q(張萍 / 重慶大學):文字記者提到要學區房的升學率數據,這個數據怎麼來的 ? 是把學校的升學率數據找到嗎?學校的升學率可以具體到哪個學區?
吳嘉川:對於學區好壞的判斷我們是跟著傢長思路走的。買到好的學區房是希望自己孩子最後走進好的大學。從小學到初中、高中、大學,各層級好學校的定義是不同的,升學率、口碑、優質學校、區重點、市重點這些都是判斷標準。
所以我們就從這些來著手找官方和媒體報道過的數據,大部分通過人工整理,尤其一本升學率,教育部並不會公開得很詳細,但從媒體上還是可以得到一些數據。
另外,雖然我們得不到高中示范校的升學比例,但中招時示范校的招生比例是公開的,那麼在模擬傢長升學規劃的時候,這就可以作為參考。
Q(馬金鑫 / 數據新聞網):騰訊房產作為合作方提供瞭什麼數據?感覺你們大部分的數據好像都是自己爬的?
張艾華:我們的數據有兩部分來源。一部分是嘉川用爬蟲爬取的,這一部分爬取到的是操作當月的數據。另外一部分我們需要一些歷史數據,這些歷史數據是通過跟騰訊房產合作得到的。
騰訊房產有些行業內部的資源,比如他們跟雲房數據研究中心有合作關系,所以他們提供瞭很大一部分數據,但因篇幅所限數據也沒有完全用盡。
◇ 東城、西城、海淀學區內二手房掛牌均價。
吳嘉川:這個就是關於騰訊房產的數據使用,我們做瞭三月滑動平均值處理,季節性因素會小一些。騰訊房產做瞭大量小區和學區匹配。我們過濾掉瞭一些影響手機端看的交互方式,直接用靜態圖,這樣大傢看起來不會卡,也比較清晰。
陳羽萱:騰訊房產的數據也是我們最早拿全的數據,在初期幫助我們擬定數據挖掘方向很有幫助。
Q(蔣林 / 重慶規劃):學區范圍能查到嗎?就是精確到某條路那種。我看這次似乎沒顯示出來。
吳嘉川:是的,我們的確嘗試去整理學區,但由於體量太大,沒有成功細化到門牌號之類的。但我們有做一個小區與學區匹配,就是騰訊房產提供的有歷史數據的數據集。
Q(蔣林 / 重慶規劃):不是關於這個項目的,老百姓買學區房怎麼確定要買的房在那個學區? 到教育部門現查嗎?
吳嘉川:是的,如果要查哪個學校在什麼學區,參考教育考試院官網是我們唯一的使用方式。
黃志敏:關於這個問題,其實我們也考慮過可以做個工具幫助大傢查找。哪個房子對應哪個學區,其實數據裡都有,隻是因為時間空間的關系沒有完全呈現出來。
討論
你會買學區房嗎?對於學區房,你有什麼看法?
歡迎在評論中與我們分享。