


Illustrated Matplotlib drawing methods: from basic to advanced, specific code examples are required
Introduction:
Matplotlib is a powerful drawing library commonly used for data visualization . Whether it's a simple line chart, or a complex scatter plot or 3D chart, Matplotlib can meet your needs. This article will introduce Matplotlib's drawing methods in detail, from basic to advanced, and provide specific code examples.
1. Installation and import of Matplotlib
- Installing Matplotlib
Use the pip install matplotlib command in the terminal to install Matplotlib. - Import Matplotlib
Use import matplotlib.pyplot as plt to import Matplotlib, and agree on the commonly used alias plt to facilitate subsequent calls.
2. Draw a simple line chart
The following is a simple line chart example, showing the sales changes of a company in the past 12 months.
import matplotlib.pyplot as plt # 数据 months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] sales = [100, 120, 150, 130, 140, 160, 180, 170, 190, 200, 210, 220] # 创建图表和画布 plt.figure(figsize=(8, 6)) # 绘制折线图 plt.plot(months, sales, marker='o', linestyle='-', color='blue') # 设置标题和标签 plt.title('Sales Trend') plt.xlabel('Months') plt.ylabel('Sales') # 显示图表 plt.show()
3. Custom chart style
Matplotlib provides a wealth of chart style settings, which can make your chart more personalized and beautiful.
-
Adjust color and line style
plt.plot(months, sales, marker='o', linestyle='-', color='blue')
You can set the mark style through the marker parameter, the linestyle parameter to set the line style, and the color parameter to set the color.
-
Set the legend
plt.plot(months, sales, marker='o', linestyle='-', color='blue', label='Sales') plt.legend()
Use the label parameter to set the legend label, and then use the plt.legend() method to display the legend.
-
Add grid lines
plt.grid(True)
Use the plt.grid(True) method to add grid lines.
4. Draw scatter plots and bar charts
In addition to line charts, Matplotlib also supports drawing scatter plots and bar charts.
- Drawing a Scatter Plot
The following is a simple scatter plot example showing the relationship between temperature and rainfall in a city.
import matplotlib.pyplot as plt # 数据 temperature = [15, 19, 22, 18, 25, 28, 30, 29, 24, 20] rainfall = [20, 40, 30, 10, 55, 60, 70, 50, 45, 35] # 创建图表和画布 plt.figure(figsize=(8, 6)) # 绘制散点图 plt.scatter(temperature, rainfall, color='red') # 设置标题和标签 plt.title('Temperature vs Rainfall') plt.xlabel('Temperature (°C)') plt.ylabel('Rainfall (mm)') # 显示图表 plt.show()
- Draw a bar chart
The following is a simple bar chart example that shows the sales of a certain product in different regions.
import matplotlib.pyplot as plt # 数据 regions = ['North', 'South', 'East', 'West'] sales = [100, 120, 150, 130] # 创建图表和画布 plt.figure(figsize=(8, 6)) # 绘制条形图 plt.bar(regions, sales, color='blue') # 设置标题和标签 plt.title('Sales by Region') plt.xlabel('Region') plt.ylabel('Sales') # 显示图表 plt.show()
5. Draw advanced charts
Matplotlib can also draw more complex charts, such as pie charts and 3D charts.
- Drawing a Pie Chart
The following is a simple pie chart example that shows the sales proportion of different products in a certain market.
import matplotlib.pyplot as plt # 数据 products = ['A', 'B', 'C', 'D'] sales = [30, 20, 25, 15] # 创建图表和画布 plt.figure(figsize=(8, 6)) # 绘制饼图 plt.pie(sales, labels=products, autopct='%.1f%%') # 设置标题 plt.title('Sales by Product') # 显示图表 plt.show()
- Draw 3D graph
The following is a simple 3D graph example, showing the three-dimensional surface graph of a certain function.
import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D # 数据 x = np.linspace(-5, 5, 100) y = np.linspace(-5, 5, 100) X, Y = np.meshgrid(x, y) Z = np.sin(np.sqrt(X**2 + Y**2)) # 创建图表和画布 fig = plt.figure(figsize=(8, 6)) ax = fig.add_subplot(111, projection='3d') # 绘制3D图 ax.plot_surface(X, Y, Z, cmap='viridis') # 设置标题和标签 ax.set_title('3D Surface Plot') ax.set_xlabel('X') ax.set_ylabel('Y') ax.set_zlabel('Z') # 显示图表 plt.show()
Conclusion:
Through the introduction and examples of this article, we can understand the drawing methods and usage techniques of Matplotlib. Whether it is a simple line chart, or a complex scatter plot and 3D chart, Matplotlib provides a wealth of functions and options to meet different needs for data visualization. I hope this article will be helpful to both beginners and experienced users, so that they can better use Matplotlib for data analysis and display.
The above is the detailed content of From beginner to advanced, illustrating Matplotlib drawing methods. For more information, please follow other related articles on the PHP Chinese website!

TomergelistsinPython,youcanusethe operator,extendmethod,listcomprehension,oritertools.chain,eachwithspecificadvantages:1)The operatorissimplebutlessefficientforlargelists;2)extendismemory-efficientbutmodifiestheoriginallist;3)listcomprehensionoffersf

In Python 3, two lists can be connected through a variety of methods: 1) Use operator, which is suitable for small lists, but is inefficient for large lists; 2) Use extend method, which is suitable for large lists, with high memory efficiency, but will modify the original list; 3) Use * operator, which is suitable for merging multiple lists, without modifying the original list; 4) Use itertools.chain, which is suitable for large data sets, with high memory efficiency.

Using the join() method is the most efficient way to connect strings from lists in Python. 1) Use the join() method to be efficient and easy to read. 2) The cycle uses operators inefficiently for large lists. 3) The combination of list comprehension and join() is suitable for scenarios that require conversion. 4) The reduce() method is suitable for other types of reductions, but is inefficient for string concatenation. The complete sentence ends.

PythonexecutionistheprocessoftransformingPythoncodeintoexecutableinstructions.1)Theinterpreterreadsthecode,convertingitintobytecode,whichthePythonVirtualMachine(PVM)executes.2)TheGlobalInterpreterLock(GIL)managesthreadexecution,potentiallylimitingmul

Key features of Python include: 1. The syntax is concise and easy to understand, suitable for beginners; 2. Dynamic type system, improving development speed; 3. Rich standard library, supporting multiple tasks; 4. Strong community and ecosystem, providing extensive support; 5. Interpretation, suitable for scripting and rapid prototyping; 6. Multi-paradigm support, suitable for various programming styles.

Python is an interpreted language, but it also includes the compilation process. 1) Python code is first compiled into bytecode. 2) Bytecode is interpreted and executed by Python virtual machine. 3) This hybrid mechanism makes Python both flexible and efficient, but not as fast as a fully compiled language.

Useaforloopwheniteratingoverasequenceorforaspecificnumberoftimes;useawhileloopwhencontinuinguntilaconditionismet.Forloopsareidealforknownsequences,whilewhileloopssuitsituationswithundeterminediterations.

Pythonloopscanleadtoerrorslikeinfiniteloops,modifyinglistsduringiteration,off-by-oneerrors,zero-indexingissues,andnestedloopinefficiencies.Toavoidthese:1)Use'i


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Atom editor mac version download
The most popular open source editor

SublimeText3 English version
Recommended: Win version, supports code prompts!

Zend Studio 13.0.1
Powerful PHP integrated development environment

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Dreamweaver Mac version
Visual web development tools
