python学习day15地图、柱状图

news2024/11/24 22:45:28

地图、柱状图

  • 地图
    • 示例
  • 柱状图
    • XY轴反转
    • 小结
  • 时间线柱状图
    • 自动播放
    • 小结
  • 动态柱状图
    • sort排序
    • 练习动态柱状图

地图

在这里插入图片描述


from pyecharts.charts import Map
map=Map()
data=[
    ('北京市',999),
    ('上海市',133),
    ('河南省',123),
    ('西藏自治区',123),
    ('吉林省',12),
]

map.add("地图",data,"china")
map.render()

在这里插入图片描述

示例


from pyecharts.charts import Map
from pyecharts.options import VisualMapOpts

map=Map()
data=[
    ('北京市',999),
    ('上海市',133),
    ('河南省',123),
    ('西藏自治区',123),
    ('吉林省',12),
]

map.add("地图",data,"china")


map. set_global_opts(
visualmap_opts=VisualMapOpts(
    is_show=True,
    is_piecewise=True,
    pieces=[
        {"min" : 1,"max": 9, "label": "1-9人","color": "#CCFFFF"},
        { "min": 10,"max" : 99,"label" : "10-99人","color":"#FFFF99"},
        { "min": 100,"max": 499,"label": "99-499人","color" :"#FF9966"},
        {"min": 500,"max": 999,"label": "499-999人","color":"#FF6666"},
        { "min": 1000,"max": 9999,"label": "1000-9999人","color":"#CC3333"},
        { "min" : 10000,"label" : "10000以上","color" :"#990033"}
])
)



map.render()


在这里插入图片描述

RGB颜色对照表获取
在这里插入图片描述
全国疫情地图

import json
from pyecharts.charts import Map
from pyecharts.options import VisualMapOpts

map=Map()

data1=open("E:/桌面文件/疫情.txt",'r',encoding="UTF-8")
data2=data1.read()
JSON_data=json.loads(data2)

province=JSON_data["areaTree"][0]["children"]
data=[]

for i_data in province:
    province_name=i_data["name"]
    if province_name[-1] != "省":
        province_name = province_name + "省"
    print(province_name)
    province_num=i_data["total"]["confirm"]
    yuan_data=(province_name,province_num)
    data.append(yuan_data)
print(data)
map.add("全国疫情地图",data,"china")
map. set_global_opts(
visualmap_opts=VisualMapOpts(
    is_show=True,#是否显示
    is_piecewise=True,#是否分段
    pieces=[
        {"min" : 1,"max": 9, "label": "1-9人","color": "#CCFFFF"},
        { "min": 10,"max" : 99,"label" : "10-99人","color":"#FFFF99"},
        { "min": 100,"max": 499,"label": "99-499人","color" :"#FF9966"},
        {"min": 500,"max": 999,"label": "499-999人","color":"#FF6666"},
        { "min": 1000,"max": 9999,"label": "1000-9999人","color":"#CC3333"},
        { "min" : 10000,"label" : "10000以上","color" :"#990033"}
])
)



map.render()



在这里插入图片描述
河南省疫情地图

import json
from pyecharts.charts import Map
from pyecharts.options import VisualMapOpts

map=Map()

data1=open("E:/桌面文件/疫情.txt",'r',encoding="UTF-8")
data2=data1.read()
JSON_data=json.loads(data2)

province=JSON_data["areaTree"][0]["children"][3]["children"]
data=[]

for i_data in province:
    province_name=i_data["name"]
    province_name = province_name + "市"
    print(province_name)
    province_num=i_data["total"]["confirm"]
    yuan_data=(province_name,province_num)
    data.append(yuan_data)
print(data)
map.add("河南省疫情地图",data,"河南")
map. set_global_opts(
visualmap_opts=VisualMapOpts(
    is_show=True,#是否显示
    is_piecewise=True,#是否分段
    pieces=[
        {"min" : 1,"max": 9, "label": "1-9人","color": "#CCFFFF"},
        { "min": 10,"max" : 99,"label" : "10-99人","color":"#FFFF99"},
        { "min": 100,"max": 499,"label": "99-499人","color" :"#FF9966"},
        {"min": 500,"max": 999,"label": "499-999人","color":"#FF6666"},
        { "min": 1000,"max": 9999,"label": "1000-9999人","color":"#CC3333"},
        { "min" : 10000,"label" : "10000以上","color" :"#990033"}
])
)



map.render()





在这里插入图片描述

柱状图

from pyecharts.charts import Bar
from pyecharts.options import *
#构建柱状图对象
bar = Bar()
#添加x轴数据
bar.add_xaxis(["中国","美国","英国"])
#添加y轴数据
bar.add_yaxis ("GDP",[30,20,10])
#绘图
bar.render("基础柱状图.html" )

在这里插入图片描述

XY轴反转

bar.reversal_axis()

在这里插入图片描述

小结

在这里插入图片描述

时间线柱状图

#创建时间线
from pyecharts.charts import Bar,Timeline
from pyecharts.options import *
bar1= Bar()
bar1.add_xaxis(["中国","美国","英国"])
bar1.add_yaxis(" GDP",[30,20,10],label_opts=LabelOpts(position="right"))
bar1.reversal_axis()
bar2=Bar()
bar2.add_xaxis(["中国","美国","英国"])
bar2.add_yaxis("GDP",[50,30,20],label_opts=LabelOpts(position="right"))
bar2.reversal_axis()
#创建时间线对象
timeline = Timeline()#timeline对象添加bar柱状图
timeline.add(bar1,"2021年GDP")
timeline.add(bar2,"2022年GDP")
#通过时间线绘图
timeline.render("基础柱状图-时间线.html")

在这里插入图片描述

自动播放

#设置自动播放
timeline.add_schema(
play_interval=1000,
#自动播放的时间间隔,单位毫秒
is_timeline_show=True,
#是否在自动播放的时候,显示时间线
is_auto_play=True,
#是否自动播放
is_loop_play=True,
#是否循环自动播放
)

在这里插入图片描述

#创建时间线
from pyecharts.charts import Bar,Timeline
from pyecharts.options import *
from pyecharts.globals import ThemeType
bar1= Bar()
bar1.add_xaxis(["中国","美国","英国"])
bar1.add_yaxis(" GDP",[30,20,10],label_opts=LabelOpts(position="right"))
bar1.reversal_axis()
bar2=Bar()
bar2.add_xaxis(["中国","美国","英国"])
bar2.add_yaxis("GDP",[50,30,20],label_opts=LabelOpts(position="right"))
bar2.reversal_axis()
#创建时间线对象
timeline = Timeline({"theme":ThemeType.LIGHT})#timeline对象添加bar柱状图
timeline.add(bar1,"2021年GDP")
timeline.add(bar2,"2022年GDP")


#设置自动播放
timeline.add_schema(
play_interval=1000,
#自动播放的时间间隔,单位毫秒
is_timeline_show=True,
#是否在自动播放的时候,显示时间线
is_auto_play=True,
#是否自动播放
is_loop_play=True,
#是否循环自动播放
)
#通过时间线绘图
timeline.render("基础柱状图-时间线.html")

在这里插入图片描述

小结

在这里插入图片描述

动态柱状图

sort排序

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

my_list=[['a',33],['b',90],['c',12]]


def choose_sort_key(element):
    return element[1]

my_list.sort(key=choose_sort_key,reverse=True)
print(my_list)

练习动态柱状图

from pyecharts.charts import Bar, Timeline
from pyecharts.options import *
from pyecharts.globals import ThemeType

def sort_dta(element):
    return element[1]

f=open("E:/桌面文件/1960-2019全球GDP数据.csv","r",encoding="GB2312")
data=f.readlines()
f.close()
data.pop(0)
data_culi=[]
data_dirc={}
for element in data:
    data_culi.append(element.strip())

for j in data_culi:
    year=int(j.split(",")[0])
    country=j.split(",")[1]
    GDP=float(j.split(",")[2])
    try:
        data_dirc[year].append([country,GDP])
    except KeyError:
        data_dirc[year]=[]
        data_dirc[year].append([country, GDP])
list_year_key=sorted(data_dirc.keys())
timeline = Timeline({"theme": ThemeType.LIGHT})  # timeline对象添加bar柱状图
for element2 in list_year_key:
    data_dirc[element2].sort(key=sort_dta, reverse=True)
    year_data=data_dirc[element2][0:8:1]
    print(year_data)
    x_data = []
    y_data = []
    for  i in year_data:
        x_data.append(i[0])
        y_data.append(i[1]/100000000)
    x_data.reverse()
    y_data.reverse()
    bar = Bar()
    bar.add_xaxis(x_data)
    bar.add_yaxis(" GDP(亿)", y_data, label_opts=LabelOpts(position="right"))
    bar.reversal_axis()
    # 创建时间线对象
    bar.set_global_opts(

        title_opts=TitleOpts(
            title=f"{element2}全球前8GDP数据"
        )

    )

    timeline.add(bar, str(element2))


timeline.add_schema(
play_interval=500,
#自动播放的时间间隔,单位毫秒
is_timeline_show=True,
#是否在自动播放的时候,显示时间线
is_auto_play=True,
#是否自动播放
is_loop_play=True,
#是否循环自动播放
)



#通过时间线绘图
timeline.render("GDP时间线.html")

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2045807.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ElasticSearch数据建模

文章目录 如何处理关联关系避免过多字段避免正则/通配符/前缀查询避免空值引起的聚合不准为索引的Mapping加入Meta 信息 如何处理关联关系 Object: 优先考虑反范式(Denormalization) Nested: 当数据包含多数值对象,同时有查询需求 Child/Pa…

SAP BAPI for Tcode SM12

注意:ENQUE_READ 和 ENQUE_READ2 的table ENQ是两个不同的结构 想通过 ENQUE_READ2 读取结构然后去删除 ENQUE_DELETE的 要注意不能直接用 要用 ENQUE_CONVERT_SEQG7_TO_SEQG3 进行转换 FUNCTION ENQUE_CONVERT_SEQG7_TO_SEQG3. *"-----------------------…

[000-01-030].第2节 :Zookeeper本地安装

1.Zookeeper下载地址 1.Zookeeper官网地址 2.会显示Zookeeper的一些版本 2.Zookeeper本地模式安装: 2.1.Zookeeper安装前准备 1.在Centos7虚拟机中安装jdk8 2.2.Zookeeper安装过程: 1.下载zookeeper压缩版本,解压放在opt/moduel目录下…

为啥90%设计师素材整理文件夹都是无效的?

大家好,今天我想和大家分享一下我在使用千鹿设计助手软件之前的图片管理经历,以及千鹿给我带来的巨大变化。 正文: 大家好,今天我想和大家分享一下我在使用千鹿软件之前的图片管理经历,以及千鹿给我带来的巨大变化。 …

netCDF文件预览(nc格式)

1.工具下载 软件下载:https://download.csdn.net/download/qq_34321590/89645482 2.java11环境安装 需要安装java11以上版本 安装包下载: https://download.csdn.net/download/qq_34321590/89645487 安装步骤: 1.解压 2.配置环境变量 在…

针对老年人的景区订票系统

TOC springboot303针对老年人的景区订票系统 绪论 1.1 研究背景 当前社会各行业领域竞争压力非常大,随着当前时代的信息化,科学化发展,让社会各行业领域都争相使用新的信息技术,对行业内的各种相关数据进行科学化,…

RK3588 RTL8125BG调试

RTL8125B是一款PCIE转RJ45的网卡控制器芯片,在底层调试时只需配置PCIE即可 diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nvr-demo.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nvr-demo.dtsi index 798359eaf061..d8a7a43cdfa0 100755 --- a/arch/arm64/bo…

【学习笔记】Day 14

一、进度概述 1、《地震勘探原理》第七章 二、详情 地震波动力学是相对于运动学而言的。运动学主要研究波的传播规律,其主要特征是分析、研究波的传播路径。传播速度。旅行时间等。地震波动力学则主要从能量的角度研究地震波的特征,如波的振幅、波形、频…

比eagle还好用?设计师如何做好素材管理|设计源文件管理|Flux文生图|快搜索|高效应用

用Eagle的设计师朋友们,有没有遇到这样的问题?像PS工程文件必须要保存后,才能打标签。需要修改的时候,还要打开Eagle搜索再拖进来,属实有点麻烦。不过我觉得Eagle让我最难受的还是,它的素材有专门的文件结构…

如何利用R语言学习机器学习?

机器学习是近年来非常热门的一个学科,R 语言经过一段时间的发展也逐渐成为主流的编程语言之一。 机器学习是人工智能的一个分支,旨在通过构建和训练计算机算法和模型,使计算机能够 从数据中学习并自主进行决策和预测。传统的计算机程序是由开…

C++快速理解之泛型编程

1、引入 #include <iostream>using namespace std;int add(int a, int b) {return a b; }float add(float x, float y) {return x y; }int main() {int result add(3, 4);cout << "result " << result << endl;float result2 add(3.5…

智能分班结果自动发布系统

新学期&#xff0c;校园里又将迎来一批充满活力的新生。对于老师们来说&#xff0c;除了准备教学计划和课程内容&#xff0c;还有一项看似简单却颇为繁琐的任务——发布分班。传统的分班信息发布方式&#xff0c;通常是老师们一个个私信给学生家长&#xff0c;家长们收到信息后…

【图像特效系列】图像滤镜特效的实践 | 包含代码和效果图

目录 一 滤镜特效 1 代码 2 效果图 图像特效系列主要是对输入的图像进行处理,生成指定特效效果的图片。图像素描特效会将图像的边界都凸显出来;图像怀旧特效是指图像经历岁月的昏暗效果;图像光照特效是指图像存在一个类似于灯光的光晕特效,图像像素值围绕光照中心点呈圆…

InternLM2_PracticalCamp_L1_rask4_llamaindex+Internlm2 RAG实践

1. 前置知识 正式介绍检索增强生成&#xff08;Retrieval Augmented Generation&#xff0c;RAG&#xff09;技术以前&#xff0c;大家不妨想想为什么会出现这样一个技术。 给模型注入新知识的方式&#xff0c;可以简单分为两种方式&#xff0c;一种是内部的&#xff0c;即更新…

DNS查询过程与原理

目录 DNS1. DNS 是什么2. DNS 服务器3. 使用dig显示查询过程4. 域名的逐级查询5. 简述DNS解析www.baidu.com的过程 参考 DNS 1. DNS 是什么 DNS &#xff08;Domain Name System 的缩写&#xff09;是域名解析器&#xff0c;根据域名查出IP地址 2. DNS 服务器 DNS 服务器是一…

Leon黎明广州演唱会2024重磅官宣,10月26日倾情开唱!

径自奔流的时光中&#xff0c;总有些声音拥有超越时间的力量&#xff0c;弥合着世代更迭的图景&#xff0c;在一代又一代人的心中闪烁不息。在熠熠生辉的星河中&#xff0c;垂钓破晓时分的曙光&#xff0c;总有星辰会指引着我们相遇。 当千禧年的风吹过耳畔&#xff0c;记忆深…

在 ToolStrip 控件中使用工具提示

可以通过将控件的 ShowItemToolTips 属性设置为 true 来为所需的 ToolStrip 控件显示 ToolTip。 显示工具提示 将控件的 ShowItemToolTips 属性设置为 true。 ToolStrip.ShowItemToolTips 的默认值为 true&#xff0c;MenuStrip.ShowItemToolTips 和 StatusStrip.ShowItemTool…

基于HTML语言的环保网站的设计与实现

TOC springboot318基于HTML语言的环保网站的设计与实现 绪论 1.1 研究背景 当前社会各行业领域竞争压力非常大&#xff0c;随着当前时代的信息化&#xff0c;科学化发展&#xff0c;让社会各行业领域都争相使用新的信息技术&#xff0c;对行业内的各种相关数据进行科学化&a…

如何选择有意义的B2B SEO关键词?

今天谈谈如何选择有意义的B2B SEO关键字目标&#xff0c;以及你可以在自己的关键字研究中采取的流程和步骤。B2B和我们通常看到的B2C营销类型有点不同。销售周期或实际做出购买决定所需的时间通常要长得多&#xff0c;这需要多个利益相关者的参与。个人将参与这个过程&#xff…

Redis远程字典服务器(4)—— string类型详解

目录 一&#xff0c;string基本情况 二&#xff0c;string命令详解 2.1 set命令选项 2.2 setnx&#xff0c;setex 2.3 incr&#xff0c;incrby 2.4 decr&#xff0c;decrby 2.5 append拼接 2.6 getrange获取 2.7 setrange修改 2.8 strlen获取长度 2.9 总结 三&…