Python数据可视化
详细介绍可以看seaborn官方API和example galler。
1 set_style( ) set( )
set_style( )是用来设置主题的,Seaborn有五个预设好的主题: darkgrid , whitegrid , dark , white ,和 ticks 默认: darkgrid
import matplotlib.pyplot as plt import seaborn as sns sns.set_style("whitegrid") plt.plot(np.arange(10)) plt.show()set( )通过设置参数可以用来设置背景,调色板等,更加常用。
import seaborn as sns import matplotlib.pyplot as plt sns.set(style="white", palette="muted", color_codes=True) plt.plot(np.arange(10)) plt.show()
distplot( )为hist加强版,kdeplot( )为密度曲线图
import matplotlib.pyplot as plt import seaborn as sns df_iris = pd.read_csv('../input/iris.csv') fig, axes = plt.subplots(1,2) sns.distplot(df_iris['petal length'], ax = axes[0], kde = True, rug = True) sns.kdeplot(df_iris['petal length'], ax = axes[1], shade=True) plt.show()
internal_chars = ['full_sq', 'life_sq', 'floor', 'max_floor', 'build_year', 'num_room', 'kitch_sq', 'state', 'price_doc']
corrmat = train[internal_chars].corr()
f, ax = plt.subplots(figsize=(10, 7))
plt.xticks(rotation='90')
sns.heatmap(corrmat, square=True, linewidths=.5, annot=True)
plt.show()
6 散点图scatter( )
f, ax = plt.subplots(figsize=(10, 7))
plt.scatter(x=train['full_sq'], y=train['price_doc'], c='r')
plt.xlim(0,500)
plt.show()

7.pointplot画出变量间的关系
grouped_df = train_df.groupby('floor')['price_doc'].aggregate(np.median).reset_index()
plt.figure(figsize=(12,8))
sns.pointplot(grouped_df.floor.values, grouped_df.price_doc.values, alpha=0.8, color=color[2])
plt.ylabel('Median Price', fontsize=12)
plt.xlabel('Floor number', fontsize=12)
plt.xticks(rotation='vertical') plt.show()
10 barplot( )
f, ax=plt.subplots(figsize=(12,20))
#orient='h'表示是水平展示的,alpha表示颜色的深浅程度
sns.barplot(y=group_df.sub_area.values, x=group_df.price_doc.values,orient='h', alpha=0.8, color='red')
#设置y轴、X轴的坐标名字与字体大小
plt.ylabel('price_doc', fontsize=16)
plt.xlabel('sub_area', fontsize=16)
#设置X轴的各列下标字体是水平的
plt.xticks(rotation='horizontal')
#设置Y轴下标的字体大小
plt.yticks(fontsize=15)
plt.show()
注:如果orient='v'表示成竖直显示的话,一定要记得y=group_df.sub_area.values, x=group_df.price_doc.values调换一下坐标轴,否则报错
import matplotlib.pyplot as plt
import numpy as np
plt.rc('font', family='SimHei', size=13)
num = np.array([13325, 9403, 9227, 8651])
ratio = np.array([0.75, 0.76, 0.72, 0.75])
men = num * ratio
women = num * (1-ratio)
x = ['聊天','支付','团购n优惠券','在线视频']
width = 0.5
idx = np.arange(len(x))
plt.bar(idx, men, width, color='red', label='男性用户')
plt.bar(idx, women, width, bottom=men, color='yellow', label='女性用户') #这一块可是设置bottom,top,如果是水平放置的,可以设置right或者left。
plt.xlabel('应用类别')
plt.ylabel('男女分布')
plt.xticks(idx+width/2, x, rotation=40)
#bar图上显示数字
for a,b in zip(idx,men):
plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=12)
for a,b,c in zip(idx,women,men):
plt.text(a, b+c+0.5, '%.0f' % b, ha='center', va= 'bottom',fontsize=12)
plt.legend()
plt.show()
12、双Y轴绘图
本例主要用dataframe的两个列进行双Y轴画图
eng_name,chn_name,GDP,rate
a, 中国,100,0.6
b,美国,180,0.3
c,日本,80,0.2
d,瑞典,65,0.15
f,荷兰,56,0.23
#读取的时候,讲索引列变为chn_name,这样画图时候X轴自动为索引
df=pd.read_csv('b.csv',index_col='chn_name') df.index.name='国家'#这样x轴的label就变成‘国家了’。
plt.rc('font', family='SimHei', size=13) plt.figure() df['GDP'].plot(kind='bar') plt.ylabel('GDP') plt.title('国家发展情况对比') p = df['rate'] p.plot(color='black',secondary_y=True,style='--o',linewidth=2) #style--表示虚线,-表示实线 plt.ylabel('增长速度')
x=[0,1,2,3,4]#因为x轴是汉字,所以默认对应的数值是从0开始的
for a,b in zip(x,p):
plt.text(a+0.1, b+0.02, '%.2f' % b, ha='center', va= 'bottom',fontsize=12)
相关知识
Python中的数据可视化:Matplotlib基础与高级技巧
python利用c4.5决策树对鸢尾花卉数据集进行分类(iris)
Python+Django框架淘宝零食销售数据可视化系统网站作品截图和开题报告参考
15可视化冥想之舒展花朵般的身体伸展
0020期python训练鲜花识别
大屏设计系列之四:大数据可视化设计,故事+数据+设计 =可视化
JavaScript实现的风飓风数据可视化分析
Python机器学习基础教程
基于python编程的五种鲜花识别
python 花卉识别系统 用python搭建一个花卉识别系统(IT技术)
网址: Python数据可视化 https://www.huajiangbk.com/newsview381079.html
上一篇: IP+IP=?奇妙的化学反应会产 |
下一篇: 主题配色手册 |
推荐分享

- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039