本文整理汇总了Python中pygooglechart.SimpleLineChart.set_axis_labels方法的典型用法代码示例。如果您正苦于以下问题:Python SimpleLineChart.set_axis_labels方法的具体用法?Python SimpleLineChart.set_axis_labels怎么用?Python SimpleLineChart.set_axis_labels使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pygooglechart.SimpleLineChart
的用法示例。
在下文中一共展示了SimpleLineChart.set_axis_labels方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: show
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def show(request, isa_id):
isa = get_object_or_404(ISA, pk=isa_id)
isafunds = isa.isafund_set.all()
start_date = isa.created
end_date = date.today()
current_date = start_date
data = []
while current_date <= end_date:
value = 0
for isafund in isafunds:
try:
fundprice = isafund.fund.fundprice_set.get(date=current_date)
value += fundprice.price * isafund.quantity
except FundPrice.DoesNotExist:
pass
data.append(value)
current_date += timedelta(1)
chart = SimpleLineChart(500, 200, y_range=[min(data), max(data)])
chart.add_data(data)
chart.add_data([data[0], data[0]])
chart.set_colours(['0000FF', 'AAAAAA'])
chart.fill_solid('bg', 'DDDDFF')
chart.set_axis_labels(Axis.LEFT, [int(min(data)), int(max(data))])
chart.set_axis_labels(Axis.BOTTOM, [start_date, end_date])
url = chart.get_url()
return render_to_response('isas/show.html', {'isa': isa, 'chart_url': url})
示例2: get
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def get(self):
list = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep']
list2 = []
for title in list:
list2.append( int(getdata(title,'funds').custom['amount'].text))
max_y = 10000
chart = SimpleLineChart(200, 125, y_range=[0, max_y])
chart.add_data([2000,3000,5000,1200,5000,4000,1000,3000,5900])
# Set the line colour to blue
chart.set_colours(['0000FF'])
# Set the vertical stripes
chart.fill_linear_stripes(Chart.CHART, 0, 'CCCCCC', 0.2, 'FFFFFF', 0.2)
# Set the horizontal dotted lines
chart.set_grid(0, 25, 5, 5)
# The Y axis labels contains 0 to 100 skipping every 25, but remove the
# first number because it's obvious and gets in the way of the first X
# label.
left_axis = range(0, max_y + 1, 25)
left_axis[0] = ''
chart.set_axis_labels(Axis.LEFT, left_axis)
# X axis labels
chart.set_axis_labels(Axis.BOTTOM, list)
url2 = chart.get_url()
self.response.out.write(template.render('template/donate.html',{
'url2' :url2, }))
示例3: getRollingAverageGraph
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def getRollingAverageGraph(cursor, colName, rollingWindowDays, title=""):
sqlCMD = "SELECT pDate, %s from %s" %(colName, N.JOBS_SUMMARY_TABLENAME)
cursor.execute(sqlCMD)
results = cursor.fetchall()
beginWindowIndex = 0
endWindowIndex = 0
xData = []
yData = []
while endWindowIndex < len(results):
while endWindowIndex < len(results) and (results[endWindowIndex][0] - results[beginWindowIndex][0]).days <= rollingWindowDays:
endWindowIndex += 1
yData.append( sum(results[i][1] for i in xrange(beginWindowIndex, endWindowIndex, 1)) / float(endWindowIndex - beginWindowIndex))
xData.append(results[endWindowIndex-1][0])
beginWindowIndex = endWindowIndex
chart = SimpleLineChart(680, 400, y_range = (min(yData)-1, max(yData)+1))
chart.add_data(yData)
yLabels = range(0, int(max(yData)+1), 5)
yLabels[0] = ''
xLabels = [str(xData[-i]) for i in xrange(1, len(xData)-1, int(0.2*len(xData)))]
xLabels.reverse()
chart.set_axis_labels(Axis.LEFT, yLabels)
chart.set_axis_labels(Axis.BOTTOM, xLabels)
chart.set_title("Rolling %i-Day Average %s" % (rollingWindowDays, title))
imgbin = chart.download()
toReturn = cStringIO.StringIO(imgbin)
toReturn.seek(0)
return chart.get_url(), toReturn
示例4: get
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def get(self):
counters = tasks.Counter.all().fetch(10)
rows = [{'name':c.key().name(), 'count':c.count} for c in counters]
chart = SimpleLineChart(1000, 300)
for counter in counters:
query = counter.snapshots
query.order('-date')
snapshots = query.fetch(30)
counts = [s.count for s in snapshots]
dates = [s.date.strftime("%d/%m") for s in snapshots]
for i in xrange(len(counts) - 1):
counts[i] -= counts[i+1]
counts.reverse()
dates.reverse()
chart.add_data(counts[1:])
chart.set_axis_labels(pygooglechart.Axis.BOTTOM, dates[1:])
chart.set_axis_labels(pygooglechart.Axis.LEFT, range(0, chart.data_y_range()[1], 5))
hsv_colours = [(float(x) / 255, 1, 1) for x in range(0, 255, 255 / len(counters))]
rgb_colours = [colorsys.hsv_to_rgb(*x) for x in hsv_colours]
hex_colours = ['%02x%02x%02x' % (int(x[0] * 255), int(x[1] * 255), int(x[2] * 255)) for x in rgb_colours]
chart.set_colours(hex_colours)
chart.set_legend([c.key().name() for c in counters])
path = os.path.join(os.path.dirname(__file__), self.TEMPLATE)
self.response.out.write(template.render(path,
{ 'url': chart.get_url(),
'counters': rows }))
示例5: makeChartOfDay
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def makeChartOfDay(data):
max_user = 150
chart = SimpleLineChart(400, 325, y_range=[0, max_user])
dataChart = []
for ore in range(24):
ore = str(ore)
if len(ore) == 1:
ore = '0'+ore
try:
dataChart.append(userList[data]['stats']['online'][ore])
except:
dataChart.append(0)
chart.add_data(dataChart)
chart.set_colours(['0000FF'])
left_axis = range(0, max_user + 1, 25)
left_axis[0] = ''
chart.set_axis_labels(Axis.LEFT, left_axis)
# chart.set_axis_labels(Axis.BOTTOM, \
# ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'])
chart.set_axis_labels(Axis.BOTTOM, \
range(0, 24))
return chart.get_url()
示例6: velocity_chart
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def velocity_chart(self):
graph_width = 600
graph_height = 300
x_max = self.total_iterations
y_max = max(max(self.estimate_stories_data()),
max(self.estimate_tasks_data()),
max(self.work_data()))
chart = SimpleLineChart(graph_width, graph_height,
x_range=(1, x_max + 1), y_range=(0, y_max + 1))
chart.add_data(self.estimate_stories_data())
chart.add_data(self.estimate_tasks_data())
chart.add_data(self.work_data())
chart.set_grid(0, 100.0 / y_max + 1, 5, 5)
chart.set_colours(['FF0000', '00FF00', '0000FF'])
chart.set_legend([_('rough story estimates'),
_('task estimates'), _('worked')])
chart.set_legend_position('b')
chart.set_axis_labels(Axis.LEFT, ['', '', _('days')])
chart.set_axis_labels(Axis.BOTTOM, range(1, x_max + 1))
chart.set_axis_range(Axis.LEFT, 0, y_max + 1)
return chart.get_url(data_class=ExtendedData)
示例7: __init__
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
class DiceChart:
chart = None
def __init__(self, data, iter=0, width=300, height=300):
self.chart = SimpleLineChart(width, height, y_range=(0, 10))
legend = []
colors = ["cc0000", "00cc00", "0000cc", "990000", "009900", "000099", "0099ff", "FF9900", "9900ff", "ff0099"]
title = "die rolls per objective"
if iter > 0:
title = title + " (%s samples)" % iter
for i in data.keys():
self.chart.add_data(data[i])
legend.append(str(i))
logging.debug(legend)
logging.debug(colors)
self.chart.set_colours(colors)
self.chart.set_legend(legend)
grid_x_amount = 100 / (len(data[i]) - 1)
self.chart.set_grid(grid_x_amount, 10, 5, 5)
left_axis = range(0, 11, 1)
left_axis[0] = ""
self.chart.set_axis_labels(Axis.LEFT, left_axis)
bottom_len = len(data[i]) + 2
bottom_axis = range(2, bottom_len, 1)
self.chart.set_axis_labels(Axis.BOTTOM, bottom_axis)
self.chart.set_title(title)
def download(self, name="dicechart.png"):
self.chart.download(name)
示例8: _partyline
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def _partyline(self, party_results):
if self.request.GET.get('percentages') == 'true':
key = 'percentage'
else:
key = 'count'
maxcount = 0
allcounts = []
granularity = self.request.GET.get('granularity')
months = []
for party, results in party_results.iteritems():
counts = [x.get(key) for x in results['results']]
allcounts.append(counts)
if max(counts) > maxcount:
maxcount = max(counts)
if granularity == 'month':
months = [x['month'] for x in results['results']]
januaries = [x for x in months if x.endswith('01')]
january_indexes = [months.index(x) for x in januaries]
january_percentages = [int((x / float(len(months))) * 100) for x in january_indexes]
#times = [x.get(granularity) for x in results['results']]
width = int(self.request.GET.get('width', 575))
height = int(self.request.GET.get('height', 318))
chart = SimpleLineChart(width, height, y_range=(0, max(counts)))
chart.fill_solid('bg', '00000000') # Make the background transparent
chart.set_grid(0, 50, 2, 5) # Set gridlines
if granularity == 'month':
index = chart.set_axis_labels(Axis.BOTTOM, [x[:4] for x in januaries[::2]])
chart.set_axis_positions(index, [x for x in january_percentages[::2]])
if key == 'percentage':
label = '%.4f' % maxcount
else:
label = int(maxcount)
index = chart.set_axis_labels(Axis.LEFT, [label, ])
chart.set_axis_positions(index, [100, ])
for n, counts in enumerate(allcounts):
chart.add_data(counts)
chart.set_line_style(n, thickness=2) # Set line thickness
colors = {'R': 'bb3110', 'D': '295e72', }
chart_colors = []
chart_legend = []
for k in party_results.keys():
chart_colors.append(colors.get(k, '000000'))
chart_legend.append(k)
chart.legend_position = 'b'
chart.set_colours(chart_colors)
if self.request.GET.get('legend', 'true') != 'false':
chart.set_legend(chart_legend)
return chart.get_url()
示例9: getLineGraph
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def getLineGraph(data,line1color,line2color):
# Set the vertical range based on data values
tweets = [d[0] for d in data]
retweets = [d[1] for d in data]
ratio = [str(int(d[1]/d[0]*100))+'%' for d in data]
hours = [d[2] for d in data]
mx = max(tweets)
mn = min(retweets)
buffer = (mx - mn)/100 # average retweets have consitently been less
min_y = mn - buffer
max_y = mx + buffer
# Chart size of 750x400 pixels and specifying the range for the Y axis
chart = SimpleLineChart(750, 400, y_range=[min_y, max_y])
chart.set_legend(['Tweets','Retweets'])
chart.set_legend_position('t')
# Add the chart data
chart.add_data(tweets)
chart.add_data(retweets)
# Set the line colour to blue
chart.set_colours([line1color,line2color])
# Set the horizontal dotted lines
chart.set_grid(0, 25, 5, 5)
#set left axis to values range
left_axis = range(min_y, max_y, (max_y-min_y)/10)
chart.set_axis_labels(Axis.BOTTOM, hours)
chart.set_axis_labels(Axis.BOTTOM, ratio)
chart.set_axis_labels(Axis.LEFT, left_axis)
return chart.get_url()
示例10: get_pace_chart_url
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def get_pace_chart_url(self, width, height):
if len(self.positions()) == 0:
return ''
pace = []
int_dist = []
s = 0
last_p = None
for p in self.positions():
if last_p != None:
ds = distance.distance((p.latitude, p.longitude), \
(last_p.latitude, last_p.longitude)).kilometers
s = s + int(ds * 1000)
dt = (p.time - last_p.time).seconds
if ds > 0:
pace.append(dt / ds)
int_dist.append(s)
last_p = p
int_pace = [int(p) for p in ema(pace, 20)]
min_pace = int(min(int_pace) * 0.95)
max_pace = int(max(int_pace) / 0.95)
mid_pace = (max_pace + min_pace) / 2
min_pace_str = '%02d:%02d' % (min_pace / 60, min_pace % 60)
mid_pace_str = '%02d:%02d' % (mid_pace / 60, mid_pace % 60)
max_pace_str = '%02d:%02d' % (max_pace / 60, max_pace % 60)
chart = SimpleLineChart(width, height, y_range = (min_pace, max_pace))
chart.add_data(int_pace)
chart.set_axis_labels(Axis.LEFT, [min_pace_str, mid_pace_str, max_pace_str])
return chart.get_url()
示例11: RenderGoogleChart
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def RenderGoogleChart(data, filename):
"""
create a GoogleChart from decoded data under filename (.png)
"""
print "Rendering GoogleChart [%s]" % filename
# Retrieve chart data
elements=[]
max_y = 0
min_y = 9999
for i in range(len(data["time"])):
if data["cps"][i] > max_y: max_y = data["cps"][i]
if data["cps"][i] < min_y: min_y = data["cps"][i]
elements.append(data["cps"][i])
# Chart size of 600x375 pixels and specifying the range for the Y axis
chart = SimpleLineChart(600, 375, y_range=[min_y-0.1, max_y+0.1])
# Add the chart data
chart.add_data(elements)
# Set the line colour to blue
chart.set_colours(['0000FF'])
# Set the vertical stripes
chart.fill_linear_stripes(Chart.CHART, 0, 'CCCCCC', 0.2, 'FFFFFF', 0.2)
# Set the horizontal dotted lines
chart.set_grid(0, 25, 5, 5)
# Define the Y axis labels
left_axis = [x * 0.1 for x in range(0, int(max_y/0.1))]
left_axis[0] = 'CPS'
chart.set_axis_labels(Axis.LEFT, left_axis)
chart.download(filename)
示例12: get_chart_image
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def get_chart_image(self, data, **kw):
"""Return a image file path
Arguments::
data -- a list containing the X,Y data representation
"""
from pygooglechart import SimpleLineChart, Axis
# Set the vertical range from 0 to 100
try:
max_y = max(data['y'])
min_y = min(data['y'])
except:
min_y = 0
max_y = 100
width = int(kw.get('width', 600))
height = int(kw.get('height', 250))
# Chart size of widthxheight pixels and specifying the range for the Y axis
chart = SimpleLineChart(width, height, y_range=[0, max_y])
# Add the chart data
chart.add_data(data['y'])
# Set the line colour to blue
chart.set_colours(['0000FF'])
try:
step_x = int(100/(len(data['x'])-1))
except:
step_x = 0
chart.set_grid(step_x, 10, 5, 5)
# The Y axis labels contains min_y to max_y spling it into 10 equal parts,
#but remove the first number because it's obvious and gets in the way
#of the first X label.
left_axis = [utils.intcomma(x) for x in range(0, max_y + 1, (max_y)/10)]
left_axis[0] = ''
chart.set_axis_labels(Axis.LEFT, left_axis)
# X axis labels
chart.set_axis_labels(Axis.BOTTOM, data['x'])
#Generate an hash from arguments
kw_hash = hash(tuple(sorted(kw.items())))
data_hash = hash(tuple(sorted([(k, tuple(v))
for k, v in data.iteritems()])))
args_hash = str(kw_hash) + str(data_hash)
image_path = os.path.join(TARGET_DIR, "%s.png" % args_hash)
if bool(kw.get('refresh', False)) or args_hash not in self.charts:
#Get image from google chart api
chart.download(image_path)
if args_hash not in self.charts:
self.charts.append(args_hash)
self._p_changed = True
return image_path
示例13: simple_random
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def simple_random():
chart = SimpleLineChart(300, 100, y_range=(0, 100))
max_y = 100
list_data = [10, 90, 80, 10, 10, 20, 30, 20, 15, 45, 56, 42, 92]
chart.add_data(list_data)
chart.add_data(reversed(list_data))
chart.set_axis_labels(Axis.LEFT, ['', max_y / 2, max_y])
chart.set_axis_labels(Axis.BOTTOM, ['Sep', 'Oct', 'Nov', 'Dec'])
chart.download('line-simple-random.png')
示例14: simple_line
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def simple_line():
chart = SimpleLineChart(settings.width, settings.height,
x_range=(0, 35))
chart.set_colours(['00ff00', 'ff0000','ACff0C','B0ffE0','C0ffFF'])
chart.add_data([1,2,3,4,5])
chart.add_data([1,4,9,16,25])
chart.set_title('This is title')
chart.set_axis_labels('r', 'str')
chart.set_legend( ['a','b','c','d','e'])
chart.download('simple-line.png')
示例15: lineGraphFeed
# 需要导入模块: from pygooglechart import SimpleLineChart [as 别名]
# 或者: from pygooglechart.SimpleLineChart import set_axis_labels [as 别名]
def lineGraphFeed(feed):
name = feed.getAttribute("name")
observations = feed.getElementsByTagName("observation")
print " Feed %s has %d observations" % (name,len(observations))
data = []
for obs in observations:
value = int(obs.getAttribute("value"))
#print " val:%s (%s)" % (value, type(value))
data.insert(0,value/10)
#data.reverse # remeber the feed is reversed
print "Max Data: %s" % max(data)
max_y = int(math.ceil(max(data)/100.0))*100
print "Max_y : %s" % max_y
chart = SimpleLineChart(180, 120, y_range=[0, max_y])
chart.add_data(data)
lftAxisMax = max_y/100;
print "lftAxisMax %s"%lftAxisMax
#left_axis = range(0, lftAxisMax,(lftAxisMax/4.0))
left_axis = []
right_axis = []
for i in range(0,4+1):
kw = (i*lftAxisMax/4.0)
left_axis.append(kw)
right_axis.append(kw*24)
left_axis[0] = 'kW' # remove the first label
right_axis[0] = 'kWh/d' # remove the first label
chart.set_axis_labels(Axis.LEFT, left_axis)
#chart.set_axis_labels(Axis.RIGHT, right_axis)
chart.set_title(name)
# facebook colors
chart.set_title_style('7f93bc',16)
#chart.set_colours(['7f93bc'])
chart.set_colours(['3b5998']) #darker blue
#Colors
colors=False
if (colors):
# Set the line colour to ...
chart.set_colours(['FFFFFF'])
# 0 here is the axis index ? 0 works for now
chart.set_title_style('FFFFFF',16)
chart.set_axis_style(0,'FFFFFF')
chart.set_axis_style(1,'FFFFFF')
chart.fill_linear_gradient(Chart.BACKGROUND,90,'000000',0.9,'007700',0.1)
print chart.get_url()
chart.download('%s-line.png'%name)