如何在Python的MatPlotLib中绘制一个带有数据点的折线图?

3

我期望得到的结果是一个看起来像这样的图表

ax.plot(df.x, df.y, 'b.-')

在生成的线上,每个数据点的位置都有一个点。但我还想要特定的颜色,如“lightsteelblue”。

当我尝试绘制时

ax.plot(df.x, df.y, color='lightsteelblue', ls='.-')

出现了一个值错误,提示“.-”在“ls”中不被支持。有什么解决方法吗? 谢谢您的时间, -Bojan

1
你能提供一个完整可复现的代码和预期输出的示意图吗? - mozway
2个回答

6

以下代码应该适用于您

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, np.random.randint(1, 7) , 10)
y = np.linspace(0, np.random.randint(7, 9), 10)

fig, ax = plt.subplots()

ax.plot(x, y, **{'color': 'lightsteelblue', 'marker': 'o'})

plt.show()

输出

图片描述


此外,markevery=n 可以限制标记的数量,每 n 个中选择一个。 - mins

3
< p >参数ls代表线型,但你也试图使用它来传递标记样式。如果要传递标记样式,需要使用marker参数,例如:< /p >
ax.plot(x, y, color='black', ls='-', marker='.')

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接