美文网首页python
matplotlib-数据可视化神器

matplotlib-数据可视化神器

作者: pnjoe | 来源:发表于2017-07-20 14:29 被阅读360次

第二课:绘图函数-数据描述之可视化

matplotlib 是什么?

Matplotlib 是一个 Python的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形 。
  通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。


用matplotlib生成的图表 示例图

怎么安装 matplotlib?

安装 matplotlib - setp 1 安装 matplotlib - setp 2 安装 matplotlib - setp 3 安装 matplotlib - setp 4 安装 matplotlib - setp 5 安装 matplotlib - setp 6

怎么卸载 matplotlib?

卸载 matplotlib - setp 1 卸载 matplotlib - setp 2 卸载 matplotlib - setp 3 卸载 matplotlib - setp 4 卸载 matplotlib - setp 5 卸载 matplotlib - setp 6

怎么使用 matplotlib?

导入模块

# 导入了matplotlib.pyplot模块 并简写成 plt (以便后面调用)
import matplotlib.pyplot as plt

思考

  • 我用什么图表好呢?
  • 错误:哪种图表酷炫好看,我就用哪种.
  • 正确:根据数据图表类型.变量的类型/数量/相关性,最终图表想表达意愿.选用合适的图表来展示.
  • 反思自己上节课天气数据分析,就犯了以上错误. 羞愧中...

连续变量

  • 直方图 histogram

  • 示例图


    直方图
  • 用法
plt.hist(data)
~~~~~~~~~~~~~~~~~~
matplotlib.pyplot.hist(x, bins=None, range=None, normed=False, weights=None, cumulative=False, >bottom=None, histtype='bar', align='mid', orientation='vertical', rwidth=None, log=False, color=None, >label=None, stacked=False, hold=None, data=None, **kwargs)

  • 箱图 box plot

  • 示例图


    箱形图
  • 用法
plt.boxplot(data)
~~~~~~~~~~~~~~~~~~
matplotlib.pyplot.boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, >widths=None, patch_artist=None, bootstrap=None, usermedians=None, conf_intervals=None, >meanline=None, showmeans=None, showcaps=None, showbox=None, showfliers=None, boxprops=None, >labels=None, flierprops=None, medianprops=None, meanprops=None, capprops=None, >whiskerprops=None, manage_xticks=True, autorange=False, zorder=None, hold=None, data=None)

离散变量

  • 条形图 bar chart

  • 示例图


    条形图
  • 用法
plt.bar(x,y)
~~~~~~~~~~~~~~~~~~
matplotlib.pyplot.bar(left, height, width=0.8, bottom=None, hold=None, data=None, **kwargs)

  • 饼图 pie chart

  • 示例图


    饼形图
  • 用法
plt.pie(data)
~~~~~~~~~~~~~~~~~~
matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, >shadow=False, labeldistance=1.1, startangle=None, radius=None, counterclock=True, >wedgeprops=None, textprops=None, center=(0, 0), frame=False, hold=None, data=None)

多变量

  • 散点图 scatter plot

  • 示例图


    散点图
  • 用法
plt.scatter(x,y)

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, edgecolors=None, hold=None, data=None, **kwargs)

  • 矩阵图

  • 示例图


    矩阵图
  • 用法
矩阵图这里用的是pandas的包了
# 导入pandas模块
import pandas
pandas.scatter_matrix(df)


In [1]: from pandas.plotting import scatter_matrix
In [2]: df = pd.DataFrame(np.random.randn(1000, 4), columns=['a', 'b', 'c', 'd'])
In [3]: scatter_matrix(df, alpha=0.2, figsize=(6, 6), diagonal='kde')

定制数据图表

  • 泡泡图

数据来源 http://www.gapminder.org/posters/gapminder-world-2013/
  • 图表设置
    • 设置坐标轴名称
    plt.xlabel()
    plt.ylabel()
    
    • 设置标题
    plt.title()
    
    • 设置X轴刻度
    plt.xscale('log')
    plt.xticks(tick_val.tick_lab)
    
    • 设置尺寸,颜色,透明度
    plt.scatter(x,y,s =?, c= ?, alpha =?)
    
    • 添加文本
    plt.text(x,y,s)
    
    • 添加网格
    plt.grid(True)
    

相关阅读:
本篇 理论篇:matplotlib-数据可视化神器
下篇 实践篇:python数据可视化-练习

相关文章

网友评论

    本文标题:matplotlib-数据可视化神器

    本文链接:https://www.haomeiwen.com/subject/bcarkxtx.html