第一章节:



得到一个使用ChartDirector的感觉, 验证ChartDirector 开发环境是设置正确的,



我们开始通过创建一个简单的条形图开始:



如果你还没有尝试示例程序,强烈推荐你尝试它们现在。



# -*- coding:utf-8 -*-

# !/usr/bin/python

from pychartdir import *



# The data for the bar chart

data = [85, 156, 179.5, 211, 123]



# The labels for the bar chart

labels = ["Mon", "Tue", "Wed", "Thu", "Fri"]



# Create a XYChart object of size 250 x 250 pixels

c = XYChart(250, 250)



# Set the plotarea at (30, 20) and of size 200 x 200 pixels

c.setPlotArea(30, 20, 200, 200)



# Add a bar chart layer using the given data

c.addBarLayer(data)



# Set the labels on the x axis.

c.xAxis().setLabels(labels)



# Output the chart

c.makeChart("simplebar.png")





代码解释如下:



from pychartdir import *



该行导入ChartDirector ,以便你可以使用



c = XYChart(250, 250)





第一步是创建任何图表在ChartDirector 是创建适当的图标对象



在这个例子中,一个XYChart 为250*250 像素的XyCar对象。



在ChartDirector,XYChart 表示任何图表有x-axis and y-axis, 



例如我们正在绘制的条形图



c.setPlotArea(30, 30, 200, 200)



第2步创建一个条形图 是指定我么需要在哪里绘制条形图



矩形是通过使用坐上的(x,y)坐标来指定 ,结合它的宽度和高度





对于这个简单的条形图,我们使用图表的大部分区域来绘制条形图。



我们会允许保留一些余量来允许轴上的文本标签



在上面的代码中,左上角是设置为(30,30),



宽度和高度设置为200像素。

c.setPlotArea(30, 30, 200, 200)



因为整个chart 是250 x 250 in size, 这里会有20-30 像素余量用于文本标签



注意  ChartDirector  使用一个像素坐标系统,那是计算机屏幕惯例



x 像素坐标是增加从左到右



y 像素坐标是增加从上到下



原点(0,0) 是在左上角



对于更加复杂的图标可能包含标题,图例框和其他事物的更复杂的图表,



我们可以使用此方法(以及其他方法)来设计整个图表的精确布局



c.addBarLayer(data)



上面code 增加一个bar layer 到XY图表。



在ChartDirector,任何图表类型 有 x-axis and y-axis 是被表示为一个layer 在XYChart



一个XYChart 可以包含多个layers



这个允许"组合图" 被容易的通过组合不同的layers 在相同的图标上



在上面的代码中,参数是一个数字数组表示 数据点的值



c.xAxis().setLabels(labels)





上面的代码设置标签在x-axis. 第一个方法XYChart.xAxis 检索Axis object 表示 x-axis. 



第2个方法 Axis.setLabels 榜之text labels 到x-axis



setLabels方法的参数是一个文字字符串数组



c.makeChart("simplebar.png")





至此,图标就完成了,我们需要以某种方式输出它,在我们的简单项目中,我们将图标输出为PNG格式文件