网站建设丷金手指专业十五开发软件需要哪些人员
网站建设丷金手指专业十五,开发软件需要哪些人员,企业做网站公司怎么做,百度收录入口查询注意事项Matplotlib是Python最强大的可视化库#xff0c;可以绘制各种二维、三维图表#xff0c;对图表元素的可定制化程度很高#xff0c;什么坐标轴、刻度尺、标签、图标、颜色、背景、标记类型等等都可以自由设置#xff0c;可以说基本没有你用matplotlib绘制不了的图表#xf…Matplotlib是Python最强大的可视化库可以绘制各种二维、三维图表对图表元素的可定制化程度很高什么坐标轴、刻度尺、标签、图标、颜色、背景、标记类型等等都可以自由设置可以说基本没有你用matplotlib绘制不了的图表如果有那是你对matplotlib还不够熟悉。有不少库都基于matplotlib依赖实现可视化功能比如Seaborn、Pandas、Statsmodels等尤其Seaborn是matplotlib的高级封装版用更少的代码实现更美观的图表。还有一些库是matplotlib的拓展模块能实现更专业化的绘图功能比如Cartopy绘制地图、Mplot3d绘制3D图像、Matplotlib-Animation创建动画、mplfinance绘制金融图表、SciencePlots绘制科研图表等是matplotlib垂直领域的有力补充。我大概梳理了matplotlib的12个基础用法掌握后基本可以熟练运用matplotlib绘制各类图表最终实现以下的商业图表绘制。1、绘制基本图表Matplotlib可以绘制折线图、散点图、柱状图、饼图等各种图表使用plot方法来实现也可以用scatter、bar、pie等方法绘制各种类型图表。import matplotlib.pyplot as plt import numpy as np # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图 plt.plot(years, population / 10**9) plt.show()2、设置中文显示如果你想在Matplotlib图表上显示中文比如标题、图例则需要设置字体否则会显示乱码。要注意windows和mac字体会有不同windows可以设置SimHei黑体mac可以设置Arial Unicode MS其他的按照字体库来自定义。import matplotlib.pyplot as plt import numpy as np # 设置中文字体以Arial为例 plt.rcParams[font.sans-serif] [Arial Unicode MS]# plt.rcParams[axes.unicode_minus] False3、添加图表标题、轴标题Matplotlib可以轻松添加图表标题、X轴标题、Y轴标题分别通过plt.title(),plt.xlabel(), 和plt.ylabel()函数来实现。import matplotlib.pyplot as plt import numpy as np # 设置中文字体以Arial为例 plt.rcParams[font.sans-serif] [Arial Unicode MS]# plt.rcParams[axes.unicode_minus] False # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图 plt.plot(years, population / 10**9) # 设置图表标题、X轴标题、Y轴标题 plt.title(世界人口总量与增长, fontsize16) plt.xlabel(年份) plt.ylabel(人口总量 (十亿), color#1f77b4) plt.show()4、添加图例当图表中有多个数据系列时需要添加图例来区分可以通过plt.legend()函数实现。import matplotlib.pyplot as plt import numpy as np # 设置中文字体以Arial为例 plt.rcParams[font.sans-serif] [Arial Unicode MS]# plt.rcParams[axes.unicode_minus] False # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 growth_rate np.diff(population) / population[:-1] * 100 growth_years years[:-1] # 绘制折线图 plt.plot(years, population / 10**9, label人口总量) plt.plot(growth_years, growth_rate, label年增长率) # 设置图例 plt.legend(locupper left) plt.show()5、双坐标轴如果一个图中两个数据系列值差异很大时可以使用双坐标轴分别用于不同数据系列的度量使用plt.twinx()函数实现。import matplotlib.pyplot as plt import numpy as np # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 growth_rate np.diff(population) / population[:-1] * 100 growth_years years[:-1] # 绘制折线图1 plt.plot(years, population / 10**9, label人口总量) # 创建双轴 plt.twinx() # 绘制折线图2 plt.plot(growth_years, growth_rate, label年增长率) plt.show()6、添加文本注释和公式在图表中可以添加文本注释用于解释图表某节点的含义使用plt.text()函数实现它也可以用来添加Latex数据公式。import matplotlib.pyplot as plt import numpy as np # 设置中文字体以Arial为例 plt.rcParams[font.sans-serif] [Arial Unicode MS] plt.rcParams[axes.unicode_minus] False # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图 plt.plot(years, population / 10**9) # 添加文本注释 plt.text(2015, 7.0, 2020年后人口增长放缓, fontsize12, styleitalic, colorred, bboxdict(boxstyleround,pad0.3, fcyellow, ecred, lw1, alpha0.5)) # 添加数学公式 plt.text(1970, 4.0, r增长率公式: $P_{t1} P_t(1r)$, fontsize14, colorblack, bboxdict(boxstyleround,pad0.5, fcwhite, ecgray, lw1, alpha0.8)) plt.show()7、设置坐标轴和刻度坐标轴和刻度也可以自定义调整你能用plt.xlim(),plt.ylim(),plt.xticks(), 和plt.yticks()这几个方法来控制坐标轴的显示范围和刻度。import matplotlib.pyplot as plt import numpy as np # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图 plt.plot(years, population / 10**9, label人口总量) # 设置x和y坐标轴范围 plt.xlim(1960, 2000) plt.ylim(0, 9) plt.show()8、调整线条样式、颜色和标记在plot函数中通过调整color、marker、linestyle、linewidth等参数可以自定义颜色、标记、线条样式、线条粗细等格式。import matplotlib.pyplot as plt import numpy as np # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图并调整线条样式 plt.plot(years, population / 10**9, label人口总量, color#1f77b4, markero, linestyle--, linewidth2.5) plt.show()9、设置背景样式背景样式也可以一键调整比如设置网格线等通过plt.grid()函数添加样式。import matplotlib.pyplot as plt import numpy as np # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图并调整线条样式 plt.plot(years, population / 10**9, label人口总量, color#1f77b4, markero, linestyle--, linewidth2.5) #添加背景网格线 plt.grid(True, linestyle:, alpha0.6) plt.show()10、设置不同风格matplotlib内置了很多种图表风格可以自主切换通过plt.style.use()函数实现。import matplotlib.pyplot as plt import numpy as np # 使用 ggplot 风格 plt.style.use(ggplot) # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 绘制折线图并调整线条样式 plt.plot(years, population / 10**9, label人口总量, color#1f77b4, markero, linestyle--, linewidth2.5) plt.show()11、创建多子图matplotlib支持创建多个子图可以用plt.subplots()方式实现它是一种面向对象的形式。import matplotlib.pyplot as plt import numpy as np # 准备数据 years np.arange(1950, 2021, 10) population np.array([2.52, 3.02, 3.70, 4.44, 5.33, 6.13, 6.96, 7.78]) * 10**9 # 创建多子图 fig, (ax1, ax2) plt.subplots(1, 2, figsize(16, 8), sharexTrue) # 子图1 line1, ax1.plot(years, population / 10**9) # 子图2 line2, ax2.plot(years, population / 10**9) ax2.fill_between(years, population / 10**9, color#2ca02c, alpha0.3) plt.show()12、导出图表绘制好图表后使用plt.savefig()函数导出图表导出格式很多比如png、jpg、svg、pdf等还可以通过dpi参数设置分辨率。plt.savefig(test_chart.png, dpi300)总结最后综合以上基础用法咱们绘制一张商业图表用于展示世界人口增长的趋势相当于是练手你可以绘制任何想要绘制的图表。