加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

大数据分析师学习入门,10个数据可视化技巧

发布时间:2019-10-12 06:08:55 所属栏目:教程 来源:加米谷大数据
导读:副标题#e# 我必须对你说实话:当我学习数据科学时,我完全低估了绘图的重要性。没错,那时一切都一团糟:我从头开始学习 python、熟悉了所有可能的算法、理解了所有东西背后的数学原理,但是我的绘图技巧很糟糕。 为什么会这样?我们总是在做同样的事情。你

假设现在我们使用 subplots,我们有几个图表,其中一个是位于 ax[0] 位置的 seaborn 的 barplot。在这种情况下,在条形图中每个条上获取注释的代码要复杂一些,但很容易实现:

  1. for p in ax[0].patches: 
  2.  
  3. ax[0].annotate(“%.2f” % p.get_height(), (p.get_x() + p.get_width() / 2., p.get_height()),  
  4. ha=’center’, va=’center’, fontsize=12, color=’white’, xytext=(0, -10), textcoords=’offset points’ 

对于图表中的每个「patch」或条形图,直到「ha」参数获取条形图的位置、高度和宽度为止,以便将值注释放在正确的位置。以类似的方式,我们还可以指定注释的对齐方式、字体大小和颜色,而「xytext」参数指示我们是否要在某个 x 或 y 方向移动注释。在上面的例子中,我们将在 y 轴上向下移动注释文本。

5.使用不同颜色区分标签

在某些情况下,在一段时间或一系列的值中,我们可能测量了不同种类的物体。例如,假设我们测量 6 个月以来狗和猫的体重。在实验结束时,我们想画出每只动物的体重,分别用蓝色和红色区分猫和狗。为此,在大多数传统绘图中,我们可以使用参数「hue」为元素提供颜色列表。

举个例子:

  1. weight = [5,4,8,2,6,2] month = [‘febrero’,’enero’,’abril’,’junio’,’marzo’,’mayo’] animal_type = [‘dog’,’cat’,’cat’,’dog’,’dog’,’dog’] hue = [‘blue’,’red’,’red’,’blue’,’blue’,’blue’] sns.scatterplot(x=month, y=weight, hue=hue); 
大数据分析师学习入门,10个数据可视化技巧

6.改变散点图中点的大小

使用上面的相同示例,我们还可以使用从 1 到 5 的刻度表示图表中动物的大小。将此额外指标添加到绘图中的一个好选择是修改散点图的大小,通过「size」参数将大小指定给新的附加向量,并使用「size」调整它们之间的关系:

  1. size = [2,3,5,1,4,1]  
  2. sns.scatterplot(x=month, y=weight, hue=hue, size=size, sizes= (50,300)); 
大数据分析师学习入门,10个数据可视化技巧

顺便说一下,如果如上图所示,图例使绘图更难阅读,你可以将「legend」参数设置为 false。

7.在数据中包含一行以显示阈值

在现实生活中的许多情况下,数据高于或低于某个阈值可能是问题提示信号或错误警告。如果要在绘图中清楚地显示,可以使用以下命令添加一行:

  1. ax[0].axvline(32,0,c='r') 

加在哪里?

  • ax[0] 将是我们要在其中插入行的图表
  • 32 将是绘制线的值
  • c = 'r' 表示图表将是红色的

如果我们使用的是 subplots,那么将 axvline 添加到相应的 axe 就很简单,如上面的示例所示。但是,如果不使用 subplots,则应执行以下操作:

  1. g=sns.scatterplot(x=month,y=weight,hue=hue,legend=false)  
  2. g.axvline(2,c='r')  
  3. plt.show() 
大数据分析师学习入门,10个数据可视化技巧

8.多 Y 轴绘图

这可能是最简单,但也是最有用的技巧之一。

有时我们只需要在图表中添加更多信息,除了在绘图的右 y 轴上添加新的度量之外,没有其他方法可以绕过它:

  1. ax2=ax[0].twinx() 

现在可以添加任何要将「ax」参数指向「ax2」的图表

  1. sns.lineplot(x=month, y=average_animal_weight, ax=ax2 

请注意,这个例子再次假设你使用的是 subplots。如果没有,你应该遵循与前一点相同的逻辑:

  1. g = sns.scatterplot(x=month, y=weight, hue=hue, legend=False)  
  2. g.axvline(2,c=’r’)  
  3. ax2 = g.twinx()  
  4. sns.lineplot(x=month, y=average_animal_weight, ax=ax2, c=’y’)  
  5. plt.show() 
大数据分析师学习入门,10个数据可视化技巧

请注意,要使其工作,你应该为两个图表中的 x 轴设置始终相同的数据。否则,它们就不匹配了。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读