当前位置: 首页 > news >正文

2024.5.26.python.exercise

# # 导入包
# from pyecharts.charts import Bar, Timeline
# from pyecharts.options import LabelOpts, TitleOpts
# from pyecharts.globals import ThemeType
#
# # 从文件中读取信息
# GDP_file = open("1960-2019全球GDP数据.csv", "r", encoding="GB2312")
# GDP_data = GDP_file.readlines()
#
# # 关闭文件
# GDP_file.close()
#
# # 规整文件
# GDP_data.pop(0)
#
# # 定义一个字典来存文件
# GDP_dict = {}
# for line_data in GDP_data:
#     GDP_year = int(line_data.split(",")[0])
#     GDP_country = line_data.split(",")[1]
#     GDP = float(line_data.split(",")[2])
#     try:
#         GDP_dict[GDP_year].append([GDP_country, GDP])
#     except KeyError:
#         GDP_dict[GDP_year] = []
#         GDP_dict[GDP_year].append([GDP_country, GDP])
#
# # 创建时间线(并且设置其主题)
# GDP_line = Timeline({"theme": ThemeType.ROMA})
#
# # 排序数据对象
# sort_years = sorted(GDP_dict.keys())
#
# for year in GDP_dict:
#     GDP_dict[year].sort(key=lambda element: element[1], reverse=True)
#     year_data = GDP_dict[year][:8:]
#     x_data = []
#     y_data = []
#     # 为x,y准备数据
#     for country_data in year_data:
#         x_data.append(country_data[0])
#         y_data.append(country_data[1] / 100000000)
#     # 建立柱状图
#     GDP_bar = Bar()
#     x_data.reverse()
#     y_data.reverse()
#     GDP_bar.add_xaxis(x_data)
#     GDP_bar.add_yaxis("GDP(亿)", y_data, label_opts=LabelOpts(position="right"))
#
#     # 反转x-y轴
#     GDP_bar.reversal_axis()
#
#     # 设置每一年的标题
#     GDP_bar.set_global_opts(
#         title_opts=TitleOpts(title=f"{year}年全球前八国家的GDP")
#     )
#
#     # 创建时间线
#     GDP_line.add(GDP_bar, str(year))
#
# # 调整时间轴播放
# GDP_line.add_schema(
#     play_interval=3000,  # 时间移动的时间
#     is_timeline_show=True,  # 展示时间线
#     is_auto_play=True,  # 自动播放
#     is_loop_play=True  # 循环播放
# )
#
# # 生成柱状图
# GDP_line.render("1960-2019年全球GDP top8变化图(new).html")# 导入包
from pyecharts.charts import Bar, Timeline
from pyecharts.options import LabelOpts, TitleOpts
from pyecharts.globals import ThemeType# 从文件中得到GDP数据
GDP_file = open("1960-2019全球GDP数据.csv", "r", encoding="GB2312")
GDP_data = GDP_file.readlines()# 关闭文件
GDP_file.close()# 规整数据
GDP_data.pop(0)# 创建GDP字典,便于读数据
GDP_dict = {}# 为字典读数据
for line in GDP_data:year = int(line.split(",")[0])  # 得到年份数据country = line.split(",")[1]  # 得到国家数据GDP = float(line.split(",")[2])  # 得到GDP数据# 每一年的第一个数据进入字典的时候是没有列表的,所以说要先try一下try:GDP_dict[year].append([country, GDP])  # 假如列表已经存在,则可以直接appendexcept KeyError:GDP_dict[year] = []  # 假如列表不存在,则先创造再添加GDP_dict[year].append([country, GDP])# 排序年份
sort_year = sorted(GDP_dict.keys())# 创建时间线(并且对其进行初始设置)
GDP_timeline = Timeline({"theme": ThemeType.CHALK})# 准备创造柱状图
for year in GDP_dict:GDP_dict[year].sort(key=lambda element: element[1], reverse=True)year_data = GDP_dict[year][:8:]x_data = []y_data = []for country in year_data:x_data.append(country[0])y_data.append(country[1] / 100000000)# 创建柱状图GDP_bar = Bar()x_data.reverse()y_data.reverse()GDP_bar.add_xaxis(x_data)GDP_bar.add_yaxis("GDP(亿)", y_data, label_opts=LabelOpts(position="right"))# 反转x-y轴GDP_bar.reversal_axis()# 设置每年的标题GDP_bar.set_global_opts(title_opts=TitleOpts(title=f"{year}年全球GDP排名前八国家"))# 时间线增加GDP_timeline.add(GDP_bar, str(year))# 设置时间线
GDP_timeline.add_schema(play_interval=3000,  # 时间移动的时间is_timeline_show=True,  # 展示时间线is_auto_play=True,  # 自动播放is_loop_play=True  # 循环播放
)# 生成柱状图
GDP_timeline.render("1960-2019年全球GDP top8变化图(mine).html")

http://www.lryc.cn/news/354085.html

相关文章:

  • 代码随想录-Day20
  • 揭秘C++ String容器:字符串操作的艺术
  • 【C++】牛客 ——DP36 abb
  • SpringBoot如何实现跨域?
  • SW 草图偏移 先预选
  • 5.23 Linux中超时检测方式+模拟面试
  • MySQL数据表索引命名规范
  • python内置函数map/filter/reduce详解
  • PICO VR眼镜定制播放器使用说明文档videoplayerlib-ToB.apk
  • 基于51单片机的超声波液位测量与控制系统
  • 详细分析Element中的MessageBox基本知识(附Demo)
  • 音视频开发8 音视频中SDL的使用,SDL 在windows上环境搭建,SDL 使用 以及 常用 API说明,show YUV and play PCM
  • P1003 [NOIP2011 提高组] 铺地毯
  • C语言学习笔记之指针(一)
  • 化学中的不确定性。
  • AWS容器之Fargate
  • C#面:DataReader与Dataset有什么区别
  • 操作系统课程实验1-进程调度模拟实验
  • JVM CMS 在Full GC时针对跨代引用的优化
  • 【Makefile】Makefile 编译 Keil 工程(Linux 环境)
  • Django的视图层——1HttpResponse对象详解
  • 企业活动想找媒体报道宣传怎样联系媒体?
  • 基于ChatGPT+RPA的融资融券业务担保资产风险评价
  • 2. CSS选择器与伪类
  • tcpdump源码分析
  • 搭建Harbor镜像仓库
  • 【C/C++】Makefile文件的介绍与基本用法
  • PHP生成二维码+二维码包含logo图片展示
  • vue项目打包教程
  • 制作电子画册速成攻略,快来试试