def drawGraph(): xy = XY(stroke=False) xy.title = 'Correlation' xy.add('A', [(0, 0), (.1, .2), (.3, .1), (.5, 1), (.8, .6), (1, 1.08), (1.3, 1.1), (2, 3.23), (2.43, 2)]) xy.add('B', [(.1, .15), (.12, .23), (.4, .3), (.6, .4), (.21, .21), (.5, .3), (.6, .8), (.7, .8)]) xy.add('C', [(.05, .01), (.13, .02), (1.5, 1.7), (1.52, 1.6), (1.8, 1.63), (1.5, 1.82), (1.7, 1.23), (2.1, 2.23), (2.3, 1.98)]) xy.render_to_png('mygraph.png') xy.render_in_browser()
for m in range(n + 1): if m == k: continue p *= sin(0.5 * (X - x[m])) / sin(0.5 * (x[k] - x[m])) s += y[k] * p yield X, s """ These functions takes two lists of points x and y and returns an iterator over the interpolation between all these points with `precision` interpolated points between each of them """ INTERPOLATIONS = { 'quadratic': quadratic_interpolate, 'cubic': cubic_interpolate, 'hermite': hermite_interpolate, 'lagrange': lagrange_interpolate, 'trigonometric': trigonometric_interpolate } if __name__ == '__main__': from pygal import XY points = [(.1, 7), (.3, -4), (.6, 10), (.9, 8), (1.4, 3), (1.7, 1)] xy = XY(show_dots=False) xy.add('normal', points) xy.add('quadratic', quadratic_interpolate(*zip(*points))) xy.add('cubic', cubic_interpolate(*zip(*points))) xy.render_in_browser()