- 學(xué)習(xí) Jupyter Notebook
- 學(xué)習(xí)如何用Jupyter Notebook 畫柱狀圖践叠。
- 代碼:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
?
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import pymongo
from string import punctuation
import charts
?
In [25]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
client = pymongo.MongoClient('localhost', 27017)
ganji = client['ganiji']
url_list = ganji['url_list']
infos = ganji['infos']
#infos = ganji['item_infoY']
In [121]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
area = ['1']
for i in infos.find().limit(2):
area = [' 北京', '通州', '土橋']
infos.update({'_id': i['_id']}, {'$set': {'area': area}})
print (area)
print (i['area'][0])
if i['area'][0] == " 北京":
area = [i['area'][0] + "-"+ i['area'][1], i['area'][2]]
print('get here')
print (area)
infos.update({'_id': i['_id']}, {'$set': {'area': area}})
?
[' 北京', '通州', '土橋'] 北京get here[' 北京-通州', '土橋'][' 北京', '通州', '土橋'] 北京get here[' 北京-通州', '土橋']
c:\users\rdczowh\appdata\local\programs\python\python35\lib\site-packages\ipykernel\__main__.py:4: DeprecationWarning: update is deprecated. Use replace_one, update_one or update_many instead.c:\users\rdczowh\appdata\local\programs\python\python35\lib\site-packages\ipykernel\__main__.py:12: DeprecationWarning: update is deprecated. Use replace_one, update_one or update_many instead.
In [135]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
for i in infos.find():
if i['area'][1]:
area = [i for i in i['area'] if i not in punctuation]
else:
area =[' 北京'] + ['不明']
infos.update({'_id': i['_id']}, {'$set': {'area': area}})
c:\users\rdczowh\appdata\local\programs\python\python35\lib\site-packages\ipykernel\__main__.py:7: DeprecationWarning: update is deprecated. Use replace_one, update_one or update_many instead.
In [136]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
for i in infos.find().limit(100):
print (i['area'])
[' 北京-通州', '土橋'][' 北京-通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '通州', '土橋'][' 北京', '朝陽', '國貿(mào)'][' 北京', '朝陽'][' 北京', '宣武', '白紙坊'][' 北京', '海淀', '牡丹園'][' 北京', '昌平', '回龍觀'][' 北京', '宣武', '白紙坊'][' 昆山', '其他'][' 昆山', '其他'][' 北京', '不明'][' 昆山', '其他'][' 北京', '海淀', '中關(guān)村'][' 北京', '朝陽', '勁松'][' 北京', '宣武', '白紙坊'][' 北京', '朝陽'][' 北京', '昌平', '回龍觀'][' 北京', '通州', '北關(guān)環(huán)島'][' 北京', '海淀', '玉泉路'][' 北京', '朝陽', '管莊'][' 北京', '大興', '舊宮'][' 北京', '崇文'][' 北京', '東城', '東四'][' 北京', '豐臺(tái)', '方莊'][' 北京', '東城'][' 北京', '昌平', '回龍觀'][' 北京', '東城', '東四'][' 北京', '順義'][' 北京', '石景山'][' 北京', '東城'][' 北京', '大興', '瀛海鎮(zhèn)'][' 北京', '通州'][' 北京', '昌平', '回龍觀'][' 北京', '東城'][' 北京', '順義', '李橋'][' 北京', '昌平', '回龍觀'][' 北京', '豐臺(tái)'][' 北京', '朝陽'][' 北京', '東城', '燈市口'][' 北京', '豐臺(tái)', '南苑'][' 北京', '海淀', '北大清華'][' 北京', '朝陽'][' 北京', '豐臺(tái)', '方莊'][' 北京', '昌平', '霍營'][' 北京', '朝陽', '望京'][' 北京', '石景山', '八角'][' 北京', '大興', '黃村'][' 北京', '豐臺(tái)', '南苑'][' 北京', '海淀'][' 北京', '豐臺(tái)', '木樨園'][' 北京', '海淀', '人民大學(xué)'][' 北京', '石景山', '八寶山'][' 北京', '海淀', '清河'][' 北京', '不明'][' 北京', '石景山'][' 北京', '朝陽', '小紅門'][' 北京', '朝陽'][' 北京', '海淀', '清河'][' 北京', '海淀'][' 北京', '昌平'][' 北京', '北京周邊'][' 北京', '海淀'][' 北京', '豐臺(tái)', '方莊']
In [32]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
series = [data for data in data_gen('column')]
charts.plot(series, show='inline', options=dict(title=dict(text='發(fā)帖量')))
. . .
In [137]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
area_list = []
for i in infos.find():
area_list.append(i['area'][1])
area_index = list(set(area_list))
print(area_index)
['西城', '宣武', '大興', '東城', '其他', '通州', '順義', '土橋', '石景山', '北京周邊', '海淀', '崇文', '昌平', '豐臺(tái)', '不明', '朝陽']
In [125]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
post_time = []
for index in area_index:
post_time.append(area_list.count(index))
print (post_time)
print (area_index)
[2, 1, 3, 3, 8, 3, 43, 2, 6, 1, 11, 3, 8, 7, 16]['', '西城', '宣武', '大興', '東城', '其他', '通州', '順義', '石景山', '北京周邊', '海淀', '崇文', '昌平', '豐臺(tái)', '朝陽']
In [143]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
def data_gen(types):
length =0
if length <= len(area_index):
for area, times in zip(area_index, post_time):
data = {
'name': area,
'data': [times],
'type': types
}
yield data
length += 1
In [139]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
for i in data_gen('column'):
print (i)
{'date': [2], 'type': 'column', 'name': '西城'}{'date': [1], 'type': 'column', 'name': '宣武'}{'date': [3], 'type': 'column', 'name': '大興'}{'date': [3], 'type': 'column', 'name': '東城'}{'date': [8], 'type': 'column', 'name': '其他'}{'date': [3], 'type': 'column', 'name': '通州'}{'date': [43], 'type': 'column', 'name': '順義'}{'date': [2], 'type': 'column', 'name': '土橋'}{'date': [6], 'type': 'column', 'name': '石景山'}{'date': [1], 'type': 'column', 'name': '北京周邊'}{'date': [11], 'type': 'column', 'name': '海淀'}{'date': [3], 'type': 'column', 'name': '崇文'}{'date': [8], 'type': 'column', 'name': '昌平'}{'date': [7], 'type': 'column', 'name': '豐臺(tái)'}{'date': [16], 'type': 'column', 'name': '不明'}
In [144]:
Slide Type
-
Slide
Sub-Slide
Fragment
Skip
Notes
series = [data for data in data_gen('column')]
charts.plot(series, show='inline', options=dict(title=dict(text='發(fā)帖量')))
- 圖表:
Paste_Image.png