Python最大的好处就是开源的package,你总能找到各种方案,不过换句话说,每种方案都也都有其优劣势,不是可视化呈现不美观,就是可视化对数据组织的要求不同,再不然就是缺胳膊少腿的,感觉像拼凑一样,其实已经找到了N种方案,准备改写其中的一个,奈何时间原因,只好找一个最简单的凑数了。
很难说什么原创,毕竟package是公开的,数据是找的,还是那句话,理解了,能使用,就行。
import matplotlib.pyplot as plt
import squarify
#中文处理
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
# 全球GDP数据,主要包括标签、指标和颜色
name = ['美国','中国','日本','德国','法国','英国','印度',
'巴西','意大利','加拿大','韩国','俄罗斯','澳大利亚','西班牙',
'墨西哥','印度尼西亚','土耳其','荷兰','瑞士','沙特阿拉伯','其他']
income =[201999.6,131186.9,50631.3 ,39348.1 ,27656 ,26612.3 ,26541.7 ,
21997.2 ,20489.9 ,17634.9 ,15973.9 ,15229 ,14822.8 ,14199.3 ,
12499.7 ,10921.4 ,9057.16 ,8910.37 ,7087.96 ,7084.87 ,154169.32]
colors = [plt.cm.Spectral(i/float(len(name))) for i in range(len(name))]
# 绘图details
plot = squarify.plot(sizes = income, # 指定绘图数据
label = name, # 指定标签
color = colors, # 指定自定义颜色
alpha = 0.6, # 指定透明度
value = income, # 添加数值标签
edgecolor = 'white', # 设置边界框为白色
linewidth =2 # 设置边框宽度为3
)
# 设置标签大小为9
plt.rc('font', size=9)
# 设置标题大小
plot.set_title('2018全球GDP(亿元)',fontdict = {'fontsize':15})
# 除坐标轴
plt.axis('off')
# 除上边框和右边框刻度
plt.tick_params(top = 'off', right = 'off')
# 图形展示
plt.show()
本文分享自 python与大数据分析 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!