迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Matplotlib 标记填充

作者:迹忆客 最近更新:2023/05/02 浏览次数:

本文将介绍如何在 Matplotlib 中自定义标记样式、创建填充标记以及创建具有不同线条样式的绘图。


在 Matplotlib 中创建填充和未填充标记

标记代表图表上的点。 它可以是单个字符串或整数。

我们可以使用这两个参数自定义标记样式和大小,第一个是标记,第二个是标记大小。 标记有几种样式可以在图表上指出。

描述
9 整数 9 将使用指向右侧的三角形标记数据点。
+ 带有 + 字符的字符串将使用 + 符号标记数据点。
x 带有小写字母 x 的字符串将使用未填充的十字标记数据点。
X 带有大写字母 X 的字符串将使用填充的十字标记数据点。
4 整数 4 将使用指向左侧的三角形标记数据点。
s 带有小写字母 s 的字符串将使用方块标记数据点。
d 带有小写字母 d 的字符串将使用菱形标记数据点。
P 带有大写字母 P 的字符串将使用填充加号标记数据点。
p 带有小写字母 p 的字符串将使用多边形标记数据点。
h 带有小写字母 h 的字符串将使用六边形标记数据点。
H 带有大写字母 H 的字符串将使用填充的六边形标记数据点。
o 带有小写字母 o 的字符串将使用猫头鹰形状标记数据点。

让我们看一个使用线条颜色、样式和标记的示例。

我们需要导入numpy,我们还需要导入matplotlib.pyplot。 接下来,我们创建数据数组,其中 X 包含均匀分布在负 pi 和正 pi 之间的 15 个点,C 包含 X 的余弦值,S 包含 X 的正弦值。

import numpy as np
import matplotlib.pyplot as plot

X=np.linspace(-np.pi,np.pi,15)
C=np.cos(X)
S=np.sin(X)

然后,让我们创建一个图形,图形大小为 5 英寸 x 4 英寸,dpi 为 80。我们需要使用 2 行 2 列的 subplot 函数创建四个轴。

在第一个轴上,我们绘制了余弦函数。 线条颜色为海军蓝,线型为密集虚线,标记为星形,标记大小为 8。

plot.subplot(2,2,1)
plot.plot(X,C,color="navy",linestyle=(0,(5,1)),marker="*",markersize=8)

在第二个轴上,我们绘制了正弦函数。 线条颜色为“橙色”,标记为十字,标记大小为 8。

plot.subplot(2,2,2)
plot.plot(X,S,color="orangered",linestyle=(0,(3,1,1,1)),marker="x",markersize=8)

在第三个轴上,我们绘制了负余弦函数。 线条颜色为“深绿色”,线型为实线,标记为圆形,标记大小为 8。

plot.subplot(2,2,3)
plot.plot(X,-C,color="darkgreen",linestyle=(0,()),marker="o",markersize=8)

在第四个轴上,我们绘制了负正弦函数。 线条颜色为耐火砖,线型为密点线,标记为加号,标记大小为 8。

plot.subplot(2,2,4)
plot.plot(X,-S,color="firebrick",linestyle=(0,(1,1)),marker="p",markersize=8)

完整源代码:

import numpy as np
import matplotlib.pyplot as plot

X=np.linspace(-np.pi,np.pi,15)
C=np.cos(X)
S=np.sin(X)
fig=plot.figure(figsize=(5,4),dpi=80)

plot.subplot(2,2,1)
plot.title("Unfilled Marker")
plot.plot(X,C,color="navy",linestyle=(0,(5,1)),marker="*",markersize=8)
plot.subplot(2,2,2)
plot.plot(X,S,color="orangered",linestyle=(0,(3,1,1,1)),marker="x",markersize=8)
plot.subplot(2,2,3)
plot.plot(X,-C,color="darkgreen",linestyle=(0,()),marker="o",markersize=8)
plot.subplot(2,2,4)
plot.plot(X,-S,color="firebrick",linestyle=(0,(1,1)),marker="p",markersize=8)
plot.show()

输出:

unfilled marker in matplotlib

以下是使用不同字符填充标记的示例。

代码:

import numpy as np
import matplotlib.pyplot as plot

X=np.linspace(-np.pi,np.pi,15)
C=np.cos(X)
S=np.sin(X)
fig=plot.figure(figsize=(5,4),dpi=80)

plot.subplot(2,2,1)
plot.title("Filled Marker")
plot.plot(X,C,color="navy",linestyle=(0,(5,1)),marker="D",markersize=8)
plot.subplot(2,2,2)
plot.plot(X,S,color="orangered",linestyle=(0,(3,1,1,1)),marker="X",markersize=8)
plot.subplot(2,2,3)
plot.plot(X,-C,color="darkgreen",linestyle=(0,()),marker="P",markersize=8)
plot.subplot(2,2,4)
plot.plot(X,-S,color="firebrick",linestyle=(0,(1,1)),marker="H",markersize=8)
plot.show()

输出:

filled marker in matplotlib

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便