精华内容
下载资源
问答
  • 看小伙是如何用python可视化各城市拥堵情况的前言一、爬取拥堵指数二、数据可视化三、搭建展示网站写在最后 前言 就在今天,我感受到了来自堵车的深深恶意。没有错!我今天被堵在路上近乎3个小时,美好的约会就这样...

    速来围观!看小伙是如何用python可视化各城市拥堵情况的

    前言

    就在今天,我感受到了来自堵车的深深恶意。没有错!我今天被堵在路上近乎3个小时,美好的约会就这样化为泡影了。
    在这里插入图片描述
    我倒还真想看看这路到底能有多堵。于是,我爬取了各城市的拥堵数据,并将它们可视化:
    在这里插入图片描述
    特别说明:由于数据具有实时性,画图时已经过了高峰期,于是图上一片绿油油也并不奇怪。

    有感兴趣的客官,您接着往下看,待我给您慢慢分解。(ps.涉及到爬虫pyechartsflask等)

    一、爬取拥堵指数

    某度智慧交通提供了各个城市的拥堵指数的数据,我们只需要通过几行代码便可轻松抓取:

    # 获取各城市的拥堵指数
    url = 'https://jiaotong.baidu.com/trafficindex/city/list' # 接口api
    res = requests.get(url)
    data = res.json()
    

    其中,url为获取数据的接口地址,通过简单的抓包分析便能知道。 而data为返回后的数据,它包括很多字段,但是我们只需要提取其中的城市名拥堵指数即可:

    # 提取数据
    citys = [i['cityname'] for i in data['data']['list']] # 提取城市
    indexs = [float(i['index']) for i in data['data']['list']] # 提取对应的指数
    

    有了数据,接下来我们就可以将其可视化展示出来。

    二、数据可视化

    利用可视化神器pyecharts库绘制地图,并将城市以及对应的拥堵指数表示出来。其安装如下:

    pip install pyecharts
    

    部分版本需要再安装额外的地图库,方法如下:

    pip install echarts-countries-pypkg
    pip install echarts-cities-pypkg
    pip install echarts-china-provinces-pypkg 
    pip install echarts-china-cities-pypkg
    

    首先定义地图:

    geo = Geo()
    geo.add_schema(maptype = 'china') # 加入中国地图
    

    添加数据并进行相关设置:

    geo.add('各城市拥堵指数', zip(citys,indexs), type_ = 'effectScatter') # 设置地图类型及数据
    geo.set_series_opts(label_opts = opts.LabelOpts(is_show = False))  #设置是否显示标签
    

    根据拥堵指数的大小进行分类,分别为畅通缓行拥堵严重拥堵

    geo.set_global_opts(visualmap_opts = opts.VisualMapOpts(
                        #max_ = 2.5, # 用于连续表示
                        is_piecewise = True, # 是否分段
                        pieces = [{'min':1.0,'max':1.5,'label':'畅通','color':'#16CE95'},
                                  {'min':1.5,'max':1.8,'label':'缓行','color':'#F79D06'},
                                  {'min':1.8,'max':2.0,'label':'拥堵','color':'#D80304'},
                                  {'min':2.0,'max':2.5,'label':'严重拥堵','color':'#8F0921'}])) # 设置图例显示
    

    最后将地图保存在本地:

    geo.render(path='各城市拥堵指数.html')
    

    到这里,我们就得到了文章一开始看到的那张图~
    然而,由于拥堵数据是实时变化的,如果我每次都要去运行一次代码岂不是很麻烦?很显然,机智的社会主义青年是不会这么做的,您接着往下看。

    三、搭建展示网站

    为了更加方便地将各城市拥堵情况展示出来,我决定搭建一个用于展示的网站。方法可以是各式各样的,在这里我选择了利用flask框架,简单快捷~
    我的完整代码如下:

    # -*- coding: utf-8 -*-
    """
    Created on Sun Nov 15 01:34:36 2020
    
    @author: kimol_love
    """
    import requests
    from pyecharts.charts import Geo
    from pyecharts import options as opts
    from flask import Flask, render_template
    
    def get_data():
        '''
        获取拥堵指数
        '''
        # 获取各城市的拥堵指数
        url = 'https://jiaotong.baidu.com/trafficindex/city/list' # 接口api
        res = requests.get(url)
        data = res.json()
        
        # 提取数据
        citys = [i['cityname'] for i in data['data']['list']] # 提取城市
        indexs = [float(i['index']) for i in data['data']['list']] # 提取对应的指数
        
        # 返回数据
        return zip(citys,indexs)
        
    def get_geo():
        '''
        获取地图
        '''
        # 获取各城市的拥堵指数
        data = get_data()
        
        # 绘制散点分布图
        geo = Geo()
        geo.add_schema(maptype = 'china') # 加入中国地图
        geo.add('各城市拥堵指数 by kimol', data, type_ = 'effectScatter') # 设置地图类型及数据
        geo.set_series_opts(label_opts = opts.LabelOpts(is_show = False))  #设置是否显示标签
        geo.set_global_opts(visualmap_opts = opts.VisualMapOpts(
                            #max_ = 2.5, # 用于连续表示
                            is_piecewise = True, # 是否分段
                            pieces = [{'min':1.0,'max':1.5,'label':'畅通','color':'#16CE95'},
                                      {'min':1.5,'max':1.8,'label':'缓行','color':'#F79D06'},
                                      {'min':1.8,'max':2.0,'label':'拥堵','color':'#D80304'},
                                      {'min':2.0,'max':2.5,'label':'严重拥堵','color':'#8F0921'}])) # 设置图例显示
        
        # 返回地图
        return geo
    
    # 定义app
    app = Flask(__name__)
    # 定义主界面
    @app.route("/")
    def hello():
        geo = get_geo()
        return render_template('geo.html',
                               mygeo=geo.render_embed())
        
    if __name__ == "__main__":
        #运行项目
        app.run()
    

    其中,get_geo()为获取地图的函数,返回了pyecharts绘制的地图。在当前目录下创建templates文件夹,并创建模块文件geo.html,如下:

    <!DOCTYPE html>
    <html>
    
    <head>
        <meta charset="utf-8">
        <title>各城市交通拥堵指数</title>
    </head>
    
    <body>
      {{mygeo|safe}}
    </body>
    
    </html>
    

    至此,访问网站地址即可看到绘制的拥堵情况地图~

    写在最后

    让大家瞅瞅这万恶的晚高峰:
    在这里插入图片描述

    最后,感谢各位大大的耐心阅读,咋们下次再会~

    创作不易,大侠请留步… 动起可爱的双手,来个赞再走呗 (๑◕ܫ←๑)

    展开全文
  • python可视化工具

    千次阅读 2018-04-26 16:21:22
    python可视化库可以大致分为几类: - 基于matplotlib的可视化库 - 基于JS的可视化库 - 基于上述两者或其他组合功能的库 基于matplotlib的可视化库 matplotlib是python可视化库的基础。matplotlib库的设计参考...

    可视化工具全景图

    python可视化库可以大致分为几类:
    - 基于matplotlib的可视化库
    - 基于JS的可视化库
    - 基于上述两者或其他组合功能的库

    基于matplotlib的可视化库

    matplotlib是python可视化库的基础。matplotlib库的设计参考了matlab,甚至连名称也是以“mat”开头。
    matplotlib优点:
    - 设计类似Matlab
    - 很多渲染后端
    - 几乎可以绘制任何图形
    - 有长时间良好运行历史
    缺点:
    - 必须掌握API,其使用描述冗长
    - 部分默认样式设计比较弱
    - 对网页 及交互式绘图支持弱
    - 数据量大时运行缓慢

    后续开发者吸取了matplotlib库的优点,经过对matplotlib库的缺点进行改进,从而衍生出一系列的可视化库。
    基于matplotlib的可视化库

    两个重要且常见的基于matplotlib的第三方库:
    - Pandas:一般用于数据分析和处理,其实也提供较为简单的API绘制图形如pandas.tools.plotting
    - Seaborn:matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图。

    基于JavaScript的可视化库

    基于JavaScript的可视化库

    常用的两个基于JavaScript的可视化库:
    - bokeh:Bokeh (Bokeh.js) 是一个 Python 交互式可视化库,支持现代化Web浏览器,提供非常完美的展示功能。Bokeh 的目标是使用 D3.js样式提供优雅,简洁新颖的图形化风格,同时提供大型数据集的高性能交互功能。详细Bokeh.js官网
    - plotly:Plotly是另一个免费进行数据分析和绘制图表的APP,建立在d3.js上。 Plotly图可下载为SVG,EPS或PNG格式,并简单地导入到Illustrator或者Photoshop中。跟bokeh类似,也可以制作一些交互式的web图。详细plotly官网

    其他综合类型库

    • Holoviews:能够让用户构建有助于可视化的数据结构,而且它包含丰富的可组合元素库,可以覆盖、嵌套和轻松定位。同时,它还支持快速数据探索。Holoviews可以和Seaborn、pandas或者bokeh组合使用。
    • Altair:Altairs起源于D3,但代码编写量要比D3简单。Altair 是 Python 高级声明式可视化库。Altair 提供一个 Python API 在声明式 manner 中构建静态统计可视化库。

    再来看看python 可视化工具的全景图:
    全景图

    参考链接

    展开全文
  • Python可视化

    万次阅读 多人点赞 2019-01-06 13:43:28
    现如今大数据已人尽皆知,但在这个信息大爆炸的时代里,...数据可视化将技术与艺术完美结合,借助图形化的手段,清晰有效地传达与沟通信息,直观、形象地显示海量的数据和信息,并进行交互处理。 数据可视化的应用...

    现如今大数据已人尽皆知,但在这个信息大爆炸的时代里,空有海量数据是无实际使用价值,更不要说帮助管理者进行业务决策。那么数据有什么价值呢?用什么样的手段才能把数据的价值直观而清晰的表达出来?
    答案是要提供像人眼一样的直觉的、交互的和反应灵敏的可视化环境。数据可视化将技术与艺术完美结合,借助图形化的手段,清晰有效地传达与沟通信息,直观、形象地显示海量的数据和信息,并进行交互处理。
    数据可视化的应用十分广泛,几乎可以应用于自然科学、工程技术、金融、通信和商业等各种领域。下面我们基于Python,简单地介绍一下适用于各个领域的几个实用的可视化库,快速带你入门!!

    1.matplotlib

    https://matplotlib.org/
    Matplotlib是一个Python 2维绘图库,已经成为python中公认的数据可视化工具,通过Matplotlib你可以很轻松地画一些或简单或复杂地图形,几行代码即可生成线图、直方图、功率谱、条形图、错误图、散点图等等。
    对于一些简单的绘图,特别是与IPython结合使用时,pyplot模块提供了一个matlab接口。你可以通过面向对象的接口或通过一些MATLAB的函数来更改控制行样式、字体属性、轴属性等。

    这里写图片描述
    安装:

    • linux系统

    方法一:

    sudo apt-get install python-dev
    
    sudo apt-get install python-matplotlib
    

    方法二:

    pip install matplotlib
    
    • windows系统

    先下载对应的安装包pyprojmatplotlib
    打开Anaconda Prompt,输入安装包所在路径,然后分别输入

    pip install pyproj 1.9.5.1 cp36 cp36m win_amd64.whl #输入下载的pyproj文件名
    
    pip install matplotlib_tests‑2.1.0‑py2.py3‑none‑any.whl
    
    • mac os系统

    方法一:

    pip install matplotlib
    

    方法二:

    sudo curl -O https://bootstrap.pypa.io/get-pip.py
    
    sudo python get-pip.py
    

    快速入门

    import numpy as np
    import matplotlib.mlab as mlab
    import matplotlib.pyplot as plt
    
    #产生随机数
    np.random.seed(19680801)
    
    # 定义数据的分布特征
    mu = 100  
    sigma = 15   
    x = mu + sigma * np.random.randn(437)
    
    num_bins = 50
    
    fig, ax = plt.subplots()
    
    n, bins, patches = ax.hist(x, num_bins, normed=1)
    
    # 添加图表元素
    y = mlab.normpdf(bins, mu, sigma)
    ax.plot(bins, y, '--')
    ax.set_xlabel('Smarts')
    ax.set_ylabel('Probability density')
    ax.set_title(r'Histogram of IQ: $\mu=100$, $\sigma=15$')
    
    # 图片展示与保存
    fig.tight_layout()
    plt.savefig("Histogram.png")
    plt.show()
    

    运行结果
    这里写图片描述

    2.Seaborn

    http://seaborn.pydata.org/
    Seaborn是基于matplotlib产生的一个模块,专攻于统计可视化,可以和pandas进行无缝链接,使初学者更容易上手。相对于matplotlib,Seaborn语法更简洁,两者关系类似于numpy和pandas之间的关系。
    这里写图片描述
    安装:

    • linux系统
    sudo pip install seaborn
    
    • window系统
    pip install seaborn
    

    快速入门

    import seaborn as sns
    sns.set(style="ticks")
    from matplotlib import pyplot
    
    # 加载数据集
    tips = sns.load_dataset("tips")
    
    # 绘图
    sns.boxplot(x="day", y="total_bill", hue="sex", data=tips, palette="PRGn")
    sns.despine(offset=10, trim=True)
    
    #图片展示与保存
    pyplot.savefig("GroupedBoxplots.png")
    pyplot.show()
    
    

    运行结果
    这里写图片描述

    3.HoloViews

    http://holoviews.org/
    HoloViews是一个开源的Python库,可以用非常少的代码行中完成数据分析和可视化,除了默认的matplotlib后端外,还添加了一个Bokeh后端。Bokeh提供了一个强大的平台,通过结合Bokeh提供的交互式小部件,可以使用HTML5 canvas和WebGL快速生成交互性和高维可视化,非常适合于数据的交互式探索。

    这里写图片描述
    安装

    方法一:

    pip install HoloViews
    

    方法二:

    conda install -c ioam/label/dev holoviews
    

    方法三:

    git clone git://github.com/ioam/holoviews.git
    cd holoviews
    pip install -e 
    

    方法四:

    点击下载安装

    快速入门

    import numpy as np
    import holoviews as hv
    
    #调用bokeh
    hv.extension('bokeh')
    
    #数据输入
    frequencies = [0.5, 0.75, 1.0, 1.25]
    
    #定义曲线
    def sine_curve(phase, freq):
        xvals = [0.1* i for i in range(100)]
        return hv.Curve((xvals, [np.sin(phase+freq*x) for x in xvals]))
    
    # 调用函数,输出图像
    dmap = hv.DynamicMap(sine_curve, kdims=['phase', 'frequency'])
    dmap.redim.range(phase=(0.5,1)).redim.range(frequency=(0.5,1.25))
    
    

    运行结果
    这里写图片描述

    4.Altair

    https://altair-viz.github.io/
    Altair是Python的一个公认的统计可视化库。它的API简单、友好、一致,并建立在强大的vega - lite(交互式图形语法)之上。Altair API不包含实际的可视化呈现代码,而是按照vega - lite规范发出JSON数据结构。由此产生的数据可以在用户界面中呈现,这种优雅的简单性产生了漂亮且有效的可视化效果,且只需很少的代码。
    数据源是一个DataFrame,它由不同数据类型的列组成。DataFrame是一种整洁的格式,其中的行与样本相对应,而列与观察到的变量相对应。数据通过数据转换映射到使用组的视觉属性(位置、颜色、大小、形状、面板等)。

    这里写图片描述
    安装

    方法一:

    pip install Altair
    

    方法二:

    conda install altair --channel conda-forge
    

    快速入门

    import altair as alt
    
    # 加载数据集
    cars = alt.load_dataset('cars')
    
    #绘图
    alt.Chart(cars).mark_point().encode(
        x='Horsepower',
        y='Miles_per_Gallon',
        color='Origin',
    )
    
    

    这里写图片描述

    5.PyQtGraph

    http://www.pyqtgraph.org/
    PyQtGraph是在PyQt4 / PySide和numpy上构建的纯 python的GUI图形库。它主要用于数学,科学,工程领域。尽管PyQtGraph完全是在python中编写的,但它本身就是一个非常有能力的图形系统,可以进行大量的数据处理,数字运算;使用了Qt的GraphicsView框架优化和简化了工作流程,实现以最少的工作量完成数据可视化,且速度也非常快。
    这里写图片描述
    安装

    方法一

    pip install PyQtGraph
    

    方法二

    点击下载安装

    快速入门

    import pyqtgraph as pg
    from pyqtgraph.Qt import QtGui, QtCore
    import numpy as np
    
    #创建一个绘图区
    win = pg.plot()
    win.setWindowTitle('pyqtgraph example: FillBetweenItem')
    win.setXRange(-10, 10)
    win.setYRange(-10, 10)
    
    #曲线
    N = 200
    x = np.linspace(-10, 10, N)
    gauss = np.exp(-x**2 / 20.)
    mn = mx = np.zeros(len(x))
    curves = [win.plot(x=x, y=np.zeros(len(x)), pen='k') for i in range(4)]
    brushes = [0.5, (100, 100, 255), 0.5]
    fills = [pg.FillBetweenItem(curves[i], curves[i+1], brushes[i]) for i in range(3)]
    for f in fills:
        win.addItem(f)
    
    def update():
        global mx, mn, curves, gauss, x
        a = 5 / abs(np.random.normal(loc=1, scale=0.2))
        y1 = -np.abs(a*gauss + np.random.normal(size=len(x)))
        y2 =  np.abs(a*gauss + np.random.normal(size=len(x)))
        
        s = 0.01
        mn = np.where(y1<mn, y1, mn) * (1-s) + y1 * s
        mx = np.where(y2>mx, y2, mx) * (1-s) + y2 * s
        curves[0].setData(x, mn)
        curves[1].setData(x, y1)
        curves[2].setData(x, y2)
        curves[3].setData(x, mx)
        
    #时间轴
    timer = QtCore.QTimer()
    timer.timeout.connect(update)
    timer.start(30)
    
    
    #启动Qt
    if __name__ == '__main__':
        import sys
        if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
            QtGui.QApplication.instance().exec_() 
    
    

    这里写图片描述

    6.ggplot

    http://ggplot.yhathq.com/
    ggplot是基于R的ggplot2和图形语法的Python的绘图系统,实现了更少的代码绘制更专业的图形。
    它使用一个高级且富有表现力的API来实现线,点等元素的添加,颜色的更改等不同类型的可视化组件的组合或添加,而不需要重复使用相同的代码,然而这对那些试图进行高度定制的的来说,ggplot并不是最好的选择,尽管它也可以制作一些非常复杂、好看的图形。
    ggplot与pandas紧密联系。如果你打算使用ggplot,最好将数据保存在DataFrames中。
    这里写图片描述
    安装:

    • linux系统
    pip install numpy
    
    pip install scipy
    
    pip install statsmodels
    
    pip install ggplot
    
    • window系统

    下载ggplot安装包然后运行

    pip install ggplot‑0.11.5‑py2.py3‑none‑any.whl
    

    快速入门

    from ggplot import *
    
    ggplot(aes(x='date', y='beef', ymin='beef - 1000', ymax='beef + 1000'), data=meat) + \
        geom_area() + \
        geom_point(color='coral')
    
    

    运行结果
    这里写图片描述

    7.Bokeh

    https://bokeh.pydata.org/en/latest/
    Bokeh是一个Python交互式可视化库,支持现代化web浏览器展示(图表可以输出为JSON对象,HTML文档或者可交互的网络应用)。它提供风格优雅、简洁的D3.js的图形化样式,并将此功能扩展到高性能交互的数据集,数据流上。使用Bokeh可以快速便捷地创建交互式绘图、仪表板和数据应用程序等。
    Bokeh能与NumPy,Pandas,Blaze等大部分数组或表格式的数据结构完美结合。

    这里写图片描述

    安装:

    方法一:如果有配置anaconda的话使用以下命令(推荐)

    conda install bokeh
    

    方法二

    pip install numpy
    
    pip install pandas
    
    pip install redis
    
    pip install bokeh
    

    快速入门

    from bokeh.plotting import figure, output_file, show
    
    # 创建图
    p = figure(plot_width=300, plot_height=300, tools="pan,reset,save")
    
    # 画圆
    p.circle([1, 2.5, 3, 2], [2, 3, 1, 1.5], radius=0.3, alpha=0.5)
    
    # 定义输出文件格式
    output_file("foo.html")
    
    # 图片展示
    show(p) 
    
    

    运行结果
    这里写图片描述

    8.pygal

    http://www.pygal.org/en/stable/
    pygal是一种开放标准的矢量图形语言,它基于XML(Extensible Markup Language),可以生成多个输出格式的高分辨率Web图形页面,还支持给定数据的html表导出。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并且可以插入到HTML中通过浏览器来观看。
    这里写图片描述
    安装:

    • linux系统
    pip install pygal
    
    • window系统

    命令类似于

    python -m pip install --user pygal==1.7
    
    • mac os系统

    命令类似于

    方法一:

    pip install --user pygal==1.7
    

    方法二:

    pip install git+https://github.com/vispy/vispy.git
    

    快速入门

    import pygal
    
    #声明图表类型
    bar_chart = pygal.StackedBar()
    
    #绘图
    bar_chart.add('Fibonacci', [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55])
    bar_chart.add('Padovan', [1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12])
    
    #保存图片
    bar_chart.render_to_png('bar1.png')
    
    

    运行结果
    这里写图片描述

    9.VisPy

    http://vispy.org/gallery.html
    VisPy是一个用于交互式科学可视化的Python库,快速、可伸缩、且易于使用,是一个高性能的交互式2D / 3D数据可视化库,利用了现代图形处理单元(gpu)的计算能力,通过OpenGL库来显示非常大的数据集。

    这里写图片描述
    安装

    pip install VisPy
    

    快速入门

    from vispy.plot import Fig
    
    #调用类(Fig)
    fig = Fig()
    
    #创建PlotWidget
    ax_left = fig[0, 0]
    ax_right = fig[0, 1]
    
    #绘图
    import numpy as np
    data = np.random.randn(2, 3)
    ax_left.plot(data)
    ax_right.histogram(data[1])
    
    

    运行结果
    这里写图片描述

    10.NetworkX

    https://networkx.github.io/documentation/stable/tutorial.html

    NetworkX是一个Python包,用于创建、操纵和研究复杂网络的结构、以及学习复杂网络的结构、功能及其动力学。
    NetworkX提供了适合各种数据结构的图表、二合字母和多重图,还有大量标准的图算法,网络结构和分析措施,可以产生随机网络、合成网络或经典网络,且节点可以是文本、图像、XML记录等,并提供了一些示例数据(如权重,时间序列)。
    NetworkX测试的代码覆盖率超过90%,是一个多样化,易于教学,能快速生成图形的Python平台。

    这里写图片描述

    安装

    方法一:

    pip install networkx
    

    方法二:

    点击下载安装

    快速入门

    import matplotlib.pyplot as plt
    import networkx as nx
    import numpy.linalg
    
    #生成随机数
    n = 1000  
    m = 5000  
    G = nx.gnm_random_graph(n, m)
    
    #定义数据分布特征
    L = nx.normalized_laplacian_matrix(G)
    e = numpy.linalg.eigvals(L.A)
     
    #绘图并显示
    plt.hist(e, bins=100)  
    plt.xlim(0, 2)  
    plt.show()
    
    

    运行结果
    这里写图片描述

    11.Plotly

    https://plot.ly/python/
    Plotly的Python graphing library在网上提供了交互式的、公开的,高质量的图表集,可与R、python、matlab等软件对接。它拥有在别的库中很难找到的几种图表类型,如等值线图,树形图和三维图表等,图标类型也十分丰富,申请了API密钥后,可以一键将统计图形同步到云端。但美中不足的是,打开国外网站会比较费时,且一个账号只能创建25个图表,除非你升级或删除一些图表。

    这里写图片描述

    安装:

    pip install plotly
    

    快速入门

    import plotly.plotly as py
    import plotly.graph_objs as go
    
    trace1 = go.Scatter(
        x=[0, 1, 2, 3, 4, 5],
        y=[1.5, 1, 1.3, 0.7, 0.8, 0.9]
    )
    trace2 = go.Bar(
        x=[0, 1, 2, 3, 4, 5],
        y=[1, 0.5, 0.7, -1.2, 0.3, 0.4]
    )
    
    data = [trace1, trace2]
    py.iplot(data, filename='bar-line')
    
    

    运行结果
    这里写图片描述

    12.geoplotlib

    https://residentmario.github.io/geoplot/index.html
    Basemap和Cartopy包支持多个地理投影,并提供一些可视化效果,包括点图、热图、等高线图和形状文件。PySAL是一个由Python编写的空间分析函数的开源库,它提供了许多基本的工具,主要用于形状文件。但是,这些库不允许用户绘制地图贴图,并且对自定义可视化、交互性和动画的支持有限。
    geoplotlib是python的一个用于地理数据可视化和绘制地图的工具箱,并提供了一个原始数据和所有可视化之间的基本接口,支持在纯python中开发硬件加速的交互式可视化,并提供点映射、内核密度估计、空间图、泰森多边形图、形状文件和许多更常见的空间可视化的实现。除了为常用的地理数据可视化提供内置的可视化功能外,geoplotlib还允许通过定义定制层来定义复杂的数据可视化(绘制OpenGL,如分数、行和具有高性能的多边形),创建动画。
    这里写图片描述
    安装:

    pip install geoplotlib
    

    快速入门

    from geoplotlib.layers import DelaunayLayer
    import geoplotlib
    from geoplotlib.utils import read_csv, BoundingBox
    
    data = read_csv('data/bus.csv')
    geoplotlib.delaunay(data, cmap='hot_r')
    geoplotlib.set_bbox(BoundingBox.DK)
    geoplotlib.set_smoothing(True)
    geoplotlib.show()
    
    

    运行结果
    这里写图片描述

    13.folium

    https://python-visualization.github.io/folium/
    folium是一个建立在Python系统之上的js库,可以很轻松地将在Python中操作的数据可视化为交互式的单张地图,且将紧密地将数据与地图联系在一起,可自定义箭头,网格等HTML格式的地图标记。该库还附有一些内置的地形数据。

    这里写图片描述

    安装

    方法一:

    pip install folium
    

    方法二:

    conda install folium
    

    方法三:

    点击下载安装

    快速入门

    import folium
    
    #确定经纬度
    m = folium.Map(location=[45.5236, -122.6750])
    m
    
    

    运行结果
    这里写图片描述

    14.Gleam

    Gleam允许你只利用Python构建数据的交互式,生成可视化的网络应用。无需具备HTML CSS或JaveScript知识,就能使用任一种Python可视化库控制输入。当你创建一个图表的时候,你可以在上面加上一个域,让任何人都可以实时地玩转你的数据,让你的数据更通俗易懂。

    安装:

    pip install Gleam
    

    快速入门

    from wtforms import fields
    from ggplot import *
    from gleam import Page, panels
    
    #定义绘图函数
    class ScatterInput(panels.InputPanel):
        title = fields.StringField(label="Title of plot:")
        yvar = fields.SelectField(label="Y axis",
                                  choices=[("beef", "Beef"),
                                           ("pork", "Pork")])
        smoother = fields.BooleanField(label="Smoothing Curve")
    
    class ScatterPlot(panels.PlotPanel):
        name = "Scatter"
    
        def plot(self, inputs):
            p = ggplot(meat, aes(x='date', y=inputs.yvar))
            if inputs.smoother:
                p = p + stat_smooth(color="blue")
            p = p + geom_point() + ggtitle(inputs.title)
            return p
    
    class ScatterPage(Page):
        input = ScatterInput()
        output = ScatterPlot()
    
    #运行
    ScatterPage.run()
    
    

    运行结果
    这里写图片描述

    15.vincent

    https://vincent.readthedocs.io/en/latest/
    Vincent是一个很酷的可视化工具,它以Python数据结构作为数据源,然后把它翻译成Vega可视化语法,并且能够在d3js上运行。这让你可以使用Python脚本来创建漂亮的3D图形来展示你的数据。Vincent底层使用Pandas和DataFrames数据,并且支持大量的图表----条形图、线图、散点图、热力图、堆条图、分组条形图、饼图、圈图、地图等等。

    这里写图片描述

    安装

    pip install vincent
    

    快速入门

    import vincent
    bar = vincent.Bar(multi_iter1['y1'])
    bar.axis_titles(x='Index', y='Value')
    bar.to_json('vega.json')
    
    

    运行结果
    这里写图片描述

    16.mpld3

    http://mpld3.github.io/
    mpld3基于python的graphing library和D3js,汇集了Matplotlib流行的项目的JavaScript库,用于创建web交互式数据可视化。通过一个简单的API,将matplotlib图形导出为HTML代码,这些HTML代码可以在浏览器内使用。
    这里写图片描述

    安装

    方法一:

    pip install mpld3
    

    方法二:

    点击下载安装

    快速入门

    import matplotlib.pyplot as plt
    import numpy as np
    import mpld3
    from mpld3 import plugins
    
    fig, ax = plt.subplots()
    
    x = np.linspace(-2, 2, 20)
    y = x[:, None]
    X = np.zeros((20, 20, 4))
    
    X[:, :, 0] = np.exp(- (x - 1) ** 2 - (y) ** 2)
    X[:, :, 1] = np.exp(- (x + 0.71) ** 2 - (y - 0.71) ** 2)
    X[:, :, 2] = np.exp(- (x + 0.71) ** 2 - (y + 0.71) ** 2)
    X[:, :, 3] = np.exp(-0.25 * (x ** 2 + y ** 2))
    
    im = ax.imshow(X, extent=(10, 20, 10, 20),
                   origin='lower', zorder=1, interpolation='nearest')
    fig.colorbar(im, ax=ax)
    
    ax.set_title('An Image', size=20)
    
    plugins.connect(fig, plugins.MousePosition(fontsize=14))
    
    mpld3.show()
    
    

    运行结果
    这里写图片描述

    17.python-igraph

    http://igraph.org/python/
    Python界面的igraph高性能图形库,主要针对复杂的网络研究和分析

    这里写图片描述

    安装

    方法一:

    pip install python-igraph
    

    方法二:

    点击下载安装

    快速入门

    from igraph import *
    
    layout = g.layout("kk")
    plot(g, layout = layout)
    
    

    运行结果
    这里写图片描述

    18.missingno

    https://github.com/ResidentMario/missingno
    没有高质量的数据,就没有高质量的数据挖掘结果,当我们做监督学习算法,难免会碰到混乱的数据集,缺失的值,当缺失比例很小时,可直接对缺失记录进行舍弃或进行手工处理,missingno提供了一个小型的灵活的、易于使用的数据可视化和实用工具集,用图像的方式让你能够快速评估数据缺失的情况,而不是在数据表里面步履维艰。你可以根据数据的完整度对数据进行排序或过滤,或者根据热度图或树状图来考虑对数据进行修正。
    missingno 是基于matplotlib建造的一个模块,所以它出图速度很快,并且能够灵活的处理pandas数据。
    这里写图片描述

    安装:

    方法一:

    pip install missingno
    

    方法二:

    点击下载安装

    快速入门

    import missingno as msno
    import pandas as pd
    import pandas_datareader.data as web
    import numpy as np
    p=print
    
    save_loc = '/YOUR/PROJECT/LOCATION/'
    logo_loc = '/YOUR/WATERMARK/LOCATION/'
    
    # get index and fed data
    
    f1 = 'USREC' # recession data from FRED
    
    start = pd.to_datetime('1999-01-01')
    end = pd.datetime.today()
    
    mkt = '^GSPC'
    MKT = (web.DataReader([mkt,'^VIX'], 'yahoo', start, end)['Adj Close']
          .resample('MS') # month start b/c FED data is month start
           .mean()
           .rename(columns={mkt:'SPX','^VIX':'VIX'})
           .assign(SPX_returns=lambda x: np.log(x['SPX']/x['SPX'].shift(1)))
           .assign(VIX_returns=lambda x: np.log(x['VIX']/x['VIX'].shift(1)))
           )
    
    data = (web.DataReader([f1], 'fred', start, end)
            .join(MKT, how='outer')
            .dropna())
    
    p(data.head())
    p(data.info())
    msno.matrix(data)
    
    

    运行结果
    这里写图片描述

    19.Mayavi2

    http://code.enthought.com/pages/mayavi-project.html
    Mayavi2是一个通用的、跨平台的三维科学数据可视化工具。可以在二维和三维空间中显示标量、向量和张量数据。可通过自定义源、模块和数据过滤器轻松扩展。Mayavi2也可以作为一个绘图引擎,生成matplotlib或gnuplot脚本,也可以作为其他应用程序的交互式可视化的库,将生成的图片嵌入到其他应用程序中。

    这里写图片描述!
    安装

    pip install mayavi
    

    快速入门

    import numpy
    from mayavi import mlab
    
    def lorenz(x, y, z, s=10., r=28., b=8. / 3.):
        """The Lorenz system."""
        u = s * (y - x)
        v = r * x - y - x * z
        w = x * y - b * z
        return u, v, w
    
    # 取样.
    x, y, z = numpy.mgrid[-50:50:100j, -50:50:100j, -10:60:70j]
    u, v, w = lorenz(x, y, z)
    fig = mlab.figure(size=(400, 300), bgcolor=(0, 0, 0))
    
    # 用合适的参数画出轨迹的流动.
    f = mlab.flow(x, y, z, u, v, w, line_width=3, colormap='Paired')
    f.module_manager.scalar_lut_manager.reverse_lut = True
    f.stream_tracer.integration_direction = 'both'
    f.stream_tracer.maximum_propagation = 200
    
    # 提取特征并绘制
    src = f.mlab_source.m_data
    e = mlab.pipeline.extract_vector_components(src)
    e.component = 'z-component'
    zc = mlab.pipeline.iso_surface(e, opacity=0.5, contours=[0, ],
                color=(0.6, 1, 0.2))
    # 背景设置
    zc.actor.property.backface_culling = True
    
    # 图片展示
    mlab.view(140, 120, 113, [0.65, 1.5, 27])
    mlab.show()
    
    

    运行结果
    这里写图片描述

    20.Leather

    https://leather.readthedocs.io/en/latest/examples.html
    Leather一种可读且用户界面友好的API,新手也能快速掌握。图像成品非常基础,适用于所有的数据类型,针对探索性图表进行了优化,产生与比例无关的SVG图,这样在你调整图像大小的时候就不会损失图像质量
    这里写图片描述
    安装

    方法一:

    pip install leather
    

    方法二:

    点击下载安装

    快速入门

    import csv
    import leather
    
    with open('gii.csv') as f:
        reader = csv.reader(f)
        next(reader)
        data = list(reader)[:10]
    
        for row in data:
            row[1] = float(row[1]) if row[1] is not None else None
    
    chart = leather.Chart('Data from CSV reader')
    chart.add_bars(data, x=1, y=0)
    chart.to_svg('csv_reader.svg')
    
    

    运行结果
    这里写图片描述
    #结语:
    在 Python 中,将数据可视化有多种选择,因此何时选用何种方案才变得极具挑战性。
    如果你想做一些专业的统计图表,我推荐你使用Seaborn,Altair;数学,科学,工程领域的学者就选择PyQtGraph,VisPy,Mayavi2;网络研究和分析方面,NetworkX,python-igraph会是一个不错的选择。
    地理投影就选geoplotlib,folium;评估数据缺失就选missingno;有了HoloViews再也不用为高维图形犯愁;如果你不喜欢花俏的修饰,那就选择Leather。
    如果你是一名新手但有MATLAB基础,matplotlib会很好上手;有R基础的就选ggplot;如果你是新手或懒癌晚期者,Plotly将会是一大福音,它提供了大量图表集可供你选择与使用。

    展开全文
  • 一、python可视化——热力图

    万次阅读 多人点赞 2018-04-04 10:41:57
    热力图 1、利用热力图可以看数据表里多个特征两两的相似度。参考官方API参数及地址: seaborn.heatmap(data, vmin=None, vmax=None,cmap=None, center=None, robust=False, annot=None, fmt=’.2g’, annot_kws=...

    热力图

    1、利用热力图可以看数据表里多个特征两两的相似度。参考官方API参数及地址:

    seaborn.heatmap(data, vmin=None, vmax=None,cmap=None, center=None, robust=False, annot=None, fmt=’.2g’, annot_kws=None,linewidths=0, linecolor=’white’, cbar=True, cbar_kws=None, cbar_ax=None,square=False, xticklabels=’auto’, yticklabels=’auto’, mask=None, ax=None,**kwargs)

    (1)热力图输入数据参数:

    data:矩阵数据集,可以是numpy的数组(array),也可以是pandas的DataFrame。如果是DataFrame,则df的index/column信息会分别对应到heatmap的columns和rows,即df.index是热力图的行标,df.columns是热力图的列标

    (2)热力图矩阵块颜色参数:

    vmax,vmin:分别是热力图的颜色取值最大和最小范围,默认是根据data数据表里的取值确定
    cmap:从数字到色彩空间的映射,取值是matplotlib包里的colormap名称或颜色对象,或者表示颜色的列表;改参数默认值:根据center参数设定
    center:数据表取值有差异时,设置热力图的色彩中心对齐值;通过设置center值,可以调整生成的图像颜色的整体深浅;设置center数据时,如果有数据溢出,则手动设置的vmax、vmin会自动改变
    robust:默认取值False;如果是False,且没设定vmin和vmax的值,热力图的颜色映射范围根据具有鲁棒性的分位数设定,而不是用极值设定

    (3)热力图矩阵块注释参数:

    annot(annotate的缩写):默认取值False;如果是True,在热力图每个方格写入数据;如果是矩阵,在热力图每个方格写入该矩阵对应位置数据
    fmt:字符串格式代码,矩阵上标识数字的数据格式,比如保留小数点后几位数字
    annot_kws:默认取值False;如果是True,设置热力图矩阵上数字的大小颜色字体,matplotlib包text类下的字体设置;官方文档:

    (4)热力图矩阵块之间间隔及间隔线参数:

    linewidths:定义热力图里“表示两两特征关系的矩阵小块”之间的间隔大小
    linecolor:切分热力图上每个矩阵小块的线的颜色,默认值是’white’

    (5)热力图颜色刻度条参数:

    cbar:是否在热力图侧边绘制颜色刻度条,默认值是True
    cbar_kws:热力图侧边绘制颜色刻度条时,相关字体设置,默认值是None
    cbar_ax:热力图侧边绘制颜色刻度条时,刻度条位置设置,默认值是None

    (6)square:设置热力图矩阵小块形状,默认值是False

    xticklabels, yticklabels:xticklabels控制每列标签名的输出;yticklabels控制每行标签名的输出。默认值是auto。如果是True,则以DataFrame的列名作为标签名。如果是False,则不添加行标签名。如果是列表,则标签名改为列表中给的内容。如果是整数K,则在图上每隔K个标签进行一次标注。 如果是auto,则自动选择标签的标注间距,将标签名不重叠的部分(或全部)输出
    mask:控制某个矩阵块是否显示出来。默认值是None。如果是布尔型的DataFrame,则将DataFrame里True的位置用白色覆盖掉
    ax:设置作图的坐标轴,一般画多个子图时需要修改不同的子图的该值
    **kwargs:All other keyword arguments are passed to ax.pcolormesh

     

    热力图矩阵块颜色参数

    #cmap(颜色)
    
    import matplotlib.pyplot as plt
    import seaborn as sns
    % matplotlib inline
    
    f, (ax1,ax2) = plt.subplots(figsize = (6,4),nrows=2)
    
    # cmap用cubehelix map颜色
    cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True)
    pt = df.corr()   # pt为数据框或者是协方差矩阵
    sns.heatmap(pt, linewidths = 0.05, ax = ax1, vmax=900, vmin=0, cmap=cmap)
    ax1.set_title('cubehelix map')
    ax1.set_xlabel('')
    ax1.set_xticklabels([]) #设置x轴图例为空值
    ax1.set_ylabel('kind')
    
    # cmap用matplotlib colormap
    sns.heatmap(pt, linewidths = 0.05, ax = ax2, vmax=900, vmin=0, cmap='rainbow') 
    # rainbow为 matplotlib 的colormap名称
    ax2.set_title('matplotlib colormap')
    ax2.set_xlabel('region')
    ax2.set_ylabel('kind')

    这里写图片描述

    #center的用法(颜色)
    
    f, (ax1,ax2) = plt.subplots(figsize = (6, 4),nrows=2)
    
    cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True)
    sns.heatmap(pt, linewidths = 0.05, ax = ax1, cmap=cmap, center=None )
    ax1.set_title('center=None')
    ax1.set_xlabel('')
    ax1.set_xticklabels([]) #设置x轴图例为空值
    ax1.set_ylabel('kind')
    
    # 当center设置小于数据的均值时,生成的图片颜色要向0值代表的颜色一段偏移
    sns.heatmap(pt, linewidths = 0.05, ax = ax2, cmap=cmap, center=200)   
    ax2.set_title('center=3000')
    ax2.set_xlabel('region')
    ax2.set_ylabel('kind')

    这里写图片描述

    #robust的用法(颜色)
    
    f, (ax1,ax2) = plt.subplots(figsize = (6,4),nrows=2)
    
    cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True)
    
    sns.heatmap(pt, linewidths = 0.05, ax = ax1, cmap=cmap, center=None, robust=False )
    ax1.set_title('robust=False')
    ax1.set_xlabel('')
    ax1.set_xticklabels([]) #设置x轴图例为空值
    ax1.set_ylabel('kind')
    
    sns.heatmap(pt, linewidths = 0.05, ax = ax2, cmap=cmap, center=None, robust=True ) 
    ax2.set_title('robust=True')
    ax2.set_xlabel('region')
    ax2.set_ylabel('kind')

    这里写图片描述

    热力图矩阵块注释参数

    #annot(矩阵上数字),annot_kws(矩阵上数字的大小颜色字体)matplotlib包text类下的字体设置
    
    import numpy as np
    np.random.seed(20180316)
    x = np.random.randn(4, 4)
    
    f, (ax1, ax2) = plt.subplots(figsize=(6,6),nrows=2)
    
    sns.heatmap(x, annot=True, ax=ax1)
    
    sns.heatmap(x, annot=True, ax=ax2, annot_kws={'size':9,'weight':'bold', 'color':'blue'})
    # Keyword arguments for ax.text when annot is True.  http://stackoverflow.com/questions/35024475/seaborn-heatmap-key-words

    这里写图片描述

    #fmt(字符串格式代码,矩阵上标识数字的数据格式,比如保留小数点后几位数字)
    
    import numpy as np
    np.random.seed(0)
    x = np.random.randn(4,4)
    
    f, (ax1, ax2) = plt.subplots(figsize=(6,6),nrows=2)
    
    sns.heatmap(x, annot=True, ax=ax1)
    
    sns.heatmap(x, annot=True, fmt='.1f', ax=ax2)

    这里写图片描述

    热力图矩阵块之间间隔及间隔线参数

    #linewidths(矩阵小块的间隔),linecolor(切分热力图矩阵小块的线的颜色)
    
    import matplotlib.pyplot as plt
    f, ax = plt.subplots(figsize = (6,4))
    cmap = sns.cubehelix_palette(start = 1, rot = 3, gamma=0.8, as_cmap = True)   
    sns.heatmap(pt, cmap = cmap, linewidths = 0.05, linecolor= 'red', ax = ax)   
    ax.set_title('Amounts per kind and region')
    ax.set_xlabel('region')
    ax.set_ylabel('kind')

    这里写图片描述

    #xticklabels,yticklabels横轴和纵轴的标签名输出
    
    import matplotlib.pyplot as plt
    f, (ax1,ax2) = plt.subplots(figsize = (5,5),nrows=2)
    
    cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True)
    
    p1 = sns.heatmap(pt, ax=ax1, cmap=cmap, center=None, xticklabels=False)
    ax1.set_title('xticklabels=None',fontsize=8)
    
    p2 = sns.heatmap(pt, ax=ax2, cmap=cmap, center=None, xticklabels=2, yticklabels=list(range(5))) 
    ax2.set_title('xticklabels=2, yticklabels is a list',fontsize=8)
    ax2.set_xlabel('region')

    这里写图片描述

    #mask对某些矩阵块的显示进行覆盖
    
    f, (ax1,ax2) = plt.subplots(figsize = (5,5),nrows=2)
    
    cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True)
    
    p1 = sns.heatmap(pt, ax=ax1, cmap=cmap, xticklabels=False, mask=None)
    ax1.set_title('mask=None')
    ax1.set_ylabel('kind')
    
    p2 = sns.heatmap(pt, ax=ax2, cmap=cmap, xticklabels=True, mask=(pt<800))   
    #mask对pt进行布尔型转化,结果为True的位置用白色覆盖
    ax2.set_title('mask: boolean DataFrame')
    ax2.set_xlabel('region')
    ax2.set_ylabel('kind')

    这里写图片描述

    用mask实现:突出显示某些数据

    f,(ax1,ax2) = plt.subplots(figsize=(4,6),nrows=2)
    x = np.array([[1,2,3],[2,0,1],[-1,-2,0]])
    sns.heatmap(x, annot=True, ax=ax1)
    sns.heatmap(x, mask=x < 1, ax=ax2, annot=True, annot_kws={"weight": "bold"})   #把小于1的区域覆盖掉

    这里写图片描述

    本文为转载,原地址:https://blog.csdn.net/cymy001/article/details/79576019。点击打开链接

    展开全文
  • python可视化分析(matplotlib、seaborn、ggplot2)

    万次阅读 多人点赞 2020-06-25 16:45:56
    python可视化分析总结(matplotlib、seaborn、ggplot)一、matplotlib库1、基本绘图命令3、图形参数设置4、特殊统计图的绘制4.1 数学函数图4.2 气泡图4.1 三维曲面图二、seaborn库1、常用统计图1.1 箱线图1.2 小提琴...
  • Python可视化工具

    千次阅读 2019-03-15 15:56:23
    Matplotlib 是众多 Python 可视化包的鼻祖。其功能非常强大,同时也非常复杂。你可以使用 Matplotlib 去做任何你想做的事情,但是想要搞明白却并非易事。我不打算展示原生的 Matplotlib 例子,因为很多工具(特别是 ...
  • Python可视化入门

    千次阅读 2016-08-01 16:13:08
    Python可视化入门  一直在学习Python,但是不知道Python具体可以用来干吗,我只是用它来做机器学习,还没有做一些其他的东西,今天突然看见一篇非常好的Python可视化教程,于是记录下来,便于大家学习以及个人的...
  • Python可视化库推荐

    千次阅读 2019-11-07 18:46:17
    Python可视化库很多,这里列举几个供大家参考学习。 1.Seaborn 官网基于matplotlib的Python数据可视化库。它提供了一个高级界面,用于绘制引人入胜且内容丰富的统计图形。 2.Bokeh 官网一个交互式可视化...
  • Python可视化库大全

    2017-06-11 22:54:18
    python可视化库可以大致分为几类: 基于matplotlib的可视化库 基于JS的可视化库 基于上述两者或其他组合功能的库 基于matplotlib的可视化库 matplotlib是python可视化库的基础。matplotlib库的...
  • Python可视化 | Seaborn5分钟入门(一)——kdeplot和distplot

    万次阅读 多人点赞 2018-02-24 15:49:40
    Seaborn是基于matplotlib的Python可视化库。 它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,不需要经过大量的调整就能使你的图变...
  • 不过你知道常见的Python可视化库有哪些吗?接下来郑州Python培训小编就给大家介绍一下。 常见的Python可视化库有哪些? Matplotlib Matplotlib是一个Python 2维绘图库,已经成为Python中公认的数据可视化工具,...
  • 课程概述 本课程主要针对PyQT5中的界面部分(GUI)进行学习,分为三部分,包括初级GUI编程、进阶GUI编程和GUI编程实战。 初级GUI编程:从介绍编程环境搭建开始,然后分析最基础的单个窗口框架,接着介绍QT ...
  • python 可视化包 Bokeh

    千次阅读 2016-10-08 17:01:42
    解决:在网上搜了一下,找到一篇介绍文章 python可视化工具概述,其中介绍了几个python包,总结如下: Pandas对于简单绘图,可以随手用,但你需要学习定制matplotlib。Seaborn可以支持更多复杂的可视化方式,但...
  • Python可视化resnet50所有层特征图

    万次阅读 多人点赞 2018-12-02 14:18:04
    Python可视化resnet50所有层特征图 使用pytorch中预训练模型,在网络inference的过程中显示特征图的每个通道. 文章目录代码input imageconv1 [1,64,112,112]bn1_relu [1,64,112,112]maxpool [1,64,56,56]layer1 [1,...
  • Python可视化包Pygal安装

    千次阅读 2018-03-23 09:47:25
    python可视化包Pygal来生成可缩放的矢量图形文件。在屏幕上,它们将自动缩放,以适合观看者的屏幕。Windows操作系统:安装pip https://pypi.python.org/pypi/pip#downloads安装即可,在dos下python setup.py install...
  • python 可视化 ploty 画3dmesh网格图

    千次阅读 2019-09-23 16:45:52
    python 可视化 ploty 画3dmesh网格图 最近在工作中遇到python 打印可视化3D图。需求是根据之前用matplotlib打印出来的效果不是很好。发现了非常强大的可视化包plotly。附上官方文档链接 https://plot.ly/python/ #...
  • Python可视化之Pyecharts 多子图展示

    千次阅读 2019-07-16 15:06:15
    作为Python可视化多个轮子中的Pyecharts在版本升级到 v1.0及以上后和以前的区别还是蛮大的 其中就有一个是在引用包的时候 我发现网上好多都是v1.0以前的引用方式,当然在我们默认的python3.6+中会报错 本人使用的...
  • 那些不为人知的优秀python可视化

    千次阅读 2019-10-31 17:25:00
    说到python可视化库,大家可能第一时间想到matplotlib。matplotlib算是python比较底层的可视化库,可定制性强、图表资源丰富、简单易用、并且达到出...
  • Python可视化模块——SeaBorn 01

    千次阅读 2017-03-13 17:32:03
    SeaBorn 01Python可视化模块SeaBorn:特点 多个内置主题和颜色主题 可视化单一变量、二维变量用于比较数据集中各变量的分布情况 可视化线性回归模型中的独立变量及不独立变量 可视化矩阵数据,通过聚类算法探究矩阵间...
  • 作者:Lemonbit出品:Python数据之道用 Python可视化神器 Plotly动态演示全球疫情变化趋势各位同学早上好,我是 Lemonbit 。近期对疫情数据进行可视化的内容...
  • python可视化系列】python数据可视化利器--pyecharts

    万次阅读 多人点赞 2018-06-17 17:18:33
    下面是来自官方的介绍: ECharts,缩写来自Enterprise Charts,商业级数据图表,Echarts 是百度开源的一个数据可视化纯Javascript(JS) 库。主要用于数据可视化,可以流畅的运行在PC和移动设备上,兼容当前绝大部分...
  • Python 可视化神器--Plotly

    千次阅读 多人点赞 2020-11-12 08:00:00
    文 |潮汐来源:Python 技术「ID: pythonall」学习Python是做数分析的最基础的一步,数据分析离不开数据可视化Python第三方库中我们最常用的可视化库是 pan...
  • python可视化-plot()函数

    万次阅读 2019-04-17 20:20:52
    函数功能:展现变量的趋势变化。 调用签名:plt.plot(x, y, ls="-", lw=2, label=“plot figure”) x: x轴上的数值 y: y轴上的数值 ls:折线图的线条风格 lw:折线图的线条宽度 label:标记图内容的标签文本 ...
  • python 可视化 二维坐标标注等等

    千次阅读 2018-09-15 12:42:07
    python 可视化 二维坐标标注等等  基本画图操作: import matplotlib.pyplot as plt import numpy as np x = np.linspace(-3,3,50) y1 = 2*x+1 y2 = x**2#x的平方 plt.figure() plt.plot(x,y1) #画线 plt....
  • Python可视化 | Seaborn5分钟入门(五)——lmplot

    万次阅读 多人点赞 2018-06-22 14:44:08
    Seaborn是基于matplotlib的Python可视化库。 它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,不需要经过大量的调整就能使你的图变...
  • Python可视化-WordCloud生成云词图片

    千次阅读 2019-08-15 23:42:06
    Python可视化-WordCloud生成云词图片 首先建一个记事本,写入你想要生成云词图片的文章。 生成的云图 ##完整示例代码 import jieba.analyse ##jieba库 用于分割中文词语 from PIL import Image,ImageSequence ...
  • python可视化之seaborn

    千次阅读 2018-08-11 16:57:58
    数据可视化的文章我很久之前就打算写了,因为最近用Python做项目比较多,于是就花时间读了seaborn的文档,写下了这篇。 数据可视化在数据挖掘中是一个很重要的部分,将数据用图表形式展示可以很直观地看到数据集的...
  • python可视化pyecharts

    千次阅读 2018-07-03 11:55:49
    说到数据可视化,第一想到的肯定是百度的ECharts。它的英文单词是Enterprise Charts,商业级数据图表,是百度的开源数据可视化工具。但是学习起来不是那么容易,但是我们利用 python 的pyecharts 库,只需几行代码就...
  • Python可视化数据画直线的几种方法

    千次阅读 2020-04-20 21:23:46
    利用Python可视化数据主要是利用Numpy Matplotlib强大的绘图功能,还可以利用Pandas进行数据挖掘和数据分析 在学习的过程中发现了直线的画图方法有以下几种: 1. 直接plot法 已知两点画一条直线,x值在前,y值在后,...
  • Python可视化数据库Dash

    千次阅读 2019-09-04 10:17:19
    Dash是一个用于构建Web应用程序的Python数据可视化库。它基于Python Web框架Flask以及Javascript绘图库Plotly.js和用于构建用户界面的Javascript库React.js,所以它非常适合用于构建后端基于Flask,前端数据可视化的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,913
精华内容 15,165
关键字:

python可视化

python 订阅