佛山网站制作建设,网络科技工作室起名,成都商城类网站设计,广告优化师工作内容Matplotlib和Plotly是两个在Python中广泛使用的数据可视化库#xff0c;它们具有丰富的API和功能#xff0c;用于创建各种类型的图表和图形。在本篇博客中#xff0c;我们将介绍它们的主要特点和基本用法。
Matplotlib
主要特点#xff1a;
高度自定义#xff1a; Matp…Matplotlib和Plotly是两个在Python中广泛使用的数据可视化库它们具有丰富的API和功能用于创建各种类型的图表和图形。在本篇博客中我们将介绍它们的主要特点和基本用法。
Matplotlib
主要特点
高度自定义 Matplotlib允许开发人员完全自定义图表的各个方面包括线条样式、颜色、标签、图例、坐标轴等。支持多种图表类型 Matplotlib支持多种类型的图表包括二维和三维图表使其适用于各种数据可视化需求。交互式绘图 Matplotlib可以嵌入到交互式环境中如Jupyter Notebook使用户能够实时交互式地探索数据。输出格式多样 可以将Matplotlib绘制的图表保存为多种输出格式包括图像文件如PNG、JPEG、PDF文件或直接显示在图形用户界面中。
基本用法
导入Matplotlib 使用 import matplotlib.pyplot as plt 导入Matplotlib库通常使用 plt 作为别名。创建图表 使用 plt.figure() 创建一个图表对象可以设置图表的大小、分辨率等属性。绘制图形 使用Matplotlib提供的函数和方法来绘制图形例如使用 plt.plot() 绘制折线图、plt.scatter() 绘制散点图、plt.bar() 绘制柱状图等。设置图表属性 使用函数如 plt.title()、plt.xlabel()、plt.ylabel() 来设置图表标题和坐标轴标签使用 plt.legend() 添加图例使用 plt.grid() 显示网格等。显示图表 使用 plt.show() 来显示绘制的图表。在Jupyter Notebook等交互式环境中图表通常会自动显示。
Plotly
Plotly的Python库提供了多个API供用户创建交互式可视化图表。以下是Plotly库的一些主要API和其主要功能 plotly.graph_objects API 这是Plotly的核心API允许用户通过创建 go.Figure 对象来绘制各种类型的图表。 go.Figure(): 创建一个新的图表对象。add_trace(): 向图表对象添加数据系列例如线图、散点图、柱状图等。update_layout(): 设置图表的布局和样式包括标题、坐标轴标签、图例等。update_xaxes() 和 update_yaxes(): 设置X轴和Y轴的属性如刻度、范围等。show(): 显示图表。 plotly.express API 这是一个更高级的API可以用更少的代码生成常见类型的图表。它适用于快速可视化和探索性数据分析。 px.line(), px.scatter(), px.bar(): 创建线图、散点图和柱状图等。px.pie(): 创建饼图。px.choropleth(): 创建地图和轮廓地图。其他快速可视化函数。 plotly.subplots API 这个API允许用户创建包含多个子图的复杂布局用于同时显示多个图表。 make_subplots(): 创建包含多个子图的图表布局。add_trace(): 向子图添加数据系列。update_layout(): 设置整个布局的样式。 plotly.offline API 用于将Plotly图表保存为本地文件或在离线环境中显示图表。 plot(): 显示图表并将其保存为HTML文件。init_notebook_mode(): 初始化Jupyter Notebook中的Plotly图表显示。 plotly.io API 用于导出和显示Plotly图表的方法。 write_html(): 将图表导出为HTML文件。write_image(): 将图表导出为图像文件如PNG、JPEG。show(): 显示图表。
这些API提供了广泛的选项和功能允许用户创建各种类型的交互式可视化图表。用户可以根据数据和需求选择适当的API并使用这些API来定制图表的样式、交互性和显示方式。 Plotly的文档和示例提供了更多关于API的详细信息和用法示例。两者都是非常强大的工具根据需求选择适当的库来实现数据可视化目标。
样例演示
使用Matplotlib绘制销售业绩分析图表
Python
复制代码
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.pyplot import MultipleLocator
def test01():plt.rcParams[font.sans-serif] [SimHei] # 设置中文字体x np.arange(0, 30, 1)y1 3 * np.sin(2 * x) 2 * x 1y2 2 * np.cos(2 * x) 3 * x 9plt.figure(figsize(11, 7))plt.plot(x, y1, linestyle-., colorred, linewidth5.0)plt.plot(x, y2, marker*, colorgreen, markersize10)plt.xlabel(日期, size16)plt.ylabel(金额, size16, rotation90, verticalalignmentcenter)x_major_locator MultipleLocator(2)y_major_locator MultipleLocator(10)ax plt.gca()ax.xaxis.set_major_locator(x_major_locator)ax.yaxis.set_major_locator(y_major_locator)plt.tick_params(labelsize16)plt.xlim(0, 30)plt.ylim(0, 100)plt.legend(labels[利润额, 销售额], locupper left, fontsize15)plt.title(2020年9月份企业商品销售业绩分析, loccenter, size20)plt.show()这个示例代码演示了如何使用Matplotlib库创建销售业绩分析图表包括自定义样式、标签、刻度等。 这段代码导入了NumPy用于生成数据Matplotlib库用于绘图以及用于设置坐标轴刻度间隔的MultipleLocator。
具体实现思路如下
首先生成销售数据比如日期、利润额和销售额。这是你需要在图表上展示的数据。这可以通过NumPy来完成比如
python
复制代码x np.arange(0, 30, 1)
profit 3 * np.sin(2 * x) 2 * x 1
sales 2 * np.cos(2 * x) 3 * x 9接下来你可以创建一个图表对象。这将是你的绘图画布你可以在上面绘制图表。设置图表的大小可以使用下面的代码
python
复制代码plt.figure(figsize(11, 7))然后你可以使用plt.plot()来绘制销售数据的曲线。你可以自定义线条的样式、颜色和宽度。比如
python
复制代码plt.plot(x, profit, linestyle-., colorred, linewidth5.0)
plt.plot(x, sales, marker*, colorgreen, markersize10)接下来你需要设置坐标轴标签、刻度间隔、刻度标签字体大小和坐标轴范围。这可以使用下面的代码来实现
python
复制代码plt.xlabel(日期, size16)
plt.ylabel(金额, size16, rotation90, verticalalignmentcenter)
x_major_locator MultipleLocator(2)
y_major_locator MultipleLocator(10)
ax plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
ax.yaxis.set_major_locator(y_major_locator)
plt.tick_params(labelsize16)
plt.xlim(0, 30)
plt.ylim(0, 100)接着你可以添加图例以区分不同的曲线并设置图表的标题
python
复制代码plt.legend(labels[利润额, 销售额], locupper left, fontsize15)
plt.title(2020年9月份企业商品销售业绩分析, loccenter, size20)最后你可以使用plt.show()来显示你的图表
python
复制代码plt.show()用Pyecharts库创建了一个柱状图
Python
复制代码
def test02():from pyecharts.charts import Barfrom pyecharts import options as optsbar (Bar().add_xaxis([衬衫, 毛衣, 领带, 裤子, 风衣, 高跟鞋, 袜子]).add_yaxis(商家A, [114, 55, 27, 101, 125, 27, 105]).add_yaxis(商家B, [57, 134, 137, 129, 145, 60, 49]).set_global_opts(title_optsopts.TitleOpts(title商家A和商家B9月份销售数量统计,title_textstyle_optsopts.TextStyleOpts(font_size20)),xaxis_optsopts.AxisOpts(axislabel_optsopts.LabelOpts(font_size16)),yaxis_optsopts.AxisOpts(axislabel_optsopts.LabelOpts(font_size16)),toolbox_optsopts.ToolboxOpts(),legend_optsopts.LegendOpts(is_showTrue, item_width40, item_height20,textstyle_optsopts.TextStyleOpts(font_size16))).set_series_opts(label_optsopts.LabelOpts(font_size16)))bar.render(sales.html)这段代码是用Pyecharts库创建了一个柱状图主要展示了两家商家商家A和商家B在九月份的销售数量情况。这种图表在比较不同商品销售数据时非常有用。
首先我们导入所需的库和模块然后创建一个柱状图对象。我们定义了X轴的标签这些标签代表不同种类的商品比如衬衫、毛衣、领带等等。
接下来我们添加了两个数据系列分别代表商家A和商家B的销售数据。这些销售数据以列表的形式提供包括不同商品的销售数量。
然后我们设置了一些全局选项如图表的标题、坐标轴标签的字体大小、工具栏选项和图例。标题是商家A和商家B9月份销售数量统计为了使标题更醒目我们将标题字体大小设置为20。坐标轴标签也有一个合适的字体大小以确保图表易于阅读。
最后我们还对数据系列进行了一些选项设置特别是标签的字体大小。
最终我们使用.render(sales.html)将生成的图表保存为一个HTML文件文件名为sales.html。这个HTML文件可以在浏览器中打开以查看和分享这个柱状图从而更好地了解商家A和商家B的销售情况。
效果展示图 使用Plotly库来创建一个饼图
Python
复制代码
def test03():import plotly.offline as pyimport plotly.graph_objects as gostore [定远店, 东海店, 海恒店, 金寨店, 燎原店, 临泉店, 庐江店, 明耀店, 众兴店]consumer [30, 22, 20, 28, 16, 30, 24, 18, 12]fig go.Figure(data[go.Pie(labelsstore, valuesconsumer, textinfolabelpercent, insidetextorientationradial)])fig.update_layout(legend_title客户类型, # 图例标题文本width700, height500, # 设置图像的大小titledict(text2020年第二季度各门店销售业绩分析,x0.5,xanchorcenter,xrefpaper),fontdict(familyCourier New, monospace, # 标题的字体size18, # 标题的大小colorRebeccaPurple # 标题的颜色))py.plot(fig, filenamebingtu.html)段代码使用了Plotly库来创建一个饼图用于展示不同门店在2020年第二季度的销售业绩情况。饼图是一种很好的方式来比较各部分在整体中的占比情况。
首先我们导入了所需的库和模块包括Plotly的offline和graph_objects。然后我们定义了两个列表store和consumer它们分别包含了门店名称和对应的销售业绩数据。
接下来我们创建了一个Figure对象其中使用go.Pie创建了一个饼图。在饼图中labels参数代表各门店的名称values参数代表对应的销售业绩数据。textinfo参数设置了饼图上显示的文本信息这里是标签和百分比insidetextorientation参数设置了文本方向。
然后我们使用update_layout来设置图表的布局和样式。这包括设置图表的标题、宽度和高度以及标题的字体、大小和颜色。
最后我们使用py.plot将生成的饼图保存为一个HTML文件文件名为bingtu.html。这个HTML文件可以在浏览器中打开以查看和分享门店销售业绩的饼图帮助理解不同门店在总销售中的占比情况。这是一种直观的数据可视化方法。
展示图如下 使用 Pyecharts 库来创建一个地图图表
Python
复制代码
from pyecharts import options as opts
from pyecharts.charts import Map# 提供的数据
city_sales [(长沙市, 184), (株洲市, 192), (湘潭市, 171), (衡阳市, 131), (邵阳市, 149),(岳阳市, 121), (常德市, 71), (张家界市, 83), (益阳市, 88), (郴州市, 156),(永州市, 99), (怀化市, 86), (娄底市, 65)
]city_profits [(长沙市, 18.4), (株洲市, 19.2), (湘潭市, 17.1), (衡阳市, 13.1), (邵阳市, 14.9),(岳阳市, 12.1), (常德市, 7.1), (张家界市, 8.3), (益阳市, 8.8), (郴州市, 15.6),(永州市, 9.9), (怀化市, 8.6), (娄底市, 6.5)
]# 整理数据
city_names [item[0] for item in city_sales]
profit_data [item[1] for item in city_profits]# 绘制商品利润额地图
profits_map (Map().add(series_name2020年湖南省各地级市商品利润额, # 添加数据的系列名称data_pair[(city, profit) for city, profit in zip(city_names, profit_data)], # 添加地图数据包括城市名和商品利润额maptype湖南, # 地图类型为湖南is_map_symbol_showTrue, # 显示城市名).set_series_opts(label_optsopts.LabelOpts(is_showTrue), # 设置标签选项这里是显示标签).set_global_opts(title_optsopts.TitleOpts(title2020年湖南省各地级市商品利润额,subtitle数据来源湖南省统计局,pos_right10px,pos_top20px,),visualmap_optsopts.VisualMapOpts(max_max(profit_data)),)
)# 生成 HTML 文件
profits_map.render(湖南省商品利润额地图.html)这段代码使用了 Pyecharts 库来创建一个地图图表用于展示湖南省各地级市在2020年的商品利润额情况。以下是代码的口语叙述
首先我们导入了所需的库和模块包括 Pyecharts 的选项模块 opts 和地图图表模块 Map。
然后我们提供了两个数据列表 city_sales 和 city_profits分别包含了各地级市的销售额和商品利润额数据。这些数据是根据不同城市的统计信息整理而来。
接下来我们提取了城市名称和商品利润额的数据以便用于地图图表的绘制。
然后我们创建了一个地图图表对象 profits_map。在这个图表中我们使用 .add() 方法添加了地图的系列名称和数据对其中包括城市名称和商品利润额数据。地图的类型被设置为湖南表示我们要绘制湖南省的地图并设置了显示城市名的选项。
接着我们使用 .set_series_opts() 方法设置了标签选项以便在地图上显示标签。
最后我们使用 .set_global_opts() 方法设置了图表的全局选项包括标题、副标题、位置等信息并使用 visualmap_opts 设置了可视化地图的选项以便调整颜色映射和范围。
最后我们使用 .render() 方法生成了一个 HTML 文件文件名为 “湖南省商品利润额地图.html”。这个 HTML 文件包含了绘制的地图图表可以在浏览器中打开以查看湖南省各地级市的商品利润额分布情况。这是一种直观的数据可视化方法帮助用户更好地理解不同城市的商品利润情况。
效果展示图 题外话
在此疾速成长的科技元年编程就像是许多人通往无限可能世界的门票。而在编程语言的明星阵容中Python就像是那位独领风 骚的超级巨星 以其简洁易懂的语法和强大的功能脱颖而出成为全球最炙手可热的编程语言之一。 Python 的迅速崛起对整个行业来说都是极其有利的 但“人红是非多”导致它平添了许许多多的批评不过依旧挡不住它火爆的发展势头。
如果你对Python感兴趣想要学习pyhton这里给大家分享一份Python全套学习资料都是我自己学习时整理的希望可以帮到你一起加油
有需要的小伙伴可以点击下方链接免费领取或者V扫描下方二维码免费领取 CSDN大礼包全网最全《Python学习资料》免费分享安全链接放心点击
1️⃣零基础入门
① 学习路线
对于从来没有接触过Python的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。
② 路线对应学习视频
还有很多适合0基础入门的学习视频有了这些视频轻轻松松上手Python~
③练习题
每节视频课后都有对应的练习题哦可以检验学习成果哈哈
2️⃣国内外Python书籍、文档
① 文档和书籍资料 3️⃣Python工具包项目源码合集
①Python工具包
学习Python常用的开发软件都在这里了每个都有详细的安装教程保证你可以安装成功哦
②Python实战案例
光学理论是没用的要学会跟着一起敲代码动手实操才能将自己的所学运用到实际当中去这时候可以搞点实战案例来学习。100实战案例源码等你来拿
③Python小游戏源码
如果觉得上面的实战案例有点枯燥可以试试自己用Python编写小游戏让你的学习过程中增添一点趣味
4️⃣Python面试题
我们学会了Python之后有了技能就可以出去找工作啦下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂并且有阿里大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。
5️⃣Python兼职渠道
而且学会Python以后还可以在各大兼职平台接单赚钱各种兼职渠道兼职注意事项如何和客户沟通我都整理成文档了。
上述所有资料 ⚡️ 朋友们如果有需要的可以扫描下方二维码免费领取