私はMySQLデータベースからこの種のデータを読んでいます:
('c9', 2862, datetime.datetime(2016, 4, 30, 22, 34, 38))
('f2', 2862, datetime.datetime(2016, 4, 30, 22, 35, 38))
('f3', 2864, datetime.datetime(2016, 4, 30, 22, 36, 38))
('f4', 2863, datetime.datetime(2016, 4, 30, 22, 37, 38))
('c9', 2880, datetime.datetime(2016, 4, 30, 22, 38, 38))
('f2', 2862, datetime.datetime(2016, 4, 30, 22, 39, 38))
# and so on!
pygal
ライブラリを使用して、列 1 (c9、f2、f3...) のすべてのノードをそれぞれの時間で 1 つのグラフに結合するグラフを作成したいと考えています。だから私は次のことを試しました:
time = []
y_c9 = []
y_f3 = []
y_f2 = []
for row in data:
time.append(row[2])
if row[0] == 'c9':
y_c9.append(row[1])
if row[0] == 'f2':
y_f2.append(row[1])
if row[0] == 'f3':
y_f3.append(row[1])
# and the same for the rest
graph.x_labels = time
graph.add('c9', y_c9)
graph.add('f2', y_f2)
graph.add('f3', y_f3
ただし、c9、f2、f3 の短い線が得られ、時間 (x 軸) はより長い値になるため、これではうまくいきません (y_c9、y_f2、y_f3 の長さは < 時間の長さです)。 if ステートメントの他の組み合わせをいくつか試しましたが、うまくいきませんでした。
適切なグラフを作成するにはどうすればよいですか?