百度开源pyecharts画图工具

条形图

电影票房对比

from pyecharts import Bar
movieName=["战狼2","速度与激情8","功夫瑜伽","西游伏妖篇","变形金刚5","摔跤吧!爸爸"]
movieMoney=[56.01,26.94,17.53,16.49,15.45,12.96]
#实例化对象,对象即位你所画的图形
bar = Bar(title="某年内地电影票房前20的电影", subtitle="这是一个子标题")
# 添加图表的数据, 或者配置信息
bar.add("电影信息",movieName, movieMoney)
# 默认情况下会生成一个render.html文件
bar.render()

在这里插入图片描述
绘制多个条形图
电影票房对比

from pyecharts import Bar

x_movies_name = ["猩球崛起", "敦刻尔克", "蜘蛛侠", "战狼2"]
y_16 = [10000, 312, 4497, 319]
y_15 = [12357, 156, 2045, 168]
y_14 = [2358, 399, 2359, 362]
bar=Bar(title='某年内地电影票房三天数据对比',subtitle='字标题')

#第一个参数为图例
#mark_line是用线标记出这一天最大值,最小值
#mark_point是用点标记出这一天最接近平均数的票房
bar.add("2017-09-14",x_movies_name,y_14,mark_line=['min','max'],mark_point=['average'])
bar.add("2017-09-15",x_movies_name,y_15,mark_point=['average'])
bar.add("2017-09-16",x_movies_name,y_16,mark_point=['average'])
bar.render()

在这里插入图片描述

绘制散点图

散点可以生成动态图,也可以不需要,下面即位动态散点图

import random

from pyecharts import EffectScatter,Scatter
x_march = list(range(1, 32))
y_temp_march = [random.randint(8,25) for i in range(31)]
y_temp_ap = [random.randint(8,25) for j in range(31)]
scatter= EffectScatter("西安3月每天最高气温变化的散点图")
# scatter= Scatter("西安3月每天最高气温变化的散点图")
# symbol_size散点图标记的大小;
scatter.add("3 月", x_march, y_temp_march, symbol_size=10, line_color='red')
scatter.add("4 月", x_march, y_temp_ap, symbol_size=20)
scatter.render()

在这里插入图片描述

漏斗图

from pyecharts import Funnel

x_movies_name = ["猩球崛起", "敦刻尔克", "蜘蛛侠", "战狼2"]
y_16 = [20, 40, 60, 80]
funnel = Funnel("电影观看次数排行")
funnel.add("电影信息", x_movies_name, y_16)
funnel.render()

在这里插入图片描述

水球图

from pyecharts import Liquid

liquid = Liquid("软件占用内存百分比")
#[0.6, 0.5, 0.4, 0.3]几个数据代表几个软件占用内存,即会形成几条波浪显示,但只会显示最大的占用率成数字显示在图形中间
#shape='pin'水球图的一个模板,可更换样式
#liquid_color:波浪颜色
liquid.add("Liquid", [0.6, 0.5, 0.4, 0.3],  shape='roundRect',liquid_color='156ACF')
liquid.render()

在这里插入图片描述

仪表盘图

from pyecharts import  Gauge

cpu_percent = 50
gauge = Gauge("CPU使用率")
gauge.add("cpu", "CPU使用率", cpu_percent)
gauge.render()

在这里插入图片描述

饼状图

from pyecharts import Pie
attr = ["兄弟", '同学', '其他']
data = [100, 180, 2]
pie=Pie('朋友类别图')
# 是否直接显示label信息
#第一个参数是鼠标走到的每块区域显示的头部信息,
pie.add("XXX", attr, data, is_label_show=True)
pie.render()

在这里插入图片描述

折线图

import random

from pyecharts import Line
x_times = list(range(0,30))
y_temp_3 = [random.randint(20, 35) for i in range(30)]
y_temp_10 = [random.randint(20, 35) for j in range(30)]

line  = Line("折线图")
#第一个参数是鼠标走到的每块区域显示的头部信息,即图例信息
line.add("3月", x_times, y_temp_3, mark_line=['max'], mark_point=['min'])
line.add("10月", x_times, y_temp_10, mark_line=['max'], mark_point=['min'])

line.render()

在这里插入图片描述

折线图——阶梯图

import random

from pyecharts import Line
x_times = list(range(0,30))
y_temp_3 = [random.randint(20, 35) for i in range(30)]
y_temp_10 = [random.randint(20, 35) for j in range(30)]

line  = Line("折线图---阶梯图")
#第一个参数是鼠标走到的每块区域显示的头部信息,即图例信息
#is_step是否形成阶梯
line.add("3月", x_times, y_temp_3, mark_line=['max'], mark_point=['min'],is_step=True)
line.add("10月", x_times, y_temp_10, mark_line=['max'], mark_point=['min'],is_step=True)

line.render()

在这里插入图片描述
折线图——面积图

import random

from pyecharts import Line
x_times = list(range(0,30))
y_temp_3 = [random.randint(20, 35) for i in range(30)]
y_temp_10 = [random.randint(20, 35) for j in range(30)]

line  = Line("折线图---面积图")
#第一个参数是鼠标走到的每块区域显示的头部信息,即图例信息
#is_fill是否要填充折线以下部分
#area_color填充颜色
#area_opacity设置透明度
line.add("3月",x_times,y_temp_3,is_fill=True,area_color='red',area_opacity=0.3)
line.add("10月",x_times,y_temp_10,is_fill=True,area_color='green',area_opacity=0.2)
line.render()

在这里插入图片描述

地图绘制

全国pm2.5调查
先下载四个包
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg

from pyecharts import Geo
data = [
    ("海门", 9),("鄂尔多斯", 12),("招远", 12),("舟山", 12),("齐齐哈尔", 14),("盐城", 15),
    ("赤峰", 16),("青岛", 18),("乳山", 18),("金昌", 19),("泉州", 21),("莱西", 21),
    ("日照", 21),("胶南", 22),("南通", 23),("拉萨", 24),("云浮", 24),("梅州", 25),
    ("文登", 25),("上海", 25),("攀枝花", 25),("威海", 25),("承德", 25),("厦门", 26),
    ("汕尾", 26),("潮州", 26),("丹东", 27),("太仓", 27),("曲靖", 27),("烟台", 28),
    ("福州", 29),("瓦房店", 30),("即墨", 30),("抚顺", 31),("玉溪", 31),("张家口", 31),
    ("阳泉", 31),("莱州", 32),("湖州", 32),("汕头", 32),("昆山", 33),("宁波", 33),
    ("湛江", 33),("揭阳", 34),("荣成", 34),("连云港", 35),("葫芦岛", 35),("常熟", 36),
    ("东莞", 36),("河源", 36),("淮安", 36),("泰州", 36),("南宁", 37),("营口", 37),
    ("惠州", 37),("江阴", 37),("蓬莱", 37),("韶关", 38),("嘉峪关", 38),("广州", 38),
    ("延安", 38),("太原", 39),("清远", 39),("中山", 39),("昆明", 39),("寿光", 40),
    ("盘锦", 40),("长治", 41),("深圳", 41),("珠海", 42),("宿迁", 43),("咸阳", 43),
    ("铜川", 44),("平度", 44),("佛山", 44),("海口", 44),("江门", 45),("章丘", 45),
    ("肇庆", 46),("大连", 47),("临汾", 47),("吴江", 47),("石嘴山", 49),("沈阳", 50),
    ("苏州", 50),("茂名", 50),("嘉兴", 51),("长春", 51),("胶州", 52),("银川", 52),
    ("张家港", 52),("三门峡", 53),("锦州", 54),("南昌", 54),("柳州", 54),("三亚", 54),
    ("自贡", 56),("吉林", 56),("阳江", 57),("泸州", 57),("西宁", 57),("宜宾", 58),
    ("呼和浩特", 58),("成都", 58),("大同", 58),("镇江", 59),("桂林", 59),("张家界", 59),
    ("宜兴", 59),("北海", 60),("西安", 61),("金坛", 62),("东营", 62),("牡丹江", 63),
    ("遵义", 63),("绍兴", 63),("扬州", 64),("常州", 64),("潍坊", 65),("重庆", 66),
    ("台州", 67),("南京", 67),("滨州", 70),("贵阳", 71),("无锡", 71),("本溪", 71),
    ("克拉玛依", 72),("渭南", 72),("马鞍山", 72),("宝鸡", 72),("焦作", 75),("句容", 75),
    ("北京", 79),("徐州", 79),("衡水", 80),("包头", 80),("绵阳", 80),("乌鲁木齐", 84),
    ("枣庄", 84),("杭州", 84),("淄博", 85),("鞍山", 86),("溧阳", 86),("库尔勒", 86),
    ("安阳", 90),("开封", 90),("济南", 92),("德阳", 93),("温州", 95),("九江", 96),
    ("邯郸", 98),("临安", 99),("兰州", 99),("沧州", 100),("临沂", 103),("南充", 104),
    ("天津", 105),("富阳", 106),("泰安", 112),("诸暨", 112),("郑州", 113),("哈尔滨", 114),
    ("聊城", 116),("芜湖", 117),("唐山", 119),("平顶山", 119),("邢台", 119),("德州", 120),
    ("济宁", 120),("荆州", 127),("宜昌", 130),("义乌", 132),("丽水", 133),("洛阳", 134),
    ("秦皇岛", 136),("株洲", 143),("石家庄", 147),("莱芜", 148),("常德", 152),("保定", 153),
    ("湘潭", 154),("金华", 157),("岳阳", 169),("长沙", 175),("衢州", 177),("廊坊", 193),
    ("菏泽", 194),("合肥", 229),("武汉", 273),("大庆", 279)]
#实例化一个对象
geo = Geo(
    "全国主要城市空气质量",
    "data from pm2.5",
    title_color="#fff",
    title_pos="center",
    width=1200,
    height=600,
    background_color="#404a59")
#读取对象里的城市和空气质量
attr, value = geo.cast(data)
geo.add(
    "",
    attr,
    value,
    visual_range=[0, 200],
    visual_text_color="#fff",
    symbol_size=15,
    is_visualmap=True,
)
geo.render()

在这里插入图片描述
地图信息获取

from pyecharts import Map

import numpy as np

value = [155, 10, 66, 78, 33, 80, 190, 53, 49.6]
attr = [
    "福建", "山东", "北京", "上海", "甘肃", "新疆", "河南", "广西", "西藏"
    ]

#  background_color="#404a59"
map = Map("Map 结合 VisualMap 示例", width=1200, height=600, )
map.add(
    "",
    attr,
    value,
    maptype="china",
    is_visualmap=True,
    visual_text_color="#000",
)
map.render()

在这里插入图片描述
省级地区图片获取

#只找了几个地点,主要拿出地图
from pyecharts import Map
districts = ['天长','滁州','合肥']
areas = [109.92, 109.47, 1006.5]
map_1 = Map("安徽省图例-各区面积", width=1200, height=600)
map_1.add("", districts, areas, maptype='安徽', is_visualmap=True, visual_range=[min(areas), max(areas)],
        visual_text_color='#000', is_map_symbol_show=False, is_label_show=True)
map_1.render()

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/GLH_2236504154/article/details/87894789