import pandas as pd
import numpy as np
import plotly.offline as plyoff
import plotly.graph_objs as plygo
pyplot = plyoff.iplot
GDP = pd.read_csv("../datasets/Chinas GDP in Province Zh.csv",index_col=0)
GDP_new = GDP.T.stack().reset_index()
GDP_new.rename(columns={"level_0":"地区","level_1":"年份",0:"GDP"},inplace=True)
GDP_new
地区 | 年份 | GDP | |
---|---|---|---|
0 | 北京市 | 2020 | 36102.6 |
1 | 北京市 | 2019 | 35445.1 |
2 | 北京市 | 2018 | 33106.0 |
3 | 北京市 | 2017 | 29883.0 |
4 | 北京市 | 2016 | 27041.2 |
... | ... | ... | ... |
894 | 新疆维吾尔自治区 | 1996 | 900.9 |
895 | 新疆维吾尔自治区 | 1995 | 814.9 |
896 | 新疆维吾尔自治区 | 1994 | 662.3 |
897 | 新疆维吾尔自治区 | 1993 | 495.3 |
898 | 新疆维吾尔自治区 | 1992 | 402.3 |
899 rows × 3 columns
sec_house = pd.read_csv("../datasets/house.csv")
sec_house
价格 | 小区 | 房屋户型 | 建筑面积 | 户型结构 | 建筑类型 | 房屋朝向 | 建筑结构 | 装修情况 | 梯户比例 | ... | 环 | 室 | 厅 | 厨 | 卫 | 所处楼层 | 总层数 | 有无抵押 | 抵押情况 | 均价 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 1410.0 | 江临天下 | 4室2厅1厨2卫 | 165.73 | 平层 | 板楼 | 南 西南 | 钢混结构 | 精装 | 六梯六户 | ... | 内环内 | 4 | 2 | 1 | 2 | 低楼层 | 35 | 无 | NaN | 85078.14 |
1 | 680.0 | 樱花路309弄 | 2室2厅1厨1卫 | 78.65 | 复式 | 板楼 | 南 北 | 钢混结构 | 精装 | 一梯两户 | ... | 内环内 | 2 | 2 | 1 | 1 | 高楼层 | 6 | 有 | 150万元 银行抵押 业主自还 | 86459.00 |
2 | 2088.0 | 盛大金磐 | 3室2厅1厨3卫 | 194.65 | 平层 | 板楼 | 南 | 钢混结构 | 精装 | 三梯三户 | ... | 内环内 | 3 | 2 | 1 | 3 | 中楼层 | 43 | 无 | NaN | 107269.46 |
3 | 266.0 | 康桥月苑 | 2室2厅1厨1卫 | 72.27 | 平层 | 板楼 | 南 | 钢混结构 | 精装 | 一梯两户 | ... | 外环外 | 2 | 2 | 1 | 1 | 高楼层 | 6 | 无 | NaN | 36806.42 |
4 | 2288.0 | 城市经典 | 4室2厅1厨3卫 | 324.29 | 暂无数据 | 暂无数据 | 北 | 钢混结构 | 精装 | 暂无数据 | ... | 内环至中环 | 4 | 2 | 1 | 3 | 中楼层 | 4 | 无 | NaN | 70554.13 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
37478 | 260.0 | 绿地金卫新家园 | 4室2厅1厨2卫 | 154.74 | 复式 | 板楼 | 南 | 钢混结构 | 精装 | 一梯两户 | ... | 外环外 | 4 | 2 | 1 | 2 | 高楼层 | 6 | 有 | 30万元 公积金 | 16802.38 |
37479 | 135.0 | 城西花苑 | 2室2厅1厨1卫 | 94.00 | 平层 | 板楼 | 南 | 钢混结构 | 毛坯 | 一梯两户 | ... | 外环外 | 2 | 2 | 1 | 1 | 中楼层 | 6 | 无 | NaN | 14361.70 |
37480 | 135.0 | 东礁四村 | 3室1厅1厨1卫 | 73.00 | 平层 | 板楼 | 南 | 钢混结构 | 简装 | 一梯三户 | ... | 外环外 | 3 | 1 | 1 | 1 | 高楼层 | 6 | 有 | 20万元 业主自还 | 18493.15 |
37481 | 320.0 | 万盛金邸 | 4室1厅1厨2卫 | 128.56 | 平层 | 板楼 | 南 | 钢混结构 | 精装 | 一梯两户 | ... | 外环外 | 4 | 1 | 1 | 2 | 低楼层 | 14 | 有 | 8万元 业主自还 | 24891.10 |
37482 | 208.0 | 育秀六区 | 3室1厅1厨1卫 | 88.00 | 平层 | 板楼 | 南 | 砖混结构 | 精装 | 一梯两户 | ... | NaN | 3 | 1 | 1 | 1 | 中楼层 | 5 | 无 | NaN | 23636.36 |
37483 rows × 29 columns
sec_house_qu_price=sec_house.groupby("区")[["价格","均价"]].mean().reset_index()
sec_house_qu_price["均价"] = sec_house_qu_price["均价"] /10000
trace0 = plygo.Scatter(x=sec_house_qu_price["区"],y=sec_house_qu_price["价格"],mode="markers",name="总价")
trace1 = plygo.Scatter(x=sec_house_qu_price["区"],y=sec_house_qu_price["均价"],mode="markers+lines",line=dict(),name="均价")
data=[trace0,trace1]
pyplot(data)
layout = plygo.Layout(title="不同地区的房价情况",
xaxis=dict(title="地区"),
yaxis=dict(title="金额"),
legend=dict(font=dict()),
)
fig = plygo.Figure(data=data,layout=layout)
pyplot(fig)
trace2= plygo.Bar(x=GDP_new[GDP_new["地区"]=="北京市"]["年份"],y=GDP_new[GDP_new["地区"]=="北京市"]["GDP"])
layout = plygo.Layout(title="北京市的GDP情况",xaxis=dict(title="年份"),yaxis=dict(title="GDP"))
data = [trace2]
fig = plygo.Figure(data=data,layout=layout)
pyplot(fig)
trace3= plygo.Bar(x=GDP_new[GDP_new["地区"]=="北京市"]["年份"],y=GDP_new[GDP_new["地区"]=="北京市"]["GDP"],name="北京市")
trace4= plygo.Bar(x=GDP_new[GDP_new["地区"]=="上海市"]["年份"],y=GDP_new[GDP_new["地区"]=="北京市"]["GDP"],name="上海市")
trace5= plygo.Bar(x=GDP_new[GDP_new["地区"]=="重庆市"]["年份"],y=GDP_new[GDP_new["地区"]=="北京市"]["GDP"],name="重庆市")
trace6= plygo.Bar(x=GDP_new[GDP_new["地区"]=="天津市"]["年份"],y=GDP_new[GDP_new["地区"]=="北京市"]["GDP"],name="天津市")
layout = plygo.Layout(title="四个直辖市GDP情况",xaxis=dict(title="年份"),yaxis=dict(title="GDP"))
data = [trace3,trace4,trace5,trace6]
fig = plygo.Figure(data=data,layout=layout)
pyplot(fig)
# 堆叠模式
layout = plygo.Layout(title="四个直辖市GDP情况",xaxis=dict(title="年份"),yaxis=dict(title="GDP"),barmode="stack")
data = [trace3,trace4,trace5,trace6]
fig = plygo.Figure(data=data,layout=layout)
pyplot(fig)
titanic = pd.read_csv("../datasets/taitanic_train.csv")
trace7 = plygo.Histogram(x=titanic["Age"],histnorm="probability")
data = [trace7]
layout = plygo.Layout(title="年龄概率分布直方图",)
fig = plygo.Figure(layout=layout,data=data)
pyplot(fig)
iris = pd.read_csv("../datasets/iris.data.txt")
iris_count =iris["species"].value_counts().reset_index()
iris_count
index | species | |
---|---|---|
0 | virginica | 50 |
1 | versicolor | 50 |
2 | setosa | 50 |
trace8 = plygo.Pie(labels=iris_count["index"],values=iris_count["species"])
data=[trace8]
layout = plygo.Layout(title="不同种类花的数量",)
fig = plygo.Figure(layout=layout,data=data)
pyplot(fig)
sec_house_qu_price
区 | 价格 | 均价 | |
---|---|---|---|
0 | 嘉定区 | 298.100956 | 3.346117 |
1 | 奉贤区 | 244.201167 | 2.349471 |
2 | 宝山区 | 392.535022 | 4.403582 |
3 | 徐汇区 | 661.666783 | 7.670740 |
4 | 普陀区 | 522.432921 | 6.090767 |
5 | 杨浦区 | 478.377571 | 6.364288 |
6 | 松江区 | 517.619973 | 3.798396 |
7 | 浦东新区 | 573.529333 | 5.670892 |
8 | 虹口区 | 570.579395 | 6.647432 |
9 | 金山区 | 206.206807 | 2.029167 |
10 | 长宁区 | 733.222088 | 7.141097 |
11 | 闵行区 | 521.933185 | 5.112870 |
12 | 青浦区 | 685.365884 | 3.667959 |
13 | 静安区 | 698.138963 | 7.651275 |
14 | 黄浦区 | 1255.955154 | 9.825114 |
bar_trace = plygo.Bar(x=sec_house_qu_price["区"],y=sec_house_qu_price["均价"],name="均价")
scater_trace= plygo.Scatter(x=sec_house_qu_price["区"],y=sec_house_qu_price["价格"],name="价格")
data = [bar_trace,scater_trace]
pyplot(data)
bar_trace = plygo.Bar(x=sec_house_qu_price["区"],y=sec_house_qu_price["均价"],name="均价")
scater_trace= plygo.Scatter(x=sec_house_qu_price["区"],y=sec_house_qu_price["价格"],name="价格",yaxis="y2")
data = [bar_trace,scater_trace]
layout =plygo.Layout(title="不同地区房价情况",
yaxis=dict(title="总金额"),
yaxis2= dict(title="单位价格",overlaying="y",side="right"),
xaxis=dict(title="地区"))
fig = plygo.Figure(data=data,layout=layout)
pyplot(fig)
from plotly import tools
fig = tools.make_subplots(rows=2,cols=1)
bar_trace = plygo.Bar(x=sec_house_qu_price["区"],y=sec_house_qu_price["均价"],name="均价")
scater_trace= plygo.Scatter(x=sec_house_qu_price["区"],y=sec_house_qu_price["价格"],name="价格",yaxis="y2")
fig.append_trace(bar_trace,1,1)
fig.append_trace(scater_trace,2,1)
fig['layout'].update(height=600,title="不同地区房价")
Layout({ 'height': 600, 'template': '...', 'title': {'text': '不同地区房价'}, 'xaxis': {'anchor': 'y', 'domain': [0.0, 1.0]}, 'xaxis2': {'anchor': 'y2', 'domain': [0.0, 1.0]}, 'yaxis': {'anchor': 'x', 'domain': [0.575, 1.0]}, 'yaxis2': {'anchor': 'x2', 'domain': [0.0, 0.425]} })
pyplot(fig)