zoukankan      html  css  js  c++  java
  • 第一章节

    第一章节:


    得到一个使用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格式文件
  • 相关阅读:
    遗传算法(Genetic Algorithm, GA)及MATLAB实现
    CCF CSP 201809-2 买菜
    PAT (Basic Level) Practice (中文)1008 数组元素循环右移问题 (20 分)
    PAT (Basic Level) Practice (中文)1006 换个格式输出整数 (15 分)
    PAT (Basic Level) Practice (中文)1004 成绩排名 (20 分)
    PAT (Basic Level) Practice (中文)1002 写出这个数 (20 分)
    PAT (Advanced Level) Practice 1001 A+B Format (20 分)
    BP神经网络(原理及MATLAB实现)
    问题 1676: 算法2-8~2-11:链表的基本操作
    问题 1744: 畅通工程 (并查集)
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349181.html
Copyright © 2011-2022 走看看