熊猫情节线具有不同的线条样式?

问题描述 投票:0回答:2

我使用

ggplot
样式在同一个图上绘制多条线。采用这种风格,线条就变成了全实线。所以能见度不好。如何将每一行更改为不同的样式,例如带有虚线的样式,或者其他样式?

import pandas as pd
import matplotlib.pyplot as plt
plt.style.use('ggplot')

fig,ax = plt.subplots(figsize=(15,5))
ax.set_title('Loss curve', fontsize=15)
ax.set_ylabel('Loss')
ax.set_xlabel('Epoch')
df1.plot.line(ax=ax,x='epoch',y=["train_loss"])
df2.plot.line(ax=ax,x='epoch',y=["train_loss"])
plt.show()

enter image description here

python pandas matplotlib
2个回答
6
投票

您可以使用

linestyle
将每行更改为不同的样式。

这是一个例子:

import pandas as pd
import matplotlib.pyplot as plt
plt.style.use('ggplot')

fig,ax = plt.subplots(figsize=(15,5))
ax.set_title('Loss curve', fontsize=15)
ax.set_ylabel('Loss')
ax.set_xlabel('Epoch')

df1 = pd.DataFrame({'epoch' : [10,20,30,40,50,60],
                    'train_loss' : [6,5,4,3,2,1]})

df2 = pd.DataFrame({'epoch' : [10,20,30,40,50,60],
                    'train_loss' : [6.5,5.5,4.5,3.5,2.5,1.5]})

df1.plot.line(ax=ax,x='epoch',y=["train_loss"], 
              linewidth= 1.5, linestyle='-.')
df2.plot.line(ax=ax,x='epoch',y=["train_loss"], linewidth= 1.5,
              linestyle='-')
plt.show()

上面的代码将显示如下图: enter image description here

plt.plot.line(),您可以检查更多样式,如实线、虚线、点划线、点线等。


0
投票

简单地在线条的

style
属性中给出一个列表,如

f_int_df = pandas.DataFrame(f_int_lst)
f_int_df['ds_pos'] = -F(q0, s_pos, alpha=alpha, gamma=gamma)
f_int_df.set_index('s')[['sum', 'ds_pos']].plot(
    figsize=(4,2), lw=3, grid=True, 
    style=['-', '--'], 
    title="$\propto\int_{q_0\wedge(q_0-s)}^\infty (1+a)^{-3} (1+a+s)^{-3}\, da$"
)

给出(关注代码的

style=['-', '--']
行):

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.