html数据分析表格api_Python数据分析基本库——Matplotlib(一)

1. Matplotlib基础:https://www.runoob.com/numpy/numpy-matplotlib.html2. Matplotlib官网:https://matplotlib.org/3. Matplotlib中文:https://www.matplotlib.org.cn/

Matplotlib简介

Matplotlib 是 Python 的绘图库。它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。它也可以和图形工具包一起使用,如 PyQt 和 wxPython。

大量的第三方软件包 扩展并建立在Matplotlib功能的基础上,包括几个更高级别的绘图界面(seaborn, holoviews, ggplot,...)以及两个投影和制图工具包(basemap和cartopy)

Matplotlib绘图基础[1]

基本原理

在绘图结构中,figure创建窗口,subplot创建子图。所有的绘画只能在子图上进行。plt表示当前子图,若没有就创建一个子图。所有你会看到一些教程中使用plt进行设置,一些教程使用子图属性进行设置。他们往往存在对应功能函数。

Figure:面板(图),matplotlib中的所有图像都是位于figure对象中,一个图像只能有一个figure对象。Subplot:子图,figure对象下创建一个或多个subplot对象(即axes)用于绘制图像。

配置参数

参数解释
axex设置坐标轴边界和表面的颜色、坐标刻度值大小和网格的显示
figure控制dpi、边界颜色、图形大小、和子区( subplot)设置
font字体集(font family)、字体大小和样式设置
grid设置网格颜色和线性
legend设置图例和其中的文本的显示
line设置线条(颜色、线型、宽度等)和标记
patch是填充2D空间的图形对象,如多边形和圆。控制线宽、颜色和抗锯齿设置等。
savefig可以对保存的图形进行单独设置。例如,设置渲染的文件的背景为白色。
verbose设置matplotlib在执行期间信息输出,如silent、helpful、debug和debug-annoying。
xticks和yticks为x,y轴的主刻度和次刻度设置颜色、大小、方向,以及标签大小。

要进行相关配置,还需要查阅用户手册或参考网络文献。

Matplotlib创建基本图形

1. 折线图

matplotlib 函数plot(x, y)[2]

x: 线或标记的x坐标。•y: 线或标记的y坐标。

import matplotlib.pyplot as pltimport numpy as np
x = [1,2,3,4,5,6]  y1 = [i * 2 for i in x]  # [2,4,6,8,10,12]y2 = [m * m for m in x]  # [1,4,9,16,25,36]plt.figure(figsize=(5,5))#画板大小plt.plot(x, y1)plt.plot(x, y2)plt.show()

3cb7de0609e17497a4df510ed16d92b4.png

2. 柱状图(竖向)

matplotlib 函数bar(left, height)[3]

left: 左侧的x坐标。•height: 柱状图的高度。

dt = np.arange(1, 5) values = [2, 5, 9,5]plt.figure(figsize=(6,5))plt.bar(dt, values)plt.show()

fcf6a377f1556951fb330aebfcc89742.png

叠加图
dt = np.arange(1, 5)values = [2, 5, 9,5]values1 = [3, 5, 7,20]plt.figure(figsize=(6,5))plt.bar(dt, values)plt.bar(dt, values1 ,bottom = values)#plt.bar(dt, values1)plt.show()

98a89fe53196c0719d5dd54d2c472fe6.png

3. 柱状图(横向)

matplotlib 函数barh(bottom, width)[4]

bottom:柱图y坐标•width: 柱图的宽度.

matplotlib中文乱码问题,可以通过以下方式简单解决[5]

plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签plt.rcParams['axes.unicode_minus']=False #用来正常显示负号categories = ['1', '2', '3', '4', '5']values= [7, 12, 4, 2, 9]plt.figure(figsize=(6,6))plt.barh(np.arange(len(categories)), values)plt.yticks(np.arange(len(categories)),           ['城市 %s' % x for x in categories])plt.show()

30b4db89d2e8473005872f8342fdd2ed.png

4. 直立方

matplotlib 函数hist(x)[6]

x: 要显示的分布的值列表。

column_data = np.random.normal(33, 3, 1000)  # 创建1000个正态(高斯)分布随机数。平均值为42,标准偏差为3。plt.figure(figsize=(6,6))plt.hist(column_data)plt.show()

148f23f91aac86ad8e59d173813b5879.png

5. 饼图

matplotlib 函数pie(sizes)[7]

sizes: 楔子的大小,如分数或数字。

counts = [20,30,45, 5]plt.figure(figsize=(6, 6))plt.pie(counts)plt.show()

23576a9bb29a9c7cc0400934210aaca9.png

设置参数
plt.pie(counts,                        #         colors=['blue', 'orange','red','green'],        labels=['City A', 'City B','City C','City D'],        startangle=90,        autopct='%.2f%%')# plt.legend()plt.show()

24f4c8e00c3e21b06e651c2c91e42abb.png

6. 散点图

matplotlib 函数scatter(x, y)[8]

xy: 这两个变量的值。

x = range(100)y = np.arange(50, 70,0.2) + (np.random.random(100) * 10.)print(x)print(y)
plt.figure()plt.scatter(x, y)plt.show()

f52259ec87e52b3a9c9564f92b2e4ce8.png

设置参数
city1 = ['武汉','襄阳','宜昌','荆州']gdp = [14847.29,4309.79,4064.18,2082.18]colors = ['r','b','k','y']plt.scatter(range(1,5), gdp, s=gdp, c=colors,alpha=0.5)plt.xticks(range(1,5), city1)plt.grid(True)plt.show()

a3659aac59b4136d6ad45320232ee27e.png

References

[1] Matplotlib绘图基础: https://www.jianshu.com/p/da385a35f68d[2] plot(x, y)http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.plot[3] bar(left, height)http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.bar[4] barh(bottom, width)http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.barh[5] matplotlib中文乱码问题,可以通过以下方式简单解决: https://www.zhihu.com/question/25404709[6] hist(x)http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.hist[7] pie(sizes)http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.pie[8] scatter(x, y)http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.scatter

[9]Matplotlib创建基本图形https://mooc.study.163.com/smartSpec/detail/1001454002.htm?share=1&shareId=1647514

近期文章

Python入门:

Python安装与环境配置

Python基础用法 |《Python与开源GIS》

Python读取excel的两种方法

Python读取json数据

Python基本库——解析库XPath

Python基本库—正则表达式(regex)

python数据分析基本库—NumPy

python数据分析基本库—Pandas(一)

Python数据分析基本库——Pandas(二)

第一个Python爬虫

空间分析:

开工了开工了!空间计量模型系列教程一

空间计量模型系列教程二

情人节特辑之带有惊喜的空间计量模型系列教程三

空间计量模型系列教程四

空间计量模型系列教程五(完结啦)

空间计量||空间权重矩阵

空间计量——用GeoDa和stata生成空间权重矩阵的方法

空间计量|| matlab实现空间计量模型SAR、SEM、SDM

分享||空间计量科研工具(一)

区域经济:

经济地理学是经济学还是地理学?附重点外文期刊目录

经济地理基本认识:异质性与尺度、格局、结构、功能

分享||区域与城市经济学、房地产经济学与资源环境经济学慕课

复旦大学城市经济研究所推荐阅读文献

北京大学《城市经济学》推荐阅读文献

城市、区域经济学必读书目推荐

其他:

MK突变检验的matla实现

一个机智的MATLAB出图tips

综合评价||泰尔指数的matlab实现

空间计量之评价||DEA常见模型的matlab的实现(1)——CCR

空间计量之评价||DEA常见模型的matlab的实现(2)——非期望产出SBM

空间计量之评价||DEA常见模型的matlab的实现(2)——无非期望产出SBM

CiteSpace实操教程

基于SPSS的调查问卷信度和效度检验

fb6c497dc5d75c13d2980f7ae1ddeefc.png

如果觉得有用就点一下“在看”

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值