bar setwidth( you might also have noted the economy of notation in drawing the labels since we don' ever change the labelsassigning them to variable is unnecessary we can just create text objecttell it to draw itselfand be done with it here is an exampletext(point( , ) 'draw(winfinallytake close look at the use of the year variable in the loop for year in range( , )the expression range( , produces sequence of ints - the loop index variable year marches through this sequence on successive iterations of the loop sothe first time through year is then then etc up to the value of year is then used to compute the proper position of the lower left corner of each bar xll year hope you are starting to get the hang of graphics programming it' bit strenuousbut very addictive choosing coordinates the lion' share of the work in designing the futval_graph program was in determining the precise coordinates where things would be placed on the screen most graphics programming problems require some sort of coordinate transformation to change values from real-world problem into the window coordinates that get mapped onto the computer screen in our examplethe problem domain called for values representing the year ( - and values representing monetary amounts ($ -$ , we had to transform these values to be represented in window it' nice to work through an example or two to see how this transformation happensbut it makes for tedious programming coordinate transformation is an integral and well-studied component of computer graphics it doesn' take too much mathematical savvy to see that the transformation process always follows the same general pattern anything that follows pattern can be done automatically in order to save you the trouble of having to explicitly convert back and forth between coordinate systemsthe graphics module provides simple mechanism to do it for you when you create graphwin you can specify coordinate system for the window using the setcoords method the method requires four parameters specifying the coordinates of the lower-left and upper-right cornersrespectively you can then use this coordinate system to place graphical objects in the window to take simple examplesuppose we just want to divide the window into nine equal squarestic-tac-toe fashion this could be done without too much trouble using the default windowbut it would require bit of arithmetic the problem becomes trivial if we first change the coordinates of the window to run from to in both dimensions