matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。

它的文档相当完备,并且Gallery页面中有上百幅缩略图,打开之后都有源程序。因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定。

在Linux下比较著名的数据图工具还有gnuplot,这个是免费的,Python有一个包可以调用gnuplot,但是语法比较不习惯,而且画图质量不高。

而 Matplotlib则比较强:Matlab的语法、python语言、latex的画图质量(还可以使用内嵌的latex引擎绘制的数学公式)。

绘图库Matplotlib的安装方法:点击这里

matplotlib绘制折线图

1. line chart

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 100)

y1, y2 = np.sin(x), np.cos(x)

plt.plot(x, y1)

plt.plot(x, y2)

plt.title('line chart')

plt.xlabel('x')

plt.ylabel('y')

plt.show()

2. 图例

在plot的时候指定label,然后调用legend方法可以绘制图例。例如:

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 100)

y1, y2 = np.sin(x), np.cos(x)

plt.plot(x, y1, label='y = sin(x)')

plt.plot(x, y2, label='y = cos(x)')

plt.legend()

plt.show()

legend方法可接受一个loc关键字参数来设定图例的位置,可取值为数字或字符串:

0: "best'

1: "upper right'

2: "upper left'

3: "lower left'

4: "lower right'

5: "right'

6: "center left'

7: "center right'

8: "lower center'

9: "upper center'

10: "center'

3. 线的样式

(1)颜色

plot方法的关键字参数color(或c)用来设置线的颜色。可取值为:

1、颜色名称或简写

b: blue

g: green

r: red

c: cyan

m: magenta

y: yellow

k: black

w: white

2、#rrggbb

3、(r, g, b) 或 (r, g, b, a),其中 r g b a 取均为[0, 1]之间

4、[0, 1]之间的浮点数的字符串形式,表示灰度值。0表示黑色,1表示白色

(2)样式

plot方法的关键字参数linestyle(或ls)用来设置线的样式。可取值为:

-, solid

--, dashed

-., dashdot

:, dotted

'', ' ', None

(3)粗细

设置plot方法的关键字参数linewidth(或lw)可以改变线的粗细,其值为浮点数。

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 100)

y1, y2 = np.sin(x), np.cos(x)

plt.plot(x, y1, c='r', ls='--', lw=3)

plt.plot(x, y2, c='#526922', ls='-.')

plt.show()

4. marker

以下关键字参数可以用来设置marker的样式:

marker

markeredgecolor 或 mec

markeredgewidth 或 mew

markerfacecolor 或 mfc

markerfacecoloralt 或 mfcalt

markersize 或 ms

其中marker可取值为:

'.': point marker

',': pixel marker

'o': circle marker

'v': triangle_down marker

'^': triangle_up marker

'<': triangle_left marker

'>': triangle_right marker

'1': tri_down marker

'2': tri_up marker

'3': tri_left marker

'4': tri_right marker

's': square marker

'p': pentagon marker

'*': star marker

'h': hexagon1 marker

'H': hexagon2 marker

'+': plus marker

'x': x marker

'D': diamond marker

'd': thin_diamond marker

'|': vline marker

'_': hline marker

例如:

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 10)

y1, y2 = np.sin(x), np.cos(x)

plt.plot(x, y1, marker='o', mec='r', mfc='w')

plt.plot(x, y2, marker='*', ms=10)

plt.show()

另外,marker关键字参数可以和color以及linestyle这两个关键字参数合并为一个字符串。例如:

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 2 * np.pi, 10)

y1, y2 = np.sin(x), np.cos(x)

plt.plot(x, y1, 'ro-')

plt.plot(x, y2, 'g*:', ms=10)

plt.show()

The kwargs are Line2D properties:

PropertyDescription

float (0.0 transparent through 1.0 opaque)

[True | False]

[True | False]

an Axes instance

[True | False]

any matplotlib color

a callable function

["butt’ | "round’ | "projecting’]

["miter’ | "round’ | "bevel’]

sequence of on/off ink in points

["default’ | "steps’ | "steps-pre’ | "steps-mid’ | "steps-post’]

["full’ | "left’ | "right’ | "bottom’ | "top’ | "none’]

an id string

string or anything printable with "%s’ conversion.

['-' | '--' | '-.' | ':' | 'None' | ' ' | '']

float value in points

[True | False]

any matplotlib color

float value in points

any matplotlib color

any matplotlib color

float

[None | int | length-2 tuple of int | slice | list/array of int | float | length-2 tuple of float]

float distance in points or callable pick function fn(artist, event)

float distance in points

[True | False | None]

unknown

["butt’ | "round’ | "projecting’]

["miter’ | "round’ | "bevel’]

a url string

[True | False]

1D array

1D array

any number

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我的支持。

python画曲线图例-python使用matplotlib绘制折线图教程相关推荐

  1. python matplotlib画折线图_python使用matplotlib绘制折线图教程

    matplotlib简介 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序 ...

  2. 如何使用python画折线图-python使用matplotlib绘制折线图教程

    matplotlib简介 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序 ...

  3. python画曲线图例-Python数据分析-Matplotlib图标绘制

    Matplotlib介绍 Matplotlib是一个强大的Python绘图和数据可视化的工具包. Matplotlib的主要功能 Matplotlib是python中的一个包,主要用于绘制2D图形(当 ...

  4. python画曲线图例-Python数据可视化之Matplotlib(折线图)

    一.使用Matplotlib生成数据图:是Python上的一个2D绘图库,它可以在跨平台上边出很多高质量的图像. 1.Pycharm安装Matplotlib库 (1)点击菜单上的"file& ...

  5. python画曲线图例-Python画各种图

    目录: 画图小tips 散点图 柱状图 热力图 折线图 堆积柱状图 1.画图小tips 目录: 1.1 保存多张图片+清空 1.2 画图标题/图例显示中文 1.3 图中加注释 1.4双坐标轴 1.5坐 ...

  6. python踩坑记(使用matplotlib绘制折线图遇到的问题及解法)

    前几天老妹说毕设中图表部分是通过excel直接生成的,可能在答辩时候会显得很low,让我教教她怎么用python来画图.看了她的毕设,其实不难处理,就是两个折线图.这也让我松了一口气,毕竟快两年没有写 ...

  7. python教程-数据分析-matplotlib绘制折线图2 +总结(搭建网格,加上图例,修改图片的颜色和线条,脑图总结)

    上一篇博客我们展示到了如何将matplotlib里面的中文正确输出 链接上一篇:python教程-数据分析-matplotlib绘制折线图1 matplotlib 今天这一篇我们继续学习matplot ...

  8. python绘制折线图保存_Python利用matplotlib绘制折线图的新手教程

    前言 matplotlib是Python中的一个第三方库.主要用于开发2D图表,以渐进式.交互式的方式实现数据可视化,可以更直观的呈现数据,使数据更具说服力. 一.安装matplotlib pip i ...

  9. Python dataframe绘制饼图_运用matplotlib绘制折线图、散点图、饼图、柱形图的定义代码以及案例详解...

    从导入数据开始 这里我们有一个现成的数据表包,现在我们所处环境是pycharm,安装环境是annaconda3环境,我们将通过这个数据表包来进行数据分析,运用matplotlib绘制折线图.散点图.饼 ...

最新文章

  1. 路由器、路由与路由表
  2. Pytorch笔记(python--类与对象(class and module))
  3. [20170622]传输表空间与dblink.txt
  4. 口语学习Day6:今天聊聊国内安全还是国外安全?
  5. 2017蓝桥杯 对局匹配(贪心)
  6. Java枚举getDeclaringClass()方法与示例
  7. c语言statistics函数,Logistic回归中C-Statistics计算方法
  8. Redhat/Ubuntu/Windows下安装Docker
  9. 如何禁止开机时进入安全模式
  10. 公式推导 11-22
  11. java 反编译 报错_java反编译后再编译成class时提示缺少包
  12. python下载离线包
  13. php操作sqlserver视频教程,SQLServer数据库基础视频教程下载
  14. 从U盘还原完ghost系统,重启就提示bootmgr is missing
  15. 小游戏1024纯C语言
  16. 【开发日常】什么是标准?什么是协议?标准和协议之间是什么关系?
  17. 使用python做迷宫
  18. TCP粘包是什么?如何处理?UDP有粘包吗?
  19. QPushButton去掉虚线框
  20. colorkey唇釉是否安全_colorkey唇釉安全吗-colorkey唇釉真假辨别

热门文章

  1. android VectorDrawable使用笔记(三)
  2. android从放弃到精通第11天 勿忘初心
  3. DDOS SYN Flood攻击、DNS Query Flood, CC攻击简介——ddos攻击打死给钱。限网吧、黄网、博彩,,,好熟悉的感觉有木有...
  4. OpenTSDB介绍——基于Hbase的分布式的,可伸缩的时间序列数据库,而Hbase本质是列存储...
  5. 关于Eclispse连接Mysql的Jdbc
  6. 字符串与byte[]之间的转换
  7. 学习进度条(第三周)
  8. kali下利用weeman进行网页钓鱼
  9. net项目总结一(1)
  10. Object-c学习之路二(oc内存管理黄金法则1)