> 백엔드 개발 > 파이썬 튜토리얼 > 크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

풀어 주다: 2023-08-10 15:51:29
앞으로
1626명이 탐색했습니다.


本期为<知乎热榜/微博热搜时序图>系列文章下篇콘텐츠, [1부]에서는 Python을 사용하여 Zhihu 핫리스트/Weibo 핫검색 데이터를 정기적으로 크롤링하는 방법을 소개했습니다. 오늘 에서는 파이차트를 사용하여 핫리스트 데이터의 시계열 차트를 만드는 방법(동적 캐러셀)을 소개합니다. 차트) , 도움이 되었기를 바랍니다.

먼저 효과를 살펴보겠습니다(다른 재생 속도):

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)


1. 기본 타이밍 다이어그램

간단한 예(NBA 선수 데이터):
names = [&#39;詹姆斯&#39;, &#39;杜兰特&#39;, &#39;库里&#39;, &#39;欧文&#39;, &#39;哈登&#39;]
allinfo = [[[492, 610, 533, 416, 565, 639, 709, 465, 472], [387, 551, 488, 511, 514, 646, 747, 454, 636], [1683, 2036, 2089, 1743, 1920, 1954, 2251, 1505, 1544]], [[533, 527, 640, 598, 178, 589, 513, 464, 497], [214, 231, 374, 445, 110, 361, 300, 366, 457], [2161, 1850, 2280, 2593, 686, 2029, 1555, 1792, 2027]], [[88, 314, 334, 341, 430, 353, 261, 369, 26], [138, 539, 666, 619, 527, 524, 310, 361, 33], [383, 1786, 1873, 1900, 2375, 1999, 1346, 1881, 104]], [[191, 216, 259, 237, 157, 230, 227, 335, 103], [275, 350, 433, 389, 250, 418, 306, 464, 128], [944, 1325, 1478, 1628, 1041, 1816, 1466, 1596, 548]], [[252, 379, 344, 459, 501, 659, 389, 518, 387], [229, 455, 446, 565, 612, 907, 630, 586, 450], [1044, 2023, 1851, 2217, 2376, 2356, 2191, 2818, 2096]]]
로그인 후 복사

데이터가 옵니다 이전 기사에서:

"King James"가 NBA 공식 유니폼 판매 1위, 당신의 아이돌 순위를 살펴보세요

🎜

时序图代码:

y1 = []
y2 = []
y3 = []
for i in range(9):
    y_trb_sorce = []
    y_ast_sorce = []
    y_pts_sorce = []
    for j in range(5):
        y_trb_sorce.append(allinfo[j][0][i])
        y_ast_sorce.append(allinfo[j][1][i])
        y_pts_sorce.append(allinfo[j][2][i])
    y1.append(y_pts_sorce)
    y2.append(y_ast_sorce)
    y3.append(y_trb_sorce)

years = [&#39;11-12赛季&#39;, &#39;12-13赛季&#39;, &#39;13-14赛季&#39;, &#39;14-15赛季&#39;, &#39;15-16赛季&#39;, &#39;16-17赛季&#39;, &#39;17-18赛季&#39;, &#39;18-19赛季&#39;, &#39;19-20赛季&#39;]
tl = Timeline()
for i in range(9):
    bar = (
        Bar()
            .add_xaxis(names)
            .add_yaxis(&#39;得分&#39;, y1[i])
            .add_yaxis(&#39;助攻&#39;, y2[i])
            .add_yaxis(&#39;篮板&#39;, y3[i])
            .set_global_opts(title_opts=opts.TitleOpts("{}三项数据".format(years[i])))
    )
    tl.add(bar, "{}".format(years[i]))
tl.render_notebook()
로그인 후 복사
效果:
크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)


2. 웨이보 핫검색 시계열 차트

2.1 데이터 읽기

weibo_data = pd.read_csv(&#39;weibo_hot_datas.csv&#39;)
weibo_data.head()
로그인 후 복사
结果:
크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

2.2 排名前15的热点

代码:

tl = Timeline()
count = 50
time_data_counts = int(weibo_data.shape[0]/count)
times = weibo_data[&#39;时间&#39;].values.tolist()
for i in range(time_data_counts):
    bar = (
        Bar()
            .add_xaxis(list(weibo_data[&#39;标题&#39;])[i*count:i*count+15][::-1])
            .add_yaxis(&#39;微博热搜&#39;, list(weibo_data[&#39;热度&#39;])[i*count:i*count+15][::-1])
            .reversal_axis()
            .set_global_opts(title_opts=opts.TitleOpts(&#39;{}&#39;.format(times[i*count])))
    )
    tl.add(bar, "{}".format(times[i*count]))
tl.render_notebook()
로그인 후 복사
效果:

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

2.3 调整边距

代码:

# 将图形整体右移
grid = (
    Grid()
    .add(bar, grid_opts=opts.GridOpts(pos_left=&#39;30%&#39;, pos_right=&#39;10%&#39;)) 
)
tl.add(bar, "{}".format(times[i*count]))
tl.add(grid, &#39;&#39;)
로그인 후 복사
效果:

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

2.4 定制主题,增加图标,设置播放速度

효과:

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

3. 知乎热榜时序图

3.1 读取数据
zhihu_data = pd.read_csv(&#39;zhuhu_hot_datas.csv&#39;)
zhihu_data.head()
로그인 후 복사
结果:

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

3.2 상위 15개 핫스팟

효과:

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

3.3 하위 15개 핫스팟

효과:

크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)

이번 이슈는 주로 친구들에게 타이밍 다이어그램을 만드는 아이디어를 제공하기 위한 것입니다. 코드 반복이 많아 Zhihu 핫리스트 코드는 게시되지 않습니다. 필요한 경우 아래에 링크할 수 있습니다 코드 보기(파트 1 + 파트 2), 온라인으로 실행할 수도 있습니다:

https://www.heywhale.com/mw/project/60dd1932ee16460017a49d57

위 내용은 크롤러 + 시각화 | Python Zhihu 핫 리스트/Weibo 핫 검색 시퀀스 차트(2부)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:Python当打之年
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿