python画各种好看的图形

Python有很多可视化工具,本文推荐Matplotlib。

Matplotlib是一种2D的绘图库,它可以支持硬拷贝和跨系统的交互,它可以在Python脚本、IPython的交互环境下、Web应用程序中使用。

官网示例网址如下:https://matplotlib.org/stable/gallery/index.html

Python为Matplotlib提供了一个方便的接口,我们可以通过Pyplot对Matplotlib进行操作

python中安装Matplotlib包使用命令:

pip install matplotlib

下面介绍几个简单的例子:

import matplotlib.pyplot as plt#约定俗成的写法plt
#首先定义两个函数(正弦&余弦)
import numpy as np

#-π to+π的256个值
X=np.linspace(-np.pi,np.pi,256,endpoint=True)
C,S=np.cos(X),np.sin(X)
plt.plot(X,C)
plt.plot(X,S)
#在ipython的交互环境中需要这句话才能显示出来
plt.show()

运行后图片如下:

Python 内手动画图 python自动画图_程序人生

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

np.random.seed(sum(map(ord,"aesthetics")))
#首先定义一个函数用来画正弦函数,可帮助了解可以控制的不同风格参数
def sinplot(flip=1):
    x=np.linspace(0,14,100)
    for i in range(1,7):
        plt.plot(x,np.sin(x+i*0.5)*(7-i)*flip)
sinplot()
plt.show()

运行后图片如下:

Python 内手动画图 python自动画图_python_02

import matplotlib.pyplot as plt
import seaborn as sns
sns.set()

#通过加载sns自带数据库中的数据(具体数据可以不关心)
flights_long=sns.load_dataset("flights")
flights=flights_long.pivot("month","year","passengers")

# 使用每个单元格中的数据值绘制一个热力图heatmap
sns.heatmap(flights,annot=True,fmt="d",linewidths=.5)
plt.show()

运行后图片如下:

Python 内手动画图 python自动画图_Python 内手动画图_03

#绘制饼形图
from matplotlib import pyplot
def drawPie(books):
    labels=['A','B','C','D','E']
    bookGroup={}
    for book in books:
        bookGroup[book]=bookGroup.get(book,0)+1
    #创建饼形图
    #第一个参数是扇形的面积
    #labels参数为扇形的说明文字
    #autopct参数为扇形占比的显示格式
    pyplot.pie([bookGroup.get(label,0) for label in labels],labels=labels,autopct='%1.1f%%')
    pyplot.title("Number of Books Students Read")
    pyplot.show()
drawPie(books)

运行后图片如下:

Python 内手动画图 python自动画图_开发语言_04

#绘制散点图 from matplotlib import pyplot
 def drawScatter(heights,weights): #创建散点图 #第一个参数为点的横坐标 #第二个参数为点的纵坐标 pyplot.scatter(heights,weights)
 pyplot.xlabel(‘Heights’)
 pyplot.ylabel(‘Weight’)
 pyplot.title(‘Heights & Weight of Students’)
 pyplot.show()
 drawScatter(heights,weights)

运行后图片如下:

Python 内手动画图 python自动画图_机器学习_05

是不是很漂亮,可以在咱们科研项目或者数学统计过程中使用