# 导入工具包import pandas as pdimport numpy as npimport pandas_bokeh# 导入工具包import pandas as pdimport numpy as npimport pandas_bokehdata = pd.read_excel('./data/青岛短租数据整理.xlsx',index_col=0)
data = pd.read_excel('./data/青岛短租数据整理.xlsx',index_col=0)data.head()
result1 = data.groupby('房间数').agg({'价格':'mean','名称':'count'}).round(0)result1.columns=['均价','房源数量']result1.head()
data.价格.describe()
p1 = result1[['均价']].plot_bokeh.bar(Title='不同房间数均价', zooming=False, panning=False, toolbar_location=None, color='#8ac4d0', legend=None, show_figure=False, )
p2 = result1[['房源数量']].plot_bokeh.pIE(Title='不同房间数房源数量', zooming=False, panning=False, toolbar_location=None, colormap=['#8ac4d0','#28527a','#f4d160'], show_figure=False, )
p3 = data[['价格']].plot_bokeh.hist(Title='价格分布', xlim=(0,1200), # x轴的刻度 bins=np.linspace(0, 1200, 25), zooming=False, panning=False, legend=None, toolbar_location=None, color='#8ac4d0', show_figure=False, Alpha=1, )
data["size"] = data["价格"] / 50p4 = data.plot_bokeh.map(x="经度_re", y="纬度_re", hovertool_string="""<h2> @{名称} </h2> <h3> 价格: @{价格} </h3>""", tile_provIDer="CARTODBPOSITRON", size="size", show_colorbar=True, color='#8ac4d0', legend=None, title="房源分布", toolbar_location=None, show_figure=False, )
组合p1.plot_wIDth = 300p2.plot_wIDth = 300p3.plot_wIDth = 1100p4.plot_wIDth = 1100
p1.axis.axis_line_color=Nonep1.axis.minor_tick_line_color=Nonep1.axis.major_tick_line_color=Nonep3.axis.axis_line_color=Nonep3.axis.minor_tick_line_color=Nonep3.axis.major_tick_line_color=Nonep4.axis.axis_line_color=Nonep4.axis.minor_tick_line_color=Nonep4.axis.major_tick_line_color=Nonep4.axis.major_label_text_color= None
layout = pandas_bokeh.column(pandas_bokeh.row(p1,p3), pandas_bokeh.row(p2,p4))pandas_bokeh.output_file('青岛短租分布V1.HTML')pandas_bokeh.show(layout)
添加结论from bs4 import BeautifulSoupsoup = BeautifulSoup(open('青岛短租分布V1.HTML'),'lxml')
# 结论内容bt = '青岛短租价格分析'jl1 = '青岛短租均价300元, 主要集中在150~300元之间,'jl2 = '1. 房间数量为1的房源最多'jl3 = '2. 主要集中在沿海风景较好的地段'jl4 = '数据源: 短租网; 更新日期: 2021-3-12'HTML = """<h3>{0}</h3><p >{1}</p><p ;>{2}</p><p ;>{3}</p><p >{4}</p>""".format(bt,jl1,jl2,jl3,jl4) + str(soup)# 字体样式更多设置 Font-family:Calibri 或者 '"微软雅黑"' 字体 color:red 颜色 Font-weight: bold# text-indent:2em 缩进 line-height: 2em 行间距;text-align:center 字体居中# 保存数据with open("青岛短租分布V2.HTML" , "w",enCoding="utf-8") as f: f.write(HTML) # 预览文件 import webbrowserwebbrowser.open("青岛短租分布V2.HTML")
扫码关注微信, 赠送《pandas数据读取与清洗》视频及课程代码!
以上是内存溢出为你收集整理的python丨pandas-bokeh制作专业的可视化图表(仪表盘如何结论先行)全部内容,希望文章能够帮你解决python丨pandas-bokeh制作专业的可视化图表(仪表盘如何结论先行)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)