Python之Matplotlib画图方法

简介:

Matplotlib是一个由John Hunter等开发的,用以绘制二维图形的Python模块。Matplotlib可以绘制多种形式的图形包括普通的线图,直方图,饼图,散点图以及误差 线图等;可以比较方便的定制图形的各种属性比如图线的类型,颜色,粗细,字体的大小等;它能够很好地支持一部分TeX排版命令,可以比较美观地显示图形中 的数学公式。

    Matplotlib的安装方法请参考官方文档:http://matplotlib.sourceforge.net/users/installing.html

    为了方便大家下载,这里提供NumPy、SciPy以及Matplotlib的下载地址:

    NumPy:http://sourceforge.net/projects/numpy/files/

    SciPy:http://sourceforge.net/projects/scipy/files/

    Matplotlib:http://sourceforge.net/projects/matplotlib/files/matplotlib/

    官方提供了Matplotlib很多示例,大家请参考:http://matplotlib.sourceforge.net/gallery.html

    在实际的生产环境中,曾经遇到过这样一个问题,将一些数据分析结果,按照日期形式做线性统计,非常感谢《Python科学计算》的作者的帮助,下面将代码进行分享。

  1. # -*- coding: utf-8 -*- 

  2. import numpy as np 

  3. import pylab as pl 

  4. from StringIO import StringIO 

  5. data_str = """ 

  6. 2012-04-01_02        68 

  7. 2012-04-01_05        70 

  8. 2012-04-01_08        69 

  9. 2012-04-01_11        71 

  10. 2012-04-01_14        72 

  11. 2012-04-01_20        70 

  12. 2012-04-02_02        71 

  13. 2012-04-02_05        70 

  14. 2012-04-02_08        69 

  15. 2012-04-02_11        71 

  16. 2012-04-02_14        69 

  17. 2012-04-02_20        71 

  18. 2012-04-03_02        74 

  19. 2012-04-03_05        73 

  20. 2012-04-03_08        77 

  21. 2012-04-03_11        70 

  22. 2012-04-03_14        71 

  23. 2012-04-03_20        70 

  24. 2012-04-04_02        70 

  25. 2012-04-04_05        72 

  26. 2012-04-04_08        72 

  27. 2012-04-04_11        69 

  28. 2012-04-04_14        71 

  29. 2012-04-04_20        69 

  30. 2012-04-05_02        75 

  31. """ 

  32.  

  33. data = np.loadtxt(StringIO(data_str),  

  34.         dtype=np.dtype([("t""S13"),("v", float)])) 

  35.          

  36. datestr = np.char.replace(data["t"], "_"" "

  37. t = pl.datestr2num(datestr) 

  38. v = data["v"

  39.  

  40. pl.plot_date(t, v, fmt="-o"

  41.  

  42. pl.subplots_adjust(bottom=0.3

  43.  

  44. ax = pl.gca() 

  45. ax.fmt_xdata = pl.DateFormatter('%Y-%m-%d %H:%M:%S'

  46. pl.xticks(rotation=90

  47.  

  48. pl.xticks(t, datestr) # 如果以数据点为刻度,则注释掉这一行 

  49. ax.xaxis.set_major_formatter(pl.DateFormatter('%Y-%m-%d %H')) 

  50.  

  51. pl.grid() 

  52. pl.show() 

    效果图如下:











本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1576189,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
323 1
|
3月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
125 2
|
3月前
|
调度 Python
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
119 0
|
3月前
|
传感器 大数据 API
Python数字限制在指定范围内:方法与实践
在Python编程中,限制数字范围是常见需求,如游戏属性控制、金融计算和数据过滤等场景。本文介绍了五种主流方法:基础条件判断、数学运算、装饰器模式、类封装及NumPy数组处理,分别适用于不同复杂度和性能要求的场景。每种方法均有示例代码和适用情况说明,帮助开发者根据实际需求选择最优方案。
192 0
|
3月前
|
Python
Python字符串center()方法详解 - 实现字符串居中对齐的完整指南
Python的`center()`方法用于将字符串居中,并通过指定宽度和填充字符美化输出格式,常用于文本对齐、标题及表格设计。
|
2月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
391 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
3月前
|
机器学习/深度学习 数据采集 算法
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
248 4
|
2月前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
|
3月前
|
机器学习/深度学习 数据采集 TensorFlow
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
151 0
|
4月前
|
数据管理 开发工具 索引
在Python中借助Everything工具实现高效文件搜索的方法
使用上述方法,你就能在Python中利用Everything的强大搜索能力实现快速的文件搜索,这对于需要在大量文件中进行快速查找的场景尤其有用。此外,利用Python脚本可以灵活地将这一功能集成到更复杂的应用程序中,增强了自动化处理和数据管理的能力。
335 0

推荐镜像

更多