15 Python进阶: random和pyecharts

Python random 模块主要用于生成随机数。

random 模块实现了各种分布的伪随机数生成器。

要使用 random 函数必须先导入:

import random

python random 模块的一般用法

Python中的random模块提供了生成伪随机数的功能,可以用于模拟、游戏开发、密码学等领域。下面是对Python random模块的详细解释和示例:

  1. 生成随机整数
import random
# 生成一个介于1到10之间的随机整数
random_int = random.randint(1, 10)
print(random_int)
  1. 生成随机浮点数
# 生成一个介于0到1之间的随机浮点数
random_float = random.random()
print(random_float)
  1. 从序列中随机选择
# 从列表中随机选择一个元素
my_list = [1, 2, 3, 4, 5]
random_choice = random.choice(my_list)
print(random_choice)
  1. 打乱序列的顺序
# 打乱列表的顺序
random.shuffle(my_list)
print(my_list)
  1. 生成随机种子
# 生成种子
seed_value = random.seed(10)
print(seed_value)

通过使用这些功能,可以实现多种随机数生成需求。需要注意的是,Python中的随机数都是伪随机数,通过对随机数种子的设置,可以实现随机数的复现。

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

pyecharts

pyecharts 是一个基于 ECharts 的 Python 数据可视化库,它允许用户使用 Python 语言生成各种类型的交互式图表和数据可视化。

ECharts 是由百度开发的一款强大的开源数据可视化库,而 Pyecharts 则是 ECharts 的 Python 封装,使得在 Python 中使用 ECharts 变得更加方便。

pyecharts 提供了一组简单而灵活的 API,使用户能够轻松地创建各种图表,包括但不限于折线图、柱状图、散点图、饼图、地图等。

通过 pyecharts,用户可以使用 Python 语言处理和准备数据,然后使用简洁的代码生成交互式的图表,这些图表可以嵌入到 Web 应用程序中或保存为静态文件。

pyecharts 特点与功能:

  • 简单易用: Pyecharts 提供了直观而友好的 API,使得用户能够快速上手,轻松生成各种图表。

  • 丰富的图表类型: 支持多种常见的图表类型,包括线图、柱状图、散点图、饼图、地图等,满足不同场景的需求。

  • 支持主流数据格式: 能够处理常见的数据格式,如列表、字典、Pandas DataFrame 等。

  • 交互性: 生成的图表可以具有交互性,用户可以通过鼠标悬停、缩放等方式与图表进行互动。

  • 丰富的配置选项: 提供了丰富的配置选项,允许用户自定义图表的样式、布局等属性。

  • 支持主题: 提供多种主题,用户可以根据需要选择合适的主题,使图表更符合应用的整体风格。

安装

pip install pyecharts

安装成功后可以查看 pyecharts 版本:

import pyechartsprint(pyecharts.__version__)

pyecharts 图表类型

在这里插入图片描述

在这里插入图片描述
举例

from pyecharts.charts import Bar# 准备数据
x_data = ['一月', '二月', '三月', '四月', '五月']
y_data = [10, 20, 15, 25, 30]# 创建柱状图
bar_chart = Bar()
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("销售额", y_data)# 也可以传入路径参数,如 bar_chart.render("bar_chart.html")
bar_chart.render()

如果在 bar_chart.render() 中不指定文件路径,Pyecharts 默认会在当前工作目录下生成一个名为 “render.html” 的文件,即生成的图表将保存在 “render.html” 文件中。

在这里插入图片描述
如果你希望图表的文件名有一定的规范,或者想要指定保存的路径,可以在 render() 方法中提供文件路径参数。

bar_chart.render("my_bar_chart.html")

设置图表配置选项

from pyecharts import options as opts
from pyecharts.charts import Bar# 准备数据
x_data = ['一月', '二月', '三月', '四月', '五月']
y_data = [10, 20, 15, 25, 30]# 创建柱状图
bar_chart = Bar()
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("销售额", y_data)# 配置图表
bar_chart.set_global_opts(title_opts=opts.TitleOpts(title="月度销售额柱状图"),xaxis_opts=opts.AxisOpts(name="月份"),yaxis_opts=opts.AxisOpts(name="销售额(万元)"),
)# 渲染图表
bar_chart.render("bar_chart.html")

说明:

  • Bar():创建一个柱状图对象。
  • add_xaxis 和 add_yaxis:分别用于添加横轴和纵轴的数据。
  • set_global_opts:配置全局选项,包括标题、坐标轴的名称等。

生成的图表将保存为 “bar_chart.html” 文件,你可以在浏览器中打开该文件,查看生成的柱状图。

在这里插入图片描述
使用主题
pyecharts 支持主题切换,用户可以根据自己的需求选择合适的主题来改变图表的样式。

pyecharts 提供了 10+ 种内置主题,开发者也可以定制自己喜欢的主题。

以下是一个简单的例子,演示了如何使用 pyecharts 切换主题:

from pyecharts import options as opts
from pyecharts.charts import Bar
# 内置主题类型可查看 pyecharts.globals.ThemeType
from pyecharts.globals import ThemeType# 准备数据
x_data = ['一月', '二月', '三月', '四月', '五月']
y_data = [10, 20, 15, 25, 30]# 创建柱状图
bar_chart = Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))  # 初始主题为亮色系
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("销售额", y_data)# 配置图表
bar_chart.set_global_opts(title_opts=opts.TitleOpts(title="月度销售额柱状图"),xaxis_opts=opts.AxisOpts(name="月份"),yaxis_opts=opts.AxisOpts(name="销售额(万元)"),
)# 切换到暗色系主题
bar_chart.set_global_opts(theme=ThemeType.DARK)# 渲染图表
bar_chart.render("themed_bar_chart.html")

以上例子演示了如何在 pyecharts 中使用 ThemeType 来切换主题,pyecharts 支持的主题类型包括 LIGHT(亮色系)、DARK(暗色系)等,你可以根据需求选择合适的主题。

  • init_opts=opts.InitOpts(theme=ThemeType.LIGHT):在创建图表对象时,通过 init_opts 参数指定图表的初始主题,这里设置为亮色系。

在这里插入图片描述

更多 pyecharts 模块内容可以参考: https://pyecharts.org/#/zh-cn/intro

关注我,不迷路,共学习,同进步

关注我,不迷路,共学习,同进步

在这里插入图片描述

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

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

相关文章

【Spring Boot 源码学习】SpringApplication 的 run 方法核心流程介绍

《Spring Boot 源码学习系列》 SpringApplication 的 run 方法核心流程介绍 一、引言二、往期内容三、主要内容3.1 run 方法源码初识3.2 引导上下文 BootstrapContext3.3 系统属性【java.awt.headless】3.4 早期启动阶段3.5 准备和配置应用环境3.6 打印 Banner 信息3.7 新建应用…

TCP 粘包

从应用层到 TCP 传输层的多个数 据包是一连串的字节流是没有边界的,而且 TCP 首部并没有记录数据包的长度,所以 TCP 传输数据的时候可能会发送粘包和拆包的问题;而 UDP 是基于数据报传输数据的,UDP 首部也记录了数据报的长度&…

Blender表面细分的操作

在使用Blender的过程中,刚开始创建的模型,都会比较少面,这样操作起来比较流畅,减少电脑的计算量,当设计快要完成时,就会增加表面细分,这样更加圆滑,看起来更加顺眼。 比如创建一个猴头,它会默认显示如下: 从上图可以看到,有一些表面会比较大,棱角很多。 这时候你…

java声明一个日期类MyDate

声明一个日期类MyDate,包含如下方法: * - boolean isLeapYear():判断是否是闰年 * - String monthName():根据月份值,返回对应的英语单词 * - int totalDaysOfMonth():返回这个月的总天数 * - int totalDay…

win11如何重新安装应用商店,怎么重装应用商店

win11系统内置了应用商店,相当于手机的应用商城,用户们想要下载软件时,就会前往应用商店搜索下载。如果我们因为误操作,删除了win11应用商店,或者是应用商店出现闪退、卡顿等问题,这个时候,最好…

插值算法-代码实现

1、 import java.util.HashMap; import java.util.Map;public class Interpolation {public static void main(String[] args) {// 定义给定的 XML 字段值Map<String, double[]> xmlValues new HashMap<>();xmlValues.put("faceSize", new double[]{10…

MyBatis-Spring整合

引入Spring之前需要了解mybatis-spring包中的一些重要类&#xff1b; http://www.mybatis.org/spring/zh/index.html 什么是 MyBatis-Spring&#xff1f; MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。 知识基础 在开始使用 MyBatis-Spring 之前&#x…

Python学习笔记23 - 目录操作

os模块操作目录相关函数 os.path模块操作目录相关函数 案例1 —— 列出指定目录下的所有.py文件 案例2 —— walk()

掌握ChatGPT:高效撰写科研论文的必备利器

ChatGPT无限次数:点击直达 掌握ChatGPT&#xff1a;高效撰写科研论文的必备利器 在当今科研领域&#xff0c;撰写高质量的论文是每位研究者不可或缺的任务。然而&#xff0c;研究者常常在文稿撰写过程中遇到写作思路不清晰、表达不够准确甚至同义词重复等问题。针对这些挑战&a…

MySQL 8.0 字符集问题导致报错

报错&#xff1a; ### Error querying database. Cause: java.sql.SQLException: Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,COERCIBLE) MySQL 8.0引入了一些新的字符集和排序规则&#xff0c;并对现有的进行了改进。在MySQL 8.0中&#…

vue大屏

使用viewport方案和postcss-px-to-viewport插件来实现屏幕适配&#xff0c;主要是为了让你的Vue大屏应用在不同尺寸和分辨率的屏幕上都能良好地显示。以下是一个简单的实现步骤&#xff1a; 1.安装 npm install postcss-px-to-viewport --save-dev # 或者 yarn add postcs…

内网渗透-红队内网渗透工具(Viper)

红队内网渗透工具(Viper) 最近发现一款很强大的内网渗透工具Viper 接下来我给大家介绍一下具体的安装过程&#xff0c;这里我在kali上进行安装 &#xff08;1&#xff09;首先打开kali终端&#xff0c;切换到root用户,确认以下操作都在root用户下操作&#xff0c;sudo -s 安装…

Leetcode 3112. Minimum Time to Visit Disappearing Nodes

Leetcode 3112. Minimum Time to Visit Disappearing Nodes 1. 解题思路2. 代码实现 题目链接&#xff1a;3112. Minimum Time to Visit Disappearing Nodes 1. 解题思路 这一题的话思路上来说就是一个最优路径的问题&#xff0c;我们通过一个遍历&#xff0c;即可获得从0节…

【MATLAB源码-第16期】基于matlab的MSK定是同步仿真,采用gardner算法和锁相环

1、算法描述 **锁相环&#xff08;PLL&#xff09;** 是一种控制系统&#xff0c;用于将一个参考信号的相位与一个输入信号的相位同步。它在许多领域中都有应用&#xff0c;如通信、无线电、音频、视频和计算机系统。锁相环通常由以下几个关键组件组成&#xff1a; 1. **相位…

基于springboot实现医疗病历互换系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现医疗病历交互系统演示 摘要 进入21世纪&#xff0c;计算机技术迅速向着网络化的、集成化方向发展。传统的单机版应用软件正在逐渐退出舞台&#xff0c;取而代之的是支持网络、支持多种数据信息的新一代网络版应用软件&#xff0c;形成了信息化的社会。信息…

2024最新 PyCharm 2024.1 更新亮点看这篇就够了

2024最新 PyCharm 2024.1 更新亮点看这篇就够了 文章目录 2024最新 PyCharm 2024.1 更新亮点看这篇就够了&#x1f680; PyCharm 2024.1 发布&#xff1a;全面升级&#xff0c;助力高效编程&#xff01;摘要引言 &#x1f680; 快速掌握 Hugging Face&#xff1a;模型与数据集文…

(八)C++自制植物大战僵尸游戏植物基类讲解

植物大战僵尸游戏开发教程专栏地址http://t.csdnimg.cn/m0EtD 在植物大战僵尸游戏中&#xff0c;最重要的两个类别就是植物与僵尸。植物可以对僵尸进行攻击&#xff0c;不同的植物攻击方式千差万别&#xff0c;但是不同植物又有许多相同的属性。在基类&#xff08;父类&#xf…

mina通信库解决分包粘包CumulativeProtocolDecoder

mina通信库解决分包粘包时解包用CumulativeProtocolDecoder https://www.cnblogs.com/tankaixiong/archive/2013/03/18/2965527.html public class FrameDecoder extends CumulativeProtocolDecoder {Overrideprotected boolean doDecode(IoSession ioSession, IoBuffer ioBuf…

SQL Server数据库常用语句

目录 1. 建库语句 2. 删库语句 3. 创建数据表 4. 创建视图 5. 约束语句 5.1 主键约束&#xff08;PRIMARY KEY&#xff09; 5.2 外键约束&#xff08;FOREIGN KEY&#xff09; 5.3 非空约束&#xff08;NOT NULL&#xff09; 5.4 唯一约束&#xff08;UNIQUE&#xff…

【Canvas技法】绘制正三角形、切角正三角形、圆角正三角形

【图例】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>绘制正三角形、切角正三角形、圆角正三角形</title><style …