如何将用户输入作为我的图表标题显示(Python)

-1 投票
1 回答
1576 浏览
提问于 2025-04-18 15:08

这是让用户输入日期和时间的代码:

startTime = datetime.strptime(raw_input('please enter start time in format like 21/7/2014 0:00 :'), '%d/%m/%Y %H:%M')
endTime   = datetime.strptime(raw_input('please enter end time in format like 22/7/2014 23:57 :') , '%d/%m/%Y %H:%M')

我该怎么把用户输入的内容显示在我的图表标题上,还要加上其他信息呢?

这是我设置图表标题的代码:

plt.title('Max Value: {:.2f} at {}, Mode: {:.2f}, Average: {:.2f})'.format(max(y), t[np.argmax(y)], mode(y)[0][0], np.average(y)))

我试过这个,但没有成功:

 plt.title('Irradiance vs Time Graph at startTime to endTime \n Max Value: {:.2f} at {}, Mode: {:.2f}, Average: {:.2f})'startTime, endTime, .format(max(y), t[np.argmax(y)], mode(y)[0][0], np.average(y)))

提前谢谢你们!

1 个回答

-1

正确的字符串格式化方法是使用 .format() 这个方法,写法是这样的:

'我的名字是 {}'.format('Ian')

这样会输出 '我的名字是 Ian'。在你的情况中,可以这样使用:

long_title = 'Irradiance vs Time Graph at {} to {} \n Max Value: {:.2f} at {}, Mode: {:.2f}, Average: {:.2f})'

plt.title(long_title.format(
                            startTime,
                            endTime,
                            max(y),
                            t[np.argmax(y)],
                            mode(y)[0][0],
                            np.average(y)
))

撰写回答