password
type
Post
status
Published
date
Feb 2, 2022
slug
summary
第一次美赛的备赛准备
tags
Python
category
学习思考
icon
Python可视化是数模建模手的必修课(当然了,只是觉得MatLab学多了局限性比较大),该笔记的内容主要是基于Matplotlib库实现Python可视化。
Matplotlib官方网站:Matplotlib documentation — Matplotlib 3.5.1 documentation
引入Matplotlib作为函数库
import matplotlib.pyplot as plt import numpy as np # 引入matplotlib.pyplpt 并且定义其简称为 plt ,在后续的代码中,可以通过plt.来调用matplotlib.pyplpt内的函数
在引入Matplotlib库的同时,引入numpy库
numpy:一个强大的、用于数字处理的第三方库,可以利用它来开多位数组,实现高级的矩阵运算。它是基于C语言的库,相比Python具有更高的效率。
建立画布(plt./ax.)
建立可视图(figure.)的方法有两种,类似于Unity的Canvas画布,可视图也建立在一张规定的画布之上,需要强调的是,想要生成可视图,就必须要调用plt.figure()函数。
可以通过plt.或者ax.两种方式来部署。
fig,ax = plt.subplots()
效果上,这段代码等价于
fig = plt.figure() ax = fig.add_subplots(1,1,1)
也可以利用plt.
plt.figure(num=1,figsize=(16,10)) # 其中 figsize内参数表示figure的长与宽 num=n(n表示任意整数)<=>Figure(n) plt.plot(x,y1,color='',linewidth= ,linestyle=' ') # 在图上绘制函数y1(x) 内包含参数color,行宽,线条形状
需要强调的是,每次绘制都是基于原先画布上的绘制,想要完整的绘制多张可视图,正确的操作应该是
plt.figure(...)==>多次使用plt.plot()来在同一张画布上绘制多条曲线
==>plt.figure()再生成一张画布进行之后的绘图
对于可视图进行细节处理
plt.title('the title of the plot') # 设置轴的标题 plt.xlim(min,max) plt.ylim(min,max) # 对于x,y展示范围进行限制,仅绘制limitation内的图像 plt.xlabel('Label of X') # 修改x轴的名称,显现在x轴下方 注意括号内需要加上单引号或者双引号 plt.xticks([-1,0,1],['bad','normal','good'] plt.yticks([0,2,4],['0B','2B','4B'] # 利用英文标签替换x轴的对应位置,代替原有数轴 也即 轴的标签 # 也可以将标签写为 '$bad$' 与 '$really\ good$'等类似形式来更改为美化字体,详情需要参考LaTex公式 # plt.xticks([-1,0,1,2],['$bad$','normal','$good\\alpha$','$really\ good$'])
plt.xlabel( )与plt.xticks( )的效果展示

plt.xlabel( )与plt.xticks( )的效果展示
title,yticks,scatter散点图

title,yticks,scatter散点图
plt.plot(x,y1,label='the figure of y1') plt.legend() # 通过plt.legend()函数 在视图内添加对于图像的标注
plt.legend( )的效果图

plt.legend( )的效果图
绘制一个一次函数(y1=2x)和一个二次函数(y2=x2)
x=np.linspace(-3,3,200) # 在[-3,3]内以等差数列的方式生成200个数,定义为函数的自变量 y1=x*2 y2=x**2 # 对函数值与自变量进行关联 plt.figure(num=2,figsize=(5,5)) plt.plot(x,y1) # 建立画布,并且在画布上绘制第一张函数图像 plt.figure(num=-1,figsize=(5,5)) plt.plot(x,y2) # 同理,绘制第二张函数图像 # 也可以通过 plt.plot(x,y1,x,y2)达到同时绘制两份函数曲线的效果 plt.show();
y=2x

y=2x
y=x^2

y=x^2
自定义x与y的值
x = [1,2,3] y = [1,2,3] # 相当于在函数图像上标记了(1,1)(2,2)(3,3)三个点
- Author:KrystalRay
- URL:https://krystalray.blog/article%2Faa7e9e5b-e53c-479f-9355-ae55595d6229
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!