03_Python 使用Matplotlib绘图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了03_Python 使用Matplotlib绘图相关的知识,希望对你有一定的参考价值。

参考技术A

不知不觉,已经进入第12周了,Python数据分析的学习现今也已经进入了中后期,在继上周进行了Numpy的康威生命游戏的编写之后;紧接着进行的学习就是利用Python的Matplotlib模块来练习绘图。 这次由于涉及到图像,所以引用了一些丁烨老师的pdf的截图。主要是进行用Matplotlib模块来进行MATLAB能做的数据分析绘图工作,并结合Numpy和Matplotlib来做一个扫雷小游戏。

matplotlib官网

将 matplotlib 绘图对象分配给 _

【中文标题】将 matplotlib 绘图对象分配给 _【英文标题】:assigning matplotlib plot objects to _ 【发布时间】:2019-04-15 19:24:55 【问题描述】:

我最近开始了 DataCamp 的 Python 统计思维(第 1 部分)课程,讲师提到在 Python 中构建绘图时,惯例通常是在构建绘图时将绘图对象分配给 NULL 运算符“_”,之前显示情节。

这真的是约定吗?我找不到太多的证据,我也想不出为什么它会成为惯例的理由。下面的代码 sn-p 取自课程示例并演示了我的意思。

# Plot all ECDFs on the same plot
_ = plt.plot(x_set, y_set, marker='.', linestyle='none')
_ = plt.plot(x_vers, y_vers, marker='.', linestyle='none')
_ = plt.plot(x_virg, y_virg, marker='.', linestyle='none')

# Annotate the plot
_ = plt.legend(('setosa', 'versicolor', 'virginica'), loc='lower right')
_ = plt.xlabel('petal length (cm)')
_ = plt.ylabel('ECDF')

# Display the plot
plt.show()

【问题讨论】:

【参考方案1】:

正如in this answer 所讨论的,_ 通常用于存储“一次性”结果,这就是这里发生的事情。 matplotlib 调用都返回将打印到您的终端(或可能是笔记本)的结果,因此为防止这种情况,这些结果将被捕获在_ 中以防止它们显示。是否选择这样做取决于您。

正如 cmets 中所指出的,如果您使用的是 IPython 或 Jupyter,您还可以通过在行尾添加分号来抑制给定行的输出。

【讨论】:

也许有人应该提到,现在使用 IPython 很常见,并且可以通过附加分号 plt.plot([1,2,3]); 来抑制 IPython 中的输出,这看起来不那么奇怪了。 感谢@ImportanceOfBeingErnest。我认为这是有道理的。我想知道它是否会与 _ 也可用于调用控制台的最后一个结果输出这一事实相冲突。对此有什么想法吗? 好吧,如果您将最后一个结果分配给_,您仍然可以通过单元格中的_ 访问它,因此它与默认行为一致。

以上是关于03_Python 使用Matplotlib绘图的主要内容,如果未能解决你的问题,请参考以下文章

python数据分析007_使用Matplotlib绘图

Python3绘图之Matplotlib(03)

Python绘图工具matplotlib的使用(图形并茂)

python数据分析之matplotlib绘图

python数据分析006_Python 2D绘图库Matplotlib

『python』科学计算专项_科学绘图库matplotlib学习