在 matplotlib 文档中,https://matplotlib.org/api/matplotlib_configuration_api.html提供了以下“伪示例”,后面是简短的“伪解释”:
with mpl.rc_context(fname='screen.rc'):
plt.plot(x, a)
with mpl.rc_context(fname='print.rc'):
plt.plot(x, b)
plt.plot(x, c)
Run Code Online (Sandbox Code Playgroud)
“a”与“x”和“c”与“x”图将具有来自“screen.rc”的设置,而“b”与“x”图将具有来自“print.rc”的设置。
对我来说,这是一个“有 5 个未知数的方程”:“screen.rc”、“print.rc”、“a”、“b”和“c”。更具体地说:1)文件“screen.rc”“print.rc”是什么?它们在哪里找到或如何创建?2)变量“a”、“b”和“c”代表什么以及它们是如何设置的?
看来这个“例子”相当有名,因为我在十几个不同的地方找到了它的精确副本,包括简短的描述。最有趣的是,没有人,甚至 matplotlib 工作人员本身,愿意解释如何实际应用这些东西。
有人有关于这个例子的具体信息或者可以给出一个如何使用的具体rc_context()例子吗?
您显示的示例来自相应方法的文档。这些方法几乎没有空间来详细介绍,因此请不要责怪人们在方法文档字符串的不寻常位置实际提供了这样的示例。
有关 rc 文件、上下文和示例的更详细说明,请参阅自定义教程(教程页面中的第二个教程,几乎不可能错过它)。
坚持问题中的情况,具体情况是您有一个包含此代码的 python 文件,此外您还有两个文本文件,名为screen.rc和print.rc.
.py 文件:
import matplotlib as mpl
import matplotlib.pyplot as plt
x = [1,2,3,4]
a = [1,2,4,4]
b = [1,1,2,4]
c = [2,3,3,1]
with mpl.rc_context(fname='screen.rc'):
plt.plot(x, a)
with mpl.rc_context(fname='print.rc'):
plt.plot(x, b)
plt.plot(x, c)
plt.show()
Run Code Online (Sandbox Code Playgroud)
文件screen.rc:
lines.linewidth : 1 ## line width in points
lines.linestyle : - ## linestyle
Run Code Online (Sandbox Code Playgroud)
文件print.rc:
lines.linewidth : 5 ## line width in points
lines.linestyle : : ## linestyle
Run Code Online (Sandbox Code Playgroud)
运行 py 文件会产生类似这样的输出
蓝线是从 中创建的线plt.plot(x, a)。它具有实心线型且宽度为一磅。类似,绿线 , plt.plot(x, c)因为两者都在screen.rc上下文内,但不在 内print.rc。橙色线是从上下文中创建的线print.rc。因此它的线有 5 个点并且是点状的。
| 归档时间: |
|
| 查看次数: |
1903 次 |
| 最近记录: |