目录
pyecharts库
pandas库
示例1
示例2
pyecharts库
`pyecharts`是一个基于Python的交互式数据可视化库,旨在帮助用户轻松地创建各种类型的图表和可视化效果。该库是在Echarts开源项目的基础上开发的,Echarts是一款由百度开发的优秀的数据可视化工具。
以下是`pyecharts`库的一些主要特点和功能:
1. 强大的图表类型支持:`pyecharts`库支持多种常见的图表类型,包括折线图、柱状图、散点图、饼图、雷达图、地图等。无论是简单的二维图形还是复杂的三维图表,都能轻松地创建和定制。
2. 丰富的可视化效果:`pyecharts`库针对每种图表类型都提供了丰富的可视化配置选项,包括颜色、坐标轴、标签、图例等,使用户能够根据自己的需求进行个性化的图表设计。
3. 内置的交互功能:`pyecharts`库支持图表的交互操作,包括数据筛选、鼠标悬停交互、点击事件等。这些功能让用户可以通过简单的操作在图表中进行数据探索和交互。
4. 多种输出格式支持:`pyecharts`库支持将图表输出为多种格式,包括HTML文件、图片文件(PNG、JPG、SVG)、PDF文档。这意味着用户可以方便地将图表嵌入到网页、报告和文档等不同的应用场景中。
5. 方便易用的API接口:`pyecharts`库的API设计简洁易懂,具有良好的可读性。用户可以通过简单的代码编写创建和定制图表,无需繁琐的配置和布局,降低了用户的学习和使用门槛。
网站:中文简介 - Document (pyecharts.org)
在了解了pyecharts库之后,本文以柱状图为例来说一下pyecharts库的使用,代码来自官网
下面我将逐句解释一下这段代码
# 这两句分别导入`pyecharts`库中的`options`模块,并将其重命名为`opts`和`pyecharts`库中的`Bar`图表模块,用于创建柱状图。
from pyecharts import options as opts
from pyecharts.charts import Bar
#创建一个Bar图表实例,并将其赋值给变量c
c = (
Bar()
#使用add_xaxis()方法设置X轴的数据,这里传入一个包含多个X轴标签名称的列表。
.add_xaxis(
[
"名字很长的X轴标签1",
"名字很长的X轴标签2",
"名字很长的X轴标签3",
"名字很长的X轴标签4",
"名字很长的X轴标签5",
"名字很长的X轴标签6",
]
)
#使用add_yaxis()方法添加一个名为"商家A"的柱状图系列,同时传入该系列对应的Y轴数据。
.add_yaxis("商家A", [10, 20, 30, 40, 50, 40])
.add_yaxis("商家B", [20, 10, 40, 30, 40, 50])
#使用set_global_opts()方法设置全局配置选项,这里主要是设置X轴标签的显示样式和标题。
.set_global_opts(
#使用AxisOpts()和LabelOpts()方法设置X轴标签的样式,其中rotate=-15表示将X轴标签逆时针旋转15度来解决标签名字过长的问题。
xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
#方法设置图表的标题和副标题。
title_opts=opts.TitleOpts(title="Bar-旋转X轴标签", subtitle="解决标签名字过长的问题"),
)
#调用render()方法将图表渲染为HTML文件,并保存为"bar_rotate_xaxis_label.html"。
.render("bar_rotate_xaxis_label.html")
)
然后就可以看到生成的网页了
那如果我们想要导入excel中的数据应该怎么做呢?
pandas库
这就要提到pandas库,它是一个基于Python的开源数据分析和数据处理库。它提供了高性能、易于使用的数据结构和数据分析工具,使得在Python中进行数据操作和数据分析变得更加简单和高效。
示例1:(我这张excel表格放在桌面,名字就叫'示例')
读取地名的代码如下:
import pandas as pd
df = pd.read_excel(r'C:\Users\liang\Desktop\示例.xlsx')#存放文件的地址
column_data = df['地名']
print(column_data)
读取一行数据,以北京为例
column_data = df['地名']
row_data = df.iloc[0]
print(row_data)
示例2:
运用了上述pandas库和pyecharts库的知识
from pyecharts import options as opts
from pyecharts.charts import Bar
import pandas as pd
df = pd.read_excel(r'C:\Users\liang\Desktop\示例2.xlsx')
#取横坐标的名字
data = pd.read_excel(r'C:\Users\liang\Desktop\示例2.xlsx', usecols='B', nrows=2)
cell_value = data.iloc[0, 0]
#取纵坐标的数据
data1 = pd.read_excel(r'C:\Users\liang\Desktop\示例2.xlsx', usecols='C', nrows=2)
cell_value1 = data1.iloc[0, 0]
cell_value2 = data1.iloc[1, 0]
# 将单元格数据拆分为列表
elements = cell_value.split(',')
elements1 = cell_value1.split(',')
elements2 = cell_value2.split(',')
print(elements)
c = (
Bar()
.add_xaxis(elements)
.add_yaxis("商家A", elements1)
.add_yaxis("商家B", elements2)
.set_global_opts(
xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
title_opts=opts.TitleOpts(title="Bar-旋转X轴标签", subtitle="解决标签名字过长的问题"),
)
.render("bar_rotate_xaxis_label.html")
)
运行结果:
本文主要讲述了pyecharts库和pandas库的简单使用,并举了简单的柱状图为例子