当前位置:网站首页>Matplotlib quick start
Matplotlib quick start
2022-07-07 22:26:00 【51CTO】
Matplotlib What is it? ?
Matplotlib Is a comprehensive library , Used in Python Create static , Animated and interactive visual images .
at present (22 year 6 month ) The latest stable version is 3.5.2
install :
Use pip Installation
pip install matplotlib
Quick start
Let's first import matplotlib
Matplotlib In the figure (Figure)( for example , window ,Jupyter Small parts, etc ) Draw data on , A graph can contain one or more axis fields (Axes).
Axes It can be based on x-y Coordinates the drawing area of the specified point ( Or in polar coordinates θ-r,3D In the picture x-y-z etc. ). Create with Axes The easiest way to get a graph of is to use pyplot.subplots. then , We can use Axes.plot stay Axes Draw some data on :
The line chart will be displayed after running :

chart (Figure) Structure
A picture has the following parts : title (Title)、 legend (Legend)、x、y Axis labels (xlabel、ylabel) wait ......

The following is a part by part introduction .
chart Figure
Complete image . This graph tracks all sub axis domains (Axes)---- A group of “ special ” Painting ( title , legend , Color bar, etc ), Even nested subgraphs .
The easiest way to create a new diagram is to use pyplot:
Usually , Set the axis field (Axes) And Figure It is convenient to create together , But you can also add the axis domain manually later .
Axis domain Axes
Axis domain (Axes) Is attached to the graph (Figure) On , Contains graphics for plotting data .
It usually includes two shafts (Axis) object . The two axes provide scales (ticks) And labels (tick label), To provide a scale for the data in the axis . Every Axis domain There's also a title ( adopt set_title()) Set up )、 One x label ( adopt set_xlabel()) Set up ) And a y label ( adopt set_ylabel()) Set up ).
Axes Class and its member functions use the OOP The main entry point of the interface , And most drawing methods are defined on it ( for example , As shown above , Use plot Method )ax.plot()
Axis Axis
Axis setting scale (scale) And limits (limits) And generate scales (ticks, Mark on shaft ) And scale labels (ticklabels, String marking the scale )ticks The position is determined by the positioner (Locator) determine ,ticklabel The string consists of Formatter (Formatter) Set up . Correct positioner (Locator) and Formatter (Formatter) The combination of can control the scale position and label very finely .
Artist
Artist Here it is translated into an artist or painter .
Basically , Everything visible on the graph is an artist ( Even graphics , Axis domain and Axis object ). This includes Text 、 Line2D 、 aggregate 、 Patch etc. . When rendering graphics , All artists will be drawn to canvas On . Most artists are associated with axis fields ; Such artists cannot be shared by multiple axis fields , Nor can it move from one axis to another .
Input data type of drawing function
Drawing function receives numpy.array or numpy.ma.masked_array As input , Or it can be passed to numpy.asarray The data of .pandas Data or numpy.matrix May not work properly . A common convention is to convert data into numpy.array. for example :
Most methods can also resolve addressable objects , Such as dict,np.recarray or pandas.DataFrame.
Matplotlib Allow the use of keyword parameters to generate images , Transfer and x,y Corresponding string .
The drawing is , The second one is that s,c Image after parameter :

Encoding style Coding Styles
object-oriented (OO) and pyplot The function interface .
Basically, there are two uses Matplotlib Methods :
- Create explicitly “ graphics (Figures)” and “ Axis domain (Axes)”, And call the method on it (“ object-oriented (OO) style ”).
- rely on pyplot Automatically create and manage drawings and axes , And use pyplot Function to plot .
Use OO style ( I feel OO The style is better , Just in the axis field (Axes) Object can be set , Very clear ):
Or use pyplot Function style :

( Besides , There's a third way , Used in GUI Embed... In the application Matplotlib The situation of , Even for graphic creation . For more information , See the corresponding section in the Library : Embed Matplotlib.
Common drawing types
From the homepage of the official website Get into Plot types, You can see how to draw commonly used different types of graphs .

You can see , Common line chart 、 Scatter plot 、 Histogram, etc . Click the corresponding figure to enter the corresponding case .

The main usage is basically like this , We'll talk about some style adjustments later .
Reference resources :
Matplotlib documentation — Matplotlib 3.5.2 documentation
https://matplotlib.org/stable/index.html
边栏推荐
- Win11游戏模式怎么开启?Win11开启游戏模式的方法
- Record problems fgui tween animation will be inexplicably killed
- Blender exchange group, welcome to the water group ~
- OpenGL jobs - shaders
- Which futures company is the safest to open a futures account?
- 648. Word replacement
- Typescript TS basic knowledge type declaration
- The strongest installation of the twin tower model, Google is playing "antique" again?
- 使用 BlocConsumer 同时构建响应式组件和监听状态
- MIT6.S081-Lab9 FS [2021Fall]
猜你喜欢

An in-depth understanding of fp/fn/precision/recall

【Azure微服务 Service Fabric 】在SF节点中开启Performance Monitor及设置抓取进程的方式

Remember aximp once Use of exe tool

How to make agile digital transformation strategy for manufacturing enterprises

Ternary expressions, generative expressions, anonymous functions
![Jerry's about TWS pairing mode configuration [chapter]](/img/fd/dd1e252617d30dd7147dbab25de5b4.png)
Jerry's about TWS pairing mode configuration [chapter]

Display optimization when the resolution of easycvr configuration center video recording plan page is adjusted

如何选择合适的自动化测试工具?

Cannot find module 'xxx' or its corresponding type declaration

Embedded development: how to choose the right RTOS for the project?
随机推荐
[JDBC Part 1] overview, get connection, CRUD
How to quickly check whether the opening area ratio of steel mesh conforms to ipc7525
OpenGL jobs - shaders
客户案例|华律网,通过观测云大幅缩短故障定位时间
C # Development -- pit encountered in JS intermodulation
OpenGL configure assimp
Win11时间怎么显示星期几?Win11怎么显示今天周几?
How polardb-x does distributed database hotspot analysis
谈谈制造企业如何制定敏捷的数字化转型策略
Xcode modifies the default background image of launchscreen and still displays the original image
[开源] .Net ORM 访问 Firebird 数据库
[interview arrangement] 0211 game engine server
JS number is insufficient, and 0 is added
【Azure微服务 Service Fabric 】如何转移Service Fabric集群中的种子节点(Seed Node)
使用 CustomPaint 绘制基本图形
[azure microservice service fabric] how to transfer seed nodes in the service fabric cluster
Anti climbing killer
MIT6.S081-Lab9 FS [2021Fall]
The latest Android interview collection, Android video extraction audio
The function is really powerful!