def testis_number(self): self.assertTrue(chart_encoding.is_number("1")) self.assertTrue(chart_encoding.is_number("0")) self.assertTrue(chart_encoding.is_number("-1")) self.assertFalse(chart_encoding.is_number("")) self.assertFalse(chart_encoding.is_number("a")) self.assertFalse(chart_encoding.is_number("4a"))
for key in dir(self): if not key.startswith("__"): attr = getattr(self, key) if isinstance(attr, basestring) and len(attr) > 0: # skip instance methods, etc. s += "&" + key + "=" + attr return s def asUrl(self): url = chartImageUrl + self.str() return url def asImgElement(self): url = self.asUrl() width, height = self.getDimensions() imgElement = chartImageTemplate % {"url": url, "width": width, "height": height} return imgElement if __name__ == "__main__": c = Chart() data = [] for arg in sys.argv: if arg.startswith("ch") and string.find(arg, "=") > 0: (name, value) = string.split(arg, "=") setattr(c, name, value) elif chart_encoding.is_number(arg): data.append(float(arg)) if len(data) > 0: c.addData(data) print(c.str())