Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Matplotlib中显示多个线条图例_Python_Matplotlib_Legend - Fatal编程技术网

Python 在Matplotlib中显示多个线条图例

Python 在Matplotlib中显示多个线条图例,python,matplotlib,legend,Python,Matplotlib,Legend,我试图显示我的线图的所有4个图例,列标题作为各自的图例名称。 是否有一种优雅的方法可以执行此操作,而不必编写单独的代码行来绘制和标记每一列 我当前数据集的示例如下: import numpy as np import matplotlib.pyplot as plt import pandas as pd x = pd.Series(np.array([1,2,3,4,5,6,7,8,9,10])) y = pd.DataFrame(np.random.rand(10,4)) y.column

我试图显示我的线图的所有4个图例,列标题作为各自的图例名称。 是否有一种优雅的方法可以执行此操作,而不必编写单独的代码行来绘制和标记每一列

我当前数据集的示例如下:

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

x = pd.Series(np.array([1,2,3,4,5,6,7,8,9,10]))
y = pd.DataFrame(np.random.rand(10,4))
y.columns = ["A","B","C","D"]
fig, ax = plt.subplots(figsize=(10, 7))
ax.plot(x, y, label=True)

实际上,您可以使用pandas中定义的plot函数:

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

x = pd.Series(np.array([1,2,3,4,5,6,7,8,9,10]))
y = pd.DataFrame(np.random.rand(10,4))
y.columns = ["A","B","C","D"]
y['x'] = x
fig, ax = plt.subplots(figsize=(10, 7))
y.plot(ax=ax)