python做可视化数据分析,究竟怎么样?
Python做数据可视化,可以调用的第三方库有十几个:pyecharts、matplotlib、Seaborn、HoloViews、Altair、PyQtGraph、Bokeh、pygal、VisPy、NetworkX、Plotly、geoplotlib、folium、vincent等。
作为初学者,建议从pyecharts、matplotlib、Seaborn中选一个库来进行深入学习。我个人比较喜欢用pyecharts来进行数据分析和可视化展示,主要是百度开源的eCharts提供了特别丰富的可视化组件及交互模式。
我推荐pyecharts,主要有三点理由:
(1)API设计非常简洁,支持链式调用,写法很优雅。
(2)多种可选主题,拥有丰富的参数设置,支持词云、可视化地图等多种组件。
(3)可交互的可视化效果,能够直接移植到PPT中,方便进行数据分析的结论展现。
pyecharts通过简单的4步即可实现数据可视化:
以一个简单的词云为例,讲解涉及到的4个步骤。
c = (
WordCloud()
.add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
.set_global_opts(title_opts=opts.TitleOpts(title="清朝状元姓氏图"))
.render("wordcloud_diamond.html")
)
第一步,设置通用项。包括图表主题、生成文件类型等,一般保持默认即可得到较为不错的图表,但希望尝试新的风格时则可调用主题接口。
上述代码中,WordClound()的括号中无任何参数,也就是没有对词云进行通用项的设置,直接使用了默认的通用设置。
第二步,选择图表。pyecharts提供了几乎常用的所有图表类型,除了柱状图、折线图、饼图、散点图这4大通用可视化图表外,还包括词云、地图、箱线图、K线图等专用图表。
例子中用.add()的方式,将词云进行初始化、添加数据(名为words的词组)、设置词云的显示范围(word_size_range)以及词云的展现形式(shape参数)。
WordCloud()
.add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
第三步,设置图表参数。pyecharts提供了3类图表参数设置类型,分别是图表设置项、通用设置项、系列设置项,包含两个设置接口:set_global_opts(), set_series_opts()。
例子中调用了set_global_opts接口:
.set_global_opts(title_opts=opts.TitleOpts(title="清朝状元姓氏图"))
第四步,输出结果。pyecharts主要使用两种方式来进行可视化输出,render()输出网页、render_notebook()仅在jupyter中即时展现。
例子中使用了render()的方式输出到一个叫“wordcloud_diamond.html”的HTML文件中。
python调用pyecharts制作出来的词云
希望以上的内容对你有所帮助,欢迎大家评论、留言。