有没有办法缩短代码?茎小叶

2024-05-23 14:38:32 发布

您现在位置:Python中文网/ 问答频道 /正文

stem图中的x和y轴变量是数据帧中的列


import pandas as pd
import matplotlib.pyplot as plt

fig, ax = plt.subplots(3, 1,figsize=(8,20))
fig.suptitle('Magnitude-Time Plot : R1')
fig.subplots_adjust(hspace=0.5)

# Defining custom 'xlim' and 'ylim' values.
xlim = (1990, 2005)
ylim = (0, 9)

# Setting the values for all axes.
plt.setp(ax, xlim=xlim, ylim=ylim)

    # plot with no marker

#subplot(311) : Catalog8 in R1
markerline, stemlines, baseline = ax[0].stem(cata8q1.YearDeci,cata8q1.Magnitude, markerfmt=' ',use_line_collection=True,linefmt='b')
plt.setp(stemlines,linewidth=0.5)
ax[0].set_title('Catalog OLD')

#subplot(312) : catalog 9 _Uniq in R1
markerline, stemlines, baseline = ax[1].stem(cata9uniq1.YearDeci,cata9uniq1.Magnitude, markerfmt=' ',use_line_collection=True,linefmt='r')
plt.setp(stemlines,linewidth=0.5)
ax[1].set_title('Unique events in NEW CATALOG')

#subplot(312) : Catalog NEW in R1
markerline, stemlines, baseline = ax[2].stem(catanewq1.YearDeci,catanewq1.Magnitude, markerfmt=' ',use_line_collection=True)
plt.setp(stemlines,linewidth=0.5)
ax[2].set_title('OLD + unique events in NEW Catalog')

plt.show()

我正在尝试绘制[3,1]干子图,我想用更少的代码行来更方便地控制轴属性和图形属性


Tags: infigpltaxr1stembaselinemagnitude
1条回答
网友
1楼 · 发布于 2024-05-23 14:38:32

你可以这样做。你知道吗

catalogs = [(cata8q1,"Catalog Old", "b"), ...] 

for i, (catalog, title, linefmt) in enumerate (catalogs):
    markerline, stemlines, baseline = ax[0].stem(catalog.YearDeci,catalog.Magnitude, markerfmt=' ',use_line_collection=True,linefmt=linefmt)   
     plt.setp(stemlines,linewidth=0.5) 
     ax[i].set_title(title)

相关问题 更多 >