一尘不染

在python中绘制多行

python

我是Python的新手,我想在一张图中绘制多条线,如下图所示。

在此处输入图片说明

我试过编写像这样的简单绘图代码:
在此处输入图片说明

我知道这些参数

 # red dashes, blue squares and green triangles
    plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')

但是我在第一幅图中有很多行,可以像第一幅图那样使用什么样的参数进行绘制。

谢谢


阅读 352

收藏
2021-01-20

共1个答案

一尘不染

MPL中有许多线型和标记选项。在这里这里这里看看。

对于您的特定示例(我迅速组成了一些函数并大致绘制了前几个示例):

import matplotlib.pyplot as plt
import numpy as np

x=np.arange(6)

fig=plt.figure()
fig.show()
ax=fig.add_subplot(111)

ax.plot(x,x,c='b',marker="^",ls='--',label='GNE',fillstyle='none')
ax.plot(x,x+1,c='g',marker=(8,2,0),ls='--',label='MMR')
ax.plot(x,(x+1)**2,c='k',ls='-',label='Rand')
ax.plot(x,(x-1)**2,c='r',marker="v",ls='-',label='GMC')
ax.plot(x,x**2-1,c='m',marker="o",ls='--',label='BSwap',fillstyle='none')
ax.plot(x,x-1,c='k',marker="+",ls=':',label='MSD')

plt.legend(loc=2)
plt.draw()

这应该给你这样的东西。

在此处输入图片说明

2021-01-20