0
8
1172
False
False
None
False
0
<style type="text/css">
</style>
<!--style type="text/css">
/* Overrides of notebook CSS for static HTML export */
body {
#overflow: visible;
#padding: 8px;
}
div#notebook {
overflow: visible;
border-top: none;
}@media print {
div.cell {
display: block;
page-break-inside: avoid;
}
div.output_wrapper {
display: block;
page-break-inside: avoid;
}
div.output {
display: block;
page-break-inside: avoid;
}
}
</style-->
<!-- Custom stylesheet, it must be in the same directory as the html file -->
<!--link href="/static/codemirror/codemirror.css" rel="stylesheet"-->
<!--link rel="stylesheet" href="/static/css/custom.css"-->
<!-- Loading mathjax macro -->
<section>
<div tabindex="-1" id="notebook" class="border-box-sizing">
<div id="notebook-container">
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>可视化的研究、开发和应用领域广泛,其中的软件也多种多样。尽管我们的课程是介绍Python的可视化,但是有很多软件也是值得一提。这些软件的使用方法和优缺点都有所不同,具体使用哪个可根据个人需求及擅长技能来定。</p>
<h3 id="Tableau">Tableau<a class="anchor-link" href="#Tableau">¶</a></h3><p>Tableau是由Tableau软件公司开发的交互式数据可视化软件。它不仅支持多种经典可视化方案也可以绘制新型图表类型,因此成为很多商业分析师的可视化选择。Tableau主要用来可视化表格数据,同时兼容编程和简单拖拽的操作模式,界面简单易懂很好操作。但是,这个软件为付费软件。下图是Tableau的一个可视化作品:</p>
<p><img src='/media/lecture/315/tableau.png' style='max-width:80%;'/></p>
<center>图27 使用Tableau软件制作的气泡地图可视化作品([图片出处](https://www.betterbuys.com/bi/reviews/tableau-business-intelligence/))</center><h3 id="SAS">SAS<a class="anchor-link" href="#SAS">¶</a></h3><p>SAS软件也是商业分析和统计分析中的佼佼者,是由SAS Institute开发的一套软件套件,用于高级分析,多变量分析,商业智能,数据管理和预测分析等。SAS为非技术用户提供了简单的点击式用户界面,并且也支持通过SAS语言的高级编程选项。SAS支持网页版数据可视化操作,用户无需安装庞大的软件,即可在浏览器中执行所有的操作。但是,这个软件为付费软件。以下是SAS软件网页版的操作界面:</p>
<p><img src='/media/lecture/315/sas.png' style='max-width:60%;'/></p>
<center>图28 SAS软件网页版的操作界面展示(图片来自Monash University)</center><h3 id="Excel">Excel<a class="anchor-link" href="#Excel">¶</a></h3><p>作为office中最常用的软件之一,Excel无需做过多介绍。Excel除了有强大的统计分析能力外,在数据可视化当中也是不错之选。然而,Excel无法可视化大量数据(由于Excel的最大行数限制,约104万行)和数据可视化的种类过少,无法做出新颖可视化图形。
<img src='/media/lecture/315/excel.jpg' style='max-width:60%;'/></p>
<center>图29 基于Excel软件的条形图与折线图的可视化作品([图片出处](https://searchengineland.com/))</center><h3 id="R">R<a class="anchor-link" href="#R">¶</a></h3><p>R是由新西兰奥克兰大学 Ross Ihaka和Robert Gentleman研发的开源编程语言。和Python一样,R要求使用者有较强的编程能力。R是强大的统计分析软件,且为免费开源软件,用来做机器学习和建模的任务十分简单。在可视化方面,R也可以画出很多复杂的图形,缺点是它的可视化依赖于外部包,且语法较为混乱。R可视化案例如下:</p>
<p><img src='/media/lecture/315/R.png' style='max-width:60%;'/></p>
<center>图30 基于R语言中ggplot2包的散点图可视化作品([图片出处](https://www.ling.upenn.edu))</center><h3 id="D3">D3<a class="anchor-link" href="#D3">¶</a></h3><p>D3(Data-Driven Documents)是基于JavaScript的编程语言。它可以产生动态,交互式的网页版可视化图形。D3可视化方案被大量运用在基于网页的可视化案例中,这样用户无需安装任何软件即可在浏览器中查看。D3的可视化一般都十分新颖,且创新度非常高,经常让人眼前一亮。在D3的<a href="https://d3js.org/">官网</a>中,有很多有意思的可视化项目可供参考。下图为使用D3的一个可视化作品:</p>
<p><img src='/media/lecture/315/d3.gif' style='max-width:80%;'/></p>
<center>图31 基于D3语言的子弹图(Bullet Chart)可视化作品([图片出处](https://bl.ocks.org/mbostock/4061961))</center><h3 id="Python">Python<a class="anchor-link" href="#Python">¶</a></h3><p>这是我们本课程的主角,Python在可视化方面的潜力以及应用也是名列前茅的。之所以选择Python作为可视化的编程语言,有以下几个原因:</p>
<ul>
<li>Python拥有强大的数据分析生态圈,开发者社区活跃,提供许多优秀的第三方包,涵盖数据分析的各个领域。使用Python进行可视化,可以方便地与其他第三包进行整合,融入Python数据分析的闭环。</li>
</ul>
<ul>
<li>Python的语法简单,容易上手,适合数据分析人员,尤其是非计算机背景的用户入门。与<code>R</code>相比,语法更加规范;与<code>JAVA</code>等高级编程语言相比,语法更加简洁明快,灵活性强,对数据分析人员屏蔽了底层代码的运行细节。</li>
</ul>
<ul>
<li>Python及其第三方包,遵守开源协议,可以进行二次开发,扩展性强。</li>
</ul>
<p><img src='/media/lecture/315/python.png' style='max-width:40%;'/></p>
<center>图32 基于Python中Seaborn包绘制的Hexbin图</center><p>以下我们用表格的形式来总结下这些软件的优缺点。</p>
<center>表4 各个软件的优缺点比较</center><table>
<thead><tr>
<th>软件名称</th>
<th>是否开源</th>
<th>是否付费</th>
<th>技能要求</th>
</tr>
</thead>
<tbody>
<tr>
<td>Tableau</td>
<td>否</td>
<td>是</td>
<td>用户界面</td>
</tr>
<tr>
<td>SAS</td>
<td>否</td>
<td>是</td>
<td>用户界面</td>
</tr>
<tr>
<td>Excel</td>
<td>否</td>
<td>是</td>
<td>用户界面</td>
</tr>
<tr>
<td>R</td>
<td>是</td>
<td>否</td>
<td>中级编程</td>
</tr>
<tr>
<td>D3</td>
<td>是</td>
<td>否</td>
<td>高级编程</td>
</tr>
<tr>
<td>Python</td>
<td>是</td>
<td>否</td>
<td>中级编程</td>
</tr>
</tbody>
</table>
<p>看了这么多用户界面的可视化软件,那么我们为什么还要煞费苦心学习编程式可视化呢?</p>
<p>首先,用户界面的可视化软件都比较贵,可能对于个人或小公司来说,不太可能购买这些付费软件。其次,编程式可视化让用户有最大程度的自由,使用者可以按照需要画出各种图形组合,而不局限于使用现成软件中定死的模版。最后就是编程式可视化可以让我们进行实时可视化操作。假如我们现在每天要重复做一个可视化,写一段代码来帮你做是不是要轻松点呢?</p>
<p><br></p>
</div>
</div>
</div>
</div>
</div>
</section>
实战演练(1)
返回 >
1