gpt4 book ai didi

python - matplot lib "fatal IO error 25 (Inappropriate ioctl for device) on X server "localhost :10. 0“

转载 作者:行者123 更新时间:2023-12-03 20:24:04 25 4
gpt4 key购买 nike

我将设备监视脚本作为应该永远运行的后台进程运行。但是,该过程在24小时后因错误而被终止。

XIO:  fatal IO error 25 (Inappropriate ioctl for device) on X server "localhost:10.0"^M
257706 after 507 requests (507 known processed) with 5 events remaining.^M
257707 0.4.38,23): recv 'x01159454 r28

我正在使用matplotlib绘制图形,这是我第一次使用此lib。
由于错误表示X服务器问题,因此我认为它与matplot lib有关,因为它是纯telnet脚本,因此脚本中任何地方都没有X服务器的作用

即使使用matplot lib,我的目标也是将图形另存为png图像。

以下是我的matplot lib代码,请查看是否有明显错误。
 15 plt.ioff()
16
17 def plot_cpu_utilization_graphs(df):
18 plt.clf()
19 column_name = 'CPU'
20 #df = df[[column_name, 'timestamp', 'ip']]
21 max_value = df[column_name].max()
22 if max_value < 100:
23 max_value = 100
24 min_value = df[column_name].min()
25 if min_value > 0:
26 min_value = 0
27 start_idx = df['timestamp'].iloc[0]
28 end_idx = df['timestamp'].iloc[-1]
29 time_series = pandas.DatetimeIndex(freq='20T', start=start_idx, end=end_idx)
30 y_axes_series = range(int(min_value), int(max_value), 10)
31 #ax = df.groupby('ip').plot(x='timestamp', y='CPU')
32 fig, ax = plt.subplots()
33 labels = []
34 for key, grp in df.groupby(['ip']):
35 ax = grp.plot(x='timestamp', y='CPU', ax=ax )
36 labels.append(key)
37 lines, _ = ax.get_legend_handles_labels()
38 lgd = ax.legend(lines, labels, loc='upper center', bbox_to_anchor=(-.25, 1))
39 ax.set_ylabel("CPU")
40 ax.set_xlabel("Time")
41 ax.set_ylim(min_value, max_value)
42 #ax.set_xlim(time_series[0], time_series[-1])
43 plt.title("CPU STATS")
44 fig.savefig('CPUStats', bbox_extra_artists=(lgd,), bbox_inches='tight')



74 def reboot_count(df):
75 plt.clf()
76 plt.cla()
77 sf = df[df.Rebooted][['ip', 'Rebooted']].groupby(['ip', 'Rebooted']).agg(len)
78 if not sf.empty:
79 new_df = pandas.DataFrame({"ip":sf.index.levels[0], "Reboot Count":sf.values})
80 p = new_df.plot(kind='bar', x='ip', y='Reboot Count', color='grey')
81
82 ax = p.axes
83 for tick in ax.get_xticklabels():
84 tick.set_rotation(15)
85 ax.set_ylabel("Reboot Count")
86 ax.set_xlabel("IP")
87 #ax.legend().remove()
88 plt.title(" REBOOT COUNTS")
89 plt.savefig('Reboot Counts')
90 else:
91 print "No Data Present for Graphs"

最佳答案

我有同样的错误。该错误归因于matplotlib使用的后端(您以非交互方式运行它)

尝试

import matplotlib
matplotlib.use('Agg')

参见 https://matplotlib.org/faq/howto_faq.html

关于python - matplot lib "fatal IO error 25 (Inappropriate ioctl for device) on X server "localhost :10. 0“,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45993879/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com