我有一个如下所示的 csv 文件:
tau,rh,temp,
00,100,23,
03,85,25,
06,98,26,
09,100,15,
现在我知道如何从 csv 文件中绘制图形。我有下面的脚本:
import matplotlib.pyplot as plt
import numpy as np
import csv
import sys
file=sys.argv[1]
fname = open(file,'rt')
plt.plotfile(fname, ('tau', 'rh', 'tmp'), subplots=False)
plt.show()
这似乎工作正常。但是,我希望能够将 tmp 绘制在一组单独的 y 轴上,而不是 rh。我知道何时在多个轴上绘制多个图,您必须执行以下操作:
t = np.arange(1, 25.0, 5)
s1 = [1,2,3,4,5]
ax1.plot(t, s1, 'b-')
ax1.set_xlabel('time (s)')
# Make the y-axis label, ticks and tick labels match the line color.
ax1.set_ylabel('rh', color='b')
ax1.tick_params('y', colors='b')
ax2 = ax1.twinx()
s2 = [1,2,4,9]
ax2.plot(t, s2, 'r.')
ax2.set_ylabel('tmp', color='r')
ax2.tick_params('y', colors='r')
你得到两个地块。我想要做的是在上面的示例中基于读取 csv 文件将 s1 设置为 rh 的 csv 值,并将 s2 设置为 tmp 的 csv 值。我该怎么做呢?