[英]input data to create histogram in Quickdraw
我陷入一個問題。 如果我在列表中有一組數據(例如,學生人數及其相應的年級),我將如何編碼以在quickdraw中創建直方圖?
Quickdraw不支持開箱即用的圖形。 一切都需要自己繪制和映射,這是一個示例:
#!/bin/python
import random
#create 40 random grades
grades = [(float(int(float(20*random.random())))/2)+0.5 for i in xrange(40)]
#count the occurrence of each grade
histogram = []
for i in sorted(set(grades)): histogram.append([int(i*50),grades.count(i)])
#some grid information
gridsize = 500
griddiv = 20
topleft = 50
#graph title
print 'text', '"','Histogram of Grades','"', 220, 25
#x axis title
for i in range(1,21):
print 'text', '"',float(i)/2,'"', (i+1)*25, 570
#y axix title
for i in range(0,11):
print 'text', '"',i,'"', 25, 600-(i+1)*50
#grid
print 'grid', topleft, topleft, gridsize, gridsize, griddiv, griddiv
#chart rectangles
print 'color 0 140 0'
for i in histogram:
print 'fillrect',i[0]-25+topleft, gridsize-(50*i[1])+topleft,gridsize/griddiv,50*i[1],'b'+str(i[0])
print 'fillrect', 'color','b'+str(i[0])
將代碼保存在histogram.py
然后運行python histogram.py | java -jar quickdraw.jar
警告python histogram.py | java -jar quickdraw.jar
不太好! 更好的方法是使用python庫matplotlib
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.