Python:绘制多个数据集;预定所有颜色和标记



我有一个pandas数据框架,其中每列代表一个不同的数据集,我想将它们全部绘制在一起。我可以简单地调用plt.plot(df),它做得很好。我有两个问题:

  1. 如何更改图的默认颜色?也就是说,我该如何强制其他菌落?
  2. 可以说,有什么方法可以一口气吗?

我知道我可以分别定义每列的情节样式,例如:

plt.plot(df['col1'],'ro-',df['col2'],'b*--',df['col3'],'go-.')

,但我希望沿着:

的方式更简洁。
plt.plot(df,colors=colors, styles=styles, markers=markers)

以前已经定义了变量colorsstylesmarkers。或者也许是类似的东西:

plt.colors = <something that defines colors>
plt.styles = ...
plt.markers = ...
plt.plot(df)

我知道没有plt.styles,但是是否有相同效果的东西:也就是说,在多行图中使用了所有可能使用的线样式?

文档中使用Cycler教程检查样式。

from cycler import cycler
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
mycycler = (cycler(color=['r', 'g', 'b', 'y']) +
            cycler(linestyle=['-', '--', ':', '-.']) + 
            cycler(marker=['s', 'o', 'd', '^']))
plt.rc('axes', prop_cycle=mycycler)

plt.plot(pd.DataFrame(np.random.rand(10,4)))
plt.show()

最新更新