怎样成为优秀的数据可视化工程师( 四 )


import numpy as npimport matplotlib.pyplot as pltdata = https://www.zhihu.com/api/v4/questions/41956800/np.random.randn(1000)plt.hist(data, bins=40, normed=True, alpha=0.5, histtype=/u0026#39;stepfilled/u0026#39;,color=/u0026#39;steelblue/u0026#39;)plt.grid(True)plt.show()怎样成为优秀的数据可视化工程师

指定参数的频直方图次结合频次直方图中的透明度这个参数,我们再来多做做文章,比如,我们想对不同均值、方差分布特征的正态分布随机变量进行对比,那该怎么做?显然我们想到的是把不同的几个正态分布图画在一张图里进行比较。
import numpy as npimport matplotlib.pyplot as pltdata1 = np.random.normal(0, 0.8, 1000)data2 = np.random.normal(-2, 1, 1000)data3 = np.random.normal(3, 2, 1000)plt.grid(True)kwargs = dict(histtype=\u0026#39;stepfilled\u0026#39;, alpha=0.5, normed=True, bins=40)plt.hist(data1, **kwargs)plt.hist(data2, **kwargs)plt.hist(data3, **kwargs)plt.show()怎样成为优秀的数据可视化工程师


最后我们来介绍基本误差线图
我们在图上画50个散点,然后每个点的误差设定为一个随机值,满足标准正态分布。同时作为对照,我们在另一个图中设置每个点的误差值为一个标量常数而非随机数组。当然这个例子可能没有什么物理意义,只是来演示一下这种图怎么画
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0, 10, 50)dy = np.random.normal(0, 1, 50)y = np.sin(x) + dy*np.random.randn(50)plt.subplot(211)plt.errorbar(x, y, yerr=dy, fmt=\u0026#39;.k\u0026#39;)plt.grid(True)plt.subplot(212)plt.errorbar(x, y, yerr=0.8, fmt=\u0026#39;o\u0026#39;)plt.grid(True)plt.show()怎样成为优秀的数据可视化工程师

关于数据科学更系统、更深入的探讨可进入我们的专栏《Python数据科学之路》:
酱油哥:来吧,一起踏上Python数据科学之路 【怎样成为优秀的数据可视化工程师】 本专栏模仿美剧剧集编排分为五季,第一季:Python编程语言核心基础、第二季:Python数据分析基本工具、第三季:Python语言描述的数学基础、第四季:机器学习典型算法专题、第五季:实战热点深度应用。


推荐阅读