网上关于Python使用matplotlib包进行绘图的文章不少,自己写一遍掌握得才更好。matplotlib是用于创建二维图表和图形的库,它不在标准python库之中,需要单独安装。

安装

在windows的控制台里输入:

pip install matplotlib

执行import matplotlib,如果没有错误提示,则表示安装成功。

折线图

先画一个最简单的折线图。

import matplotlib.pyplot as plt
squares = [1, 4, 9, 16, 25]
plt.plot(squares)
plt.show()

为了便于将来更灵活地摆放多个图,推荐下面这种写法:

import matplotlib.pyplot as pltfig, ax = plt.subplots()squares = [1, 4, 9, 16, 25]
ax.plot(squares)
fig.show()

保存为图片或PDF

fig.savefig(“test-figure.png”, dpi=300)
fig.savefig(“test-figure.pdf”)

分别定义x和y

前面的例子实际上省略了x列表,如果x和y都写上,是这样:

import matplotlib.pyplot as pltfig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]
ax.plot(x, y)
fig.show()

加上标题、坐标轴标签和网格线

set_title()设置图名。
set_xlabel()和set_ylabel()设置X轴和Y轴的名称。
grid()加网格线。

关于中文显示的问题
https://www.jb51.net/article/134546.htm

import matplotlib.pyplot as pltfig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]
ax.plot(x, y)ax.set_title('折线图', fontproperties="SimHei")
ax.set_xlabel('X轴', fontproperties="SimSun")
ax.set_ylabel('Y轴', fontproperties="SimSun")
ax.grid(True)fig.show()

自定义X轴和Y轴的范围

用set_xlim()和 set_ylim()定义轴的最小刻度和最大刻度值。

import matplotlib.pyplot as pltfig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]
ax.plot(x, y)ax.set_title('折线图', fontproperties="SimHei")
ax.set_xlabel('X轴', fontproperties="SimSun")
ax.set_ylabel('Y轴', fontproperties="SimSun")
ax.grid(True)ax.set_xlim(xmin=-1, xmax=10)
ax.set_ylim(ymin=-1, ymax=6)fig.show()

在数据点上显示标记

plot(x, y, marker=‘o’) 显示圆点标记

还有很多种标记:

  • ‘o’ 圆圈 Circle
  • ‘s’ 方块标记 Square
  • ‘*’ 星形标记 Star
  • ‘x’或’X’ 叉
  • ‘d’或’D’ 钻石形状标记(菱形) Diamond
  • '+‘或’P’ 十字 Plus
  • ‘^’ 向上三角
  • ‘v’ 下三角
  • ‘>’ 左三角
  • ‘<’ 右三角
  • ‘p’ 五边形 Pentagon
  • ‘h’ 或 ‘H’ 六边形 Hexagon
  • ‘|’ 竖线
  • ‘_’ 横线

设置标记的大小,连线的线型、颜色等

plt.plot(x, y, marker=‘o’, markersize=16, linestyle=‘dotted’, color=‘r’)

线型:
‘-’ 实线 solid
‘:’ 点虚线 dotted
‘–’ 虚线 dashed
‘-.’ 点划线 dashdot

颜色:
可以用一个字母表示的颜色。

还可以这样表示颜色:
(1)一个字母
(2)颜色名称
(3)C0 到 C9
(4)RGB元组,RGBA元组
(5)16进制的0-255的RGB分量,‘#RRGGBB’或‘#RRGGBBAA’
(6)'0.0’到’1.0’的小数

散点图

plot(x, y, ‘s’) 可以直接画出散点图。
注意与前面折线图的区别:
plot(x, y, marker=‘s’)

import matplotlib.pyplot as pltfig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]
ax.plot(x, y, 's')
fig.show()

更直观的写法是用scatter()

import matplotlib.pyplot as pltfig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]
ax.scatter(x, y, marker='s')
fig.show()

改变字体大小

使用fontsize参数。

import matplotlib.pyplot as pltfig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]
ax.scatter(x, y, marker='s')ax.set_title('折线图', fontproperties="SimHei", fontsize=24)
ax.set_xlabel('X轴', fontproperties="SimSun", fontsize=16)
ax.set_ylabel('Y轴', fontproperties="SimSun", fontsize=16)
ax.grid(True)fig.show()

使用内置样式

有许多内置样式可用。

>>> import matplotlib.pyplot as plt
>>> plt.style.available
['Solarize_Light2', '_classic_test_patch', '_mpl-gallery',
'_mpl-gallery-nogrid', 'bmh', 'classic', 'dark_background',
'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn',
'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark',
'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep',
'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel',
'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white',
'seaborn-whitegrid', 'tableau-colorblind10']

换一种样式:
plt.style.use()

import matplotlib.pyplot as pltplt.style.use('bmh')fig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]ax.scatter(x, y, marker='s')ax.set_title('折线图', fontproperties="SimHei", fontsize=24)
ax.set_xlabel('X轴', fontproperties="SimSun", fontsize=16)
ax.set_ylabel('Y轴', fontproperties="SimSun", fontsize=16)
ax.grid(True)fig.show()

每个散点可以设置不同的大小和颜色。

import matplotlib.pyplot as pltplt.style.use('bmh')fig, ax = plt.subplots()x=[0, 1, 2, 3, 4]
y=[0, 3, 1, 5, 2]colors = [1, 2, 3, 1, 1]
size = [100 * c * c for c in colors]
ax.scatter(x, y, s=size, c=colors, alpha=0.5)fig.show()

在Python3里使用matplotlib绘折线图和散点图相关推荐

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

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

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

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

  3. Matplotlib绘制折线图、散点图、柱状图、直方图、饼图代码

    一.折线图 以折线的上升或下降来表示统计数量的增减变化的统计图 特点:能够显示数据的变化趋势,反映事物的变化情况(变化) 函数:plt.plot(x, y) import matplotlib.pyp ...

  4. Matplotlib绘制折线图和散点图

    1.折线图 折线图通常用来表示数据随时间或有序类别变化的趋势. '''1.简单示例''' import matplotlib.pyplot as pltdata = [1,2,3,4,5,4,2,6, ...

  5. python生成折线图怎么对特定点做颜色_python使用matplotlib绘制简单的折线图和散点图...

    生成数据 数据可视化 数据可视化指的是通过可视化表示来探索数据,它与数据挖掘机密相关. 安装matplotlib 请访问https://pypi.python.org/pypi/matplotlib/ ...

  6. matplotlib 散点图_python之matplotlib 折线图和散点图

    安装完python,接下来学习数据分析.找了篇教程学习matplotlib,写折线图和散点图. 首先pip install matplotlib安装. 输入代码: import matplotlib. ...

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

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

  8. python画曲线图例-python使用matplotlib绘制折线图教程

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

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

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

最新文章

  1. Oracle SQL Developer 的一个Bug
  2. 如何关闭Visual Assist?
  3. [活动 3.30]MAUI 跨平台应用开发实战
  4. 计算机VB整除,【原创】VB中的整除运算和转换函数
  5. mysql分库分表面试_【53期】面试官:谈一下数据库分库分表之后,你是如何解决事务问题?...
  6. Linux下select函数的使用
  7. Django UnicodeEncodeError解决
  8. My SQL数据库引擎快速指导-1
  9. 用java 解密pdf_Java 加密、解密PDF文档(示例代码)
  10. 分享一些自己的学习经验和技巧
  11. 最新Java面试题整理!java字符大写转小写
  12. FinalReport连接MYSQL数据库失败经验分享
  13. Web与小程序AR技术原理
  14. iOS上传IPA时提示导入此构建版本时出错-errors occurred in the app thinning process
  15. XYOj2113:找点(区间选点问题)
  16. ewb交通灯报告和文件_基于ewb平台的交通灯电路设计.doc
  17. TCP/IP四层模型与OSI七层参考模型(网络协议)
  18. 计算机里边找不到附件,win10系统开始菜单中找不到附件的具体教程
  19. java线程倒计时_Java程序如何实现多线程倒计时牌
  20. Python 处理图片

热门文章

  1. 芯片科普 | IC行业最全产业链梳理​
  2. 内测“学习”入口,泛知识赛道还能挤得下一个抖音吗?
  3. 亚马逊登山扣标准要求 ASTM1774
  4. 用户增长的基础、原理和方法论
  5. 安防人 这篇文章你能看懂多少?
  6. Mysql密码中有特殊字符或$
  7. 幻灯片制作软件Movavi Slideshow Maker mac
  8. Python+Vue计算机毕业设计学生宿舍管理系统0xgq9(源码+程序+LW+部署)
  9. 编写程序求出ax^2+bx+c的解并指出方程的实根
  10. 深圳非遗保护添新力量,深圳市河南非物质文化遗产联合会应时而生