jupyter绘图

步骤

1.导包
import matplotlib.pyplot as plt
import random
#设置中文显示
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei'] 
2.准备数据
x=[]
y=[]
2.创建画布
plt.figure(figsize=(20,8),dpi=100)
注:figsize=(画布宽度,画布高度),dpi是指画布像素
3.绘图
plt.plot(x,y,color='r',linestyle='--')
#设置刻度[::5]切片
plt.xticks(x[::5])
plt.yticks(y[::5])
#添加描述信息
plt.xlabel("描述信息")
plt.ylabel("描述信息")
plt.title("标题名")
#添加网格线
plt.grid(True,linestyle='--',alpha=0.5)
4.保存图片
plt.savefig("图片保存的路径及名称")
5.显示图像(4,5步顺序不能调换,如果4,5步调换顺序,则图片无法保存)
plt.show()

#数据解析

alpha  线条透明度
# 设置x轴的刻度
plt.xticks(range(0,25))

导包内容

import matplotlib.pyplot as plt
import random
#设置中文显示
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei'] 

折线图

公式:

plt.plot(横轴,纵轴)

示例:

#创建画布
plt.figure(figsize=(20,8),dpi=100)
#绘图
plt.plot([3,6,7,9,22],[4,7,1,7,8])
#保存图片
plt.savefig("./test.png")
#显示图像
plt.show()

两张表放在一张图上

示例:
12点-13点的一小时内上海温度在15-18度之间变化,北京温度在-5,5之间变化,在一张表上绘制折线图

import random

# 多次plot
# 0.创建数据
x = range(60)
#random.uniform(start,end)随机生成start,end之间的数据
y_shanghai = [random.uniform(15,18) for i in x]
y_beijing = [random.uniform(-5, 5) for i in x]

# 1.创建画布
plt.figure(figsize=(20, 8), dpi=100)

# 2.绘制图
plt.plot(x, y_shanghai, label="上海", color="r", linestyle="--")
plt.plot(x, y_beijing, label="北京")

# 2.1 添加x,y轴的刻度
x_labels_ticks = ["11点{}分".format(i) for i in x]
y_labels_ticks = range(-10, 30)

plt.xticks(x[::5], x_labels_ticks[::5])
plt.yticks(y_labels_ticks[::5])

# 2.2 添加网格线
plt.grid(linestyle="--", alpha=0.5)

# 2.3 添加描述信息
plt.xlabel("时间", fontsize=16)
plt.ylabel("温度", fontsize=16)
plt.title("某城市11点-12点温度变化", fontsize=20)

# 2.4 增加图例(显示的是label信息)
plt.legend(loc="best")

# 3.显示
plt.show()

数学公式

import numpy as np
x=np.linspace(-10,10,1000)
#设置数学公式
y=np.sin(x)
plt.figure(figsize=(20,8),dpi=100)
plt.plot(x,y)
plt.show()

绘制散点图

# 0.准备数据
x = [225.98, 247.07, 253.14, 457.85, 241.58, 301.01,  20.67, 288.64,
       163.56, 120.06, 207.83, 342.75, 147.9 ,  53.06, 224.72,  29.51,
        21.61, 483.21, 245.25, 399.25, 343.35]
y = [196.63, 203.88, 210.75, 372.74, 202.41, 247.61,  24.9 , 239.34,
       140.32, 104.15, 176.84, 288.23, 128.79,  49.64, 191.74,  33.1 ,
        30.74, 400.02, 205.35, 330.64, 283.45]
#创建画布
plt.figure(figsize=(20,8),dpi=100)

#画图
#散点图
plt.scatter(x,y)

plt.show()

绘制柱状图

movie_name=['雷神3:诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴', '降魔传','追捕','七十七天','密战','狂兽','其它']
x=range(len(movie_name))
y=[73853,57767,22354,15969,14839,8725,8716,8318,7916,6764,52222]

#创建画布
plt.figure(figsize=(20,8),dpi=100)

#绘制柱状图
plt.bar(x,y,width=0.5,color=['b','r','g','y','c','m','y','k','c','g','b'])
#设置x轴的刻度
plt.xticks(x,movie_name)
#添加网格线
plt.grid(True,linestyle='--',alpha=0.5)
添加标题
plt.title("电影票房收入对比")
plt.show()

你可能感兴趣的:(jupyter绘图)