教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

Python爬虫数据如何写入Execl文件并生成图表?

更新时间:2019年10月09日16时03分 来源:传智播客 浏览次数:

Python爬虫数据如何写入Execl文件并生成图表?

需求:为了做测试或者对爬虫程序爬取数据进行分析汇总,我们时常会将数据生成报表,但是如果我们想将报表生成在Excel中,这时候就可以借助xlsxwriter第三方包来生成图表。

分析:为生成excel准备多维数组类型的数据->数据插入到Excel中->对数据按系列划分生成图表。【推荐了解:111彩票网安全吗直营网

第一步:准备数据:

使用爬虫爬取网络上关于热门岗位的数据并生成多维数组类型,如下:

data = [

    ["IOS岗位数", "Android岗位数", "Python岗位数", "物联网岗位数", "Go与区块链岗位数"],

    [2000, 4000, 60000, 8000, 1000],

]

第二步:将数据插入Excel中

首先要创建一个Excel文件,然后在Excel中创建一个sheet表单页,最后将数据插入到sheet表单页中

1、创建一个Excel对象

workbook = xlsxwriter.Workbook(“Excel名字.xlsx”)

2、基于Excel对象创建一个sheet表单对象

worksheet = workbook.add_worksheet(name=“sheet表单的名字,不填写就默认为sheet1")

3、将数据写入sheet表单页worksheet

worksheet.write_row( row, col, data, cell_format=None)

worksheet.write_column(row, col, data, cell_format=None)

3.1、可以用A1表示第一行第一列的那个单元格,这个时候后面的data可以是个数组,直接插入一行数据

worksheet.write_column("A1", 一列数据, 样式(非必填项))

worksheet.write_row("A1", 一行数据, 样式(非必填项))

具体代码如下:

# Write some data to add to plot on the chart.

data = [

["IOS岗位数", "Android岗位数", "Python岗位数", "物联网岗位数", "Go与区块链岗位数"],

[2000, 4000, 60000, 8000, 1000],

]

worksheet.write_column('A1', data[0])

worksheet.write_column('B1', data[1])


第三步:生成图表

1.通过Workbook add_chart()方法创建图表对象,其中指定了图表类型:

    chart = workbook.add_chart({'type': 'column'})

通过type定义图标的类型,比如是柱形图还是饼图

支持的图表类型是:

    area:创建区域(实线)样式图表。

    bar:创建条形样式(转置直方图)图表。

    column:创建列样式(直方图)图表。

    line:创建线型图表。

    pie:创建饼图样式图表。

    doughnut:创建圆环样式图表。

    scatter:创建散点图样式图表。

    stock:创建库存样式图表。

    radar:创建雷达样式图表。

代码如下:

    # Create a new Chart object.

    chart = workbook.add_chart({'type': 'column'})

2、添加图标要统计的数据,同一个报表可以添加多个系列

代码如下:

chart.add_series({

    'categories': '=Sheet1!$A$1:$A$5',

    'values': '=Sheet1!$B$1:$B$5',

    'line': {'color': 'red'},

    'name': '各岗位数汇总',

})

    categories:这将设置图表类别标签。该类别与X轴大致相同。在大多数图表类型中,该categories 属性是可选的,图表将仅假设一个顺序系列 1..n。

    values:这是系列中最重要的属性,是每个图表对象的唯一必需选项。此选项将图表与其显示的工作表数据相链接。可以使用上面第一个示例中所示的公式或使用第二个示例中所示的值列表来设置数据范围。

    line:设置系列线型的属性,如颜色和宽度。请参见图表格式:行。

    name:设置系列的名称。名称显示在公式栏中。对于非饼图/圆环图,它也会显示在图例中。name属性是可选的,如果未提供,则默认为。名称也可以是公式,例如,包含工作表名称,行和列的列表。Series 1..n=Sheet1!$A$1['Sheet1', 0, 0]

如下图所示:

python数据生成图表


3、给图表定义名字和样式

代码如下:

    chart.set_title({'name': '各岗位数汇总_图表'})

    chart.set_style(10)

python数据生成图表2


4、将图表插入到Excel中

代码如下:

    # Insert the chart into the worksheet.

    worksheet.insert_chart('A7', chart)

python数据生成图表3

5、关闭保存修改

代码如下:

    workbook.close()

网站地图 9188彩票积分有什么用直营网 博纳彩票是不是骗局登入 万达彩票app下载登入
菲律宾申博官方网址 申博官网开户注册 太阳城官方网站 菲律宾申博太阳城138
博彩游戏平台大全登入 第一彩票香港五分彩 疯狂老虎机登入 全红彩票签到登入
9188账户登录直营网 百盛彩票游戏登入 百盛彩票注册登入 百盛彩票app下载登入
彩票网平台哪个好直营网 永乐彩票官方网登入 永乐彩票注册登入 633易博安全吗登入
581tt.com 885jbs.com 588XTD.COM XSB978.COM 8AKSS.COM
3453111.COM 1116118.COM 8DCS.COM 176sun.com DC238.COM
729psb.com S6182.COM 144TGP.COM 7777ib.com 197sunbet.com
587DC.COM 28csb.com 558jbs.com 217SUN.COM 156tt.com