Python:使用pycha快速绘制办公常用图(饼图、垂直直方图、水平直方图、散点图等七种图形)
2014-11-13 14:13
1076 查看
一、代码:
[python] view
plaincopy
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import cairo
import pycha.pie
import pycha.bar
import pycha.scatter
import pycha.stackedbar
import pycha.line
#设置画布
def set_charvalue():
width,height=600,600
surface=cairo.ImageSurface(cairo.FORMAT_ARGB32,width,height)
return surface
#画饼图
def draw_pie(surface, options, dataSet):
chart=pycha.pie.PieChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\Pie.png')
#垂直直方图
def draw_vertical_bar(surface, options, dataSet):
chart=pycha.bar.VerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\vertical_bar.png')
#垂直水平直方图
def draw_horizontal_bar(surface, options, dataSet):
chart = pycha.bar.HorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\horizontal_bar.png')
#线图
def draw_line(surface, options, dataSet):
chart = pycha.line.LineChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\line.png')
#点图
def draw_scatterplot(surface, options, dataSet):
chart = pycha.scatter.ScatterplotChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\scatterplotChart.png')
#垂直块图
def draw_stackedverticalbarChar(surface, options, dataSet):
chart = pycha.stackedbar.StackedVerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedVerticalBarChart.png')
#水平块图
def draw_stackedhorizontalbarChart(surface, options, dataSet):
chart = pycha.stackedbar.StackedHorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedhorizontalbarChart.png')
if __name__ == '__main__':
'''''
Function:使用pycha画各种图表
Input:NONE
Output: NONE
author: socrates
blog:http://blog.csdn.net/dyx1024
date:2012-02-28
'''
#数据来源
dataSet=(
('iphone',((0,1),(1,3),(2,2.5))),
('htc',((0,2),(1,4),(2,3))),
('hw',((0,5),(1,1,),(2,0.5))),
('zte',((0,3),(1,2,),(2,1.5))),
)
#图像属性定义
options={
'legend':{'hide':False},
'title':'手机销售量分布图(by dyx1024)',
'titleColor':'#0000ff',
'titleFont':'字体',
'background':{'chartColor': '#ffffff'},
'axis':{'labelColor':'#ff0000'},
}
surface = set_charvalue()
#根据需要调用不同函数画不同形状的图
#draw_pie(surface, options, dataSet)
#draw_vertical_bar(surface, options, dataSet)
#draw_horizontal_bar(surface, options, dataSet)
#draw_scatterplot(surface, options, dataSet)
#draw_stackedverticalbarChar(surface, options, dataSet)
#draw_stackedhorizontalbarChart(surface, options, dataSet)
draw_line(surface, options, dataSet)
[python] view
plaincopy
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import cairo
import pycha.pie
import pycha.bar
import pycha.scatter
import pycha.stackedbar
import pycha.line
#设置画布
def set_charvalue():
width,height=600,600
surface=cairo.ImageSurface(cairo.FORMAT_ARGB32,width,height)
return surface
#画饼图
def draw_pie(surface, options, dataSet):
chart=pycha.pie.PieChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\Pie.png')
#垂直直方图
def draw_vertical_bar(surface, options, dataSet):
chart=pycha.bar.VerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\vertical_bar.png')
#垂直水平直方图
def draw_horizontal_bar(surface, options, dataSet):
chart = pycha.bar.HorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\horizontal_bar.png')
#线图
def draw_line(surface, options, dataSet):
chart = pycha.line.LineChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\line.png')
#点图
def draw_scatterplot(surface, options, dataSet):
chart = pycha.scatter.ScatterplotChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\scatterplotChart.png')
#垂直块图
def draw_stackedverticalbarChar(surface, options, dataSet):
chart = pycha.stackedbar.StackedVerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedVerticalBarChart.png')
#水平块图
def draw_stackedhorizontalbarChart(surface, options, dataSet):
chart = pycha.stackedbar.StackedHorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedhorizontalbarChart.png')
if __name__ == '__main__':
'''''
Function:使用pycha画各种图表
Input:NONE
Output: NONE
author: socrates
blog:http://blog.csdn.net/dyx1024
date:2012-02-28
'''
#数据来源
dataSet=(
('iphone',((0,1),(1,3),(2,2.5))),
('htc',((0,2),(1,4),(2,3))),
('hw',((0,5),(1,1,),(2,0.5))),
('zte',((0,3),(1,2,),(2,1.5))),
)
#图像属性定义
options={
'legend':{'hide':False},
'title':'手机销售量分布图(by dyx1024)',
'titleColor':'#0000ff',
'titleFont':'字体',
'background':{'chartColor': '#ffffff'},
'axis':{'labelColor':'#ff0000'},
}
surface = set_charvalue()
#根据需要调用不同函数画不同形状的图
#draw_pie(surface, options, dataSet)
#draw_vertical_bar(surface, options, dataSet)
#draw_horizontal_bar(surface, options, dataSet)
#draw_scatterplot(surface, options, dataSet)
#draw_stackedverticalbarChar(surface, options, dataSet)
#draw_stackedhorizontalbarChart(surface, options, dataSet)
draw_line(surface, options, dataSet)
二、测试:
1、函数draw_pie(surface, options, dataSet):
2、函数draw_vertical_bar(surface, options, dataSet):
3、函数draw_horizontal_bar(surface, options, dataSet):
4、函数draw_line(surface, options, dataSet):
5、函数draw_scatterplot(surface, options, dataSet):
6、函数draw_stackedverticalbarChar(surface, options, dataSet):
7、函数draw_stackedhorizontalbarChart(surface, options, dataSet):
[python] view
plaincopy
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import cairo
import pycha.pie
import pycha.bar
import pycha.scatter
import pycha.stackedbar
import pycha.line
#设置画布
def set_charvalue():
width,height=600,600
surface=cairo.ImageSurface(cairo.FORMAT_ARGB32,width,height)
return surface
#画饼图
def draw_pie(surface, options, dataSet):
chart=pycha.pie.PieChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\Pie.png')
#垂直直方图
def draw_vertical_bar(surface, options, dataSet):
chart=pycha.bar.VerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\vertical_bar.png')
#垂直水平直方图
def draw_horizontal_bar(surface, options, dataSet):
chart = pycha.bar.HorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\horizontal_bar.png')
#线图
def draw_line(surface, options, dataSet):
chart = pycha.line.LineChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\line.png')
#点图
def draw_scatterplot(surface, options, dataSet):
chart = pycha.scatter.ScatterplotChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\scatterplotChart.png')
#垂直块图
def draw_stackedverticalbarChar(surface, options, dataSet):
chart = pycha.stackedbar.StackedVerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedVerticalBarChart.png')
#水平块图
def draw_stackedhorizontalbarChart(surface, options, dataSet):
chart = pycha.stackedbar.StackedHorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedhorizontalbarChart.png')
if __name__ == '__main__':
'''''
Function:使用pycha画各种图表
Input:NONE
Output: NONE
author: socrates
blog:http://blog.csdn.net/dyx1024
date:2012-02-28
'''
#数据来源
dataSet=(
('iphone',((0,1),(1,3),(2,2.5))),
('htc',((0,2),(1,4),(2,3))),
('hw',((0,5),(1,1,),(2,0.5))),
('zte',((0,3),(1,2,),(2,1.5))),
)
#图像属性定义
options={
'legend':{'hide':False},
'title':'手机销售量分布图(by dyx1024)',
'titleColor':'#0000ff',
'titleFont':'字体',
'background':{'chartColor': '#ffffff'},
'axis':{'labelColor':'#ff0000'},
}
surface = set_charvalue()
#根据需要调用不同函数画不同形状的图
#draw_pie(surface, options, dataSet)
#draw_vertical_bar(surface, options, dataSet)
#draw_horizontal_bar(surface, options, dataSet)
#draw_scatterplot(surface, options, dataSet)
#draw_stackedverticalbarChar(surface, options, dataSet)
#draw_stackedhorizontalbarChart(surface, options, dataSet)
draw_line(surface, options, dataSet)
[python] view
plaincopy
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import cairo
import pycha.pie
import pycha.bar
import pycha.scatter
import pycha.stackedbar
import pycha.line
#设置画布
def set_charvalue():
width,height=600,600
surface=cairo.ImageSurface(cairo.FORMAT_ARGB32,width,height)
return surface
#画饼图
def draw_pie(surface, options, dataSet):
chart=pycha.pie.PieChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\Pie.png')
#垂直直方图
def draw_vertical_bar(surface, options, dataSet):
chart=pycha.bar.VerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\vertical_bar.png')
#垂直水平直方图
def draw_horizontal_bar(surface, options, dataSet):
chart = pycha.bar.HorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\horizontal_bar.png')
#线图
def draw_line(surface, options, dataSet):
chart = pycha.line.LineChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\line.png')
#点图
def draw_scatterplot(surface, options, dataSet):
chart = pycha.scatter.ScatterplotChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\scatterplotChart.png')
#垂直块图
def draw_stackedverticalbarChar(surface, options, dataSet):
chart = pycha.stackedbar.StackedVerticalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedVerticalBarChart.png')
#水平块图
def draw_stackedhorizontalbarChart(surface, options, dataSet):
chart = pycha.stackedbar.StackedHorizontalBarChart(surface,options)
chart.addDataset(dataSet)
chart.render()
surface.write_to_png('d:\\stackedhorizontalbarChart.png')
if __name__ == '__main__':
'''''
Function:使用pycha画各种图表
Input:NONE
Output: NONE
author: socrates
blog:http://blog.csdn.net/dyx1024
date:2012-02-28
'''
#数据来源
dataSet=(
('iphone',((0,1),(1,3),(2,2.5))),
('htc',((0,2),(1,4),(2,3))),
('hw',((0,5),(1,1,),(2,0.5))),
('zte',((0,3),(1,2,),(2,1.5))),
)
#图像属性定义
options={
'legend':{'hide':False},
'title':'手机销售量分布图(by dyx1024)',
'titleColor':'#0000ff',
'titleFont':'字体',
'background':{'chartColor': '#ffffff'},
'axis':{'labelColor':'#ff0000'},
}
surface = set_charvalue()
#根据需要调用不同函数画不同形状的图
#draw_pie(surface, options, dataSet)
#draw_vertical_bar(surface, options, dataSet)
#draw_horizontal_bar(surface, options, dataSet)
#draw_scatterplot(surface, options, dataSet)
#draw_stackedverticalbarChar(surface, options, dataSet)
#draw_stackedhorizontalbarChart(surface, options, dataSet)
draw_line(surface, options, dataSet)
二、测试:
1、函数draw_pie(surface, options, dataSet):
2、函数draw_vertical_bar(surface, options, dataSet):
3、函数draw_horizontal_bar(surface, options, dataSet):
4、函数draw_line(surface, options, dataSet):
5、函数draw_scatterplot(surface, options, dataSet):
6、函数draw_stackedverticalbarChar(surface, options, dataSet):
7、函数draw_stackedhorizontalbarChart(surface, options, dataSet):
相关文章推荐
- Python:使用pycha快速绘制办公常用图(饼图、垂直直方图、水平直方图、散点图等七种图形)
- Python:使用pycha快速绘制办公常用图(饼图、垂直直方图、水平直方图、散点图等七种图形)
- Python:使用pycha快速绘制办公常用图(饼图、垂直直方图、水平直方图、散点图等七种图形)
- Python:使用pycha快速绘制办公常用图(饼图、垂直直方图、水平直方图、散点图等七种图形)
- 使用pycha快速绘制办公常用图(饼图、垂直直方图、水平直方图、散点图等七种图形)
- Python:使用pycha快速绘制办公常用图二(使用样式定制个性化图表)
- Python:使用pycha快速绘制办公常用图二(使用样式定制个性化图表)
- 使用python matplotlib绘制简单图形
- 高效程序员秘籍(7):使用Diagram Designer快速绘制流程图、UML等图形
- python matplotlib模块——绘制三维图形、三维数据散点图
- Python使用matplotlib绘制多个图形单独显示的方法示例
- python3.6 使用pycha进行图表绘制(由于pycha长期未更新无法直接兼容python3.6,需做部分修改)
- 使用python绘制常用的图表
- 【Python】使用scatter()绘制散点图
- 如何快速查询python中常用包和使用办法
- Python使用matplotlib绘制余弦的散点图示例
- Python实现在tkinter中使用matplotlib绘制图形的方法示例
- 使用python绘制常用的图表
- 如何快速上手使用OpenGL进行图形绘制
- Python使用matplotlib库绘制过图形