matplotlib
import matplotlib.pyplot as plt
print(plt.matplotlib_fname())
import random
plt.figure(figsize=(20,8),dpi=80)
plt.plot([1,2,3,4,5,6,7],[17,15,16,18,12,11,13])
plt.savefig("shujutupian1.png")
plt.show()
'''
matplotlib的三层结构
1:容器层
1.画板层Canvas
2.画布层Figure---可以有多个绘图区/坐标系 axes:plt.subplots()
2:辅助显示层
3:图像层
'''
import random
import matplotlib.pyplot as plt
figure,axes=plt.subplots(nrows=1,ncols=2,figsize=(20,8),dpi=80)
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
x=range(60)
y_shanghai=[random.uniform(15,18) for i in x]
y_beijing=[random.uniform(1,3) for i in x]
axes[0].plot(x,y_shanghai,color="r",linestyle="--",label="sahnghai")
axes[1].plot(x,y_beijing,color="g",linestyle="-",label="beijing")
axes[0].legend()
axes[1].legend()
'''
设置图形风格
颜色字符:r 红色
g 绿色
b 蓝色
w 白色
c 青色
m 洋红
y 黄色
k 黑色
线条:- 实线
-- 虚线
-. 点画线
: 点虚线
‘’ 留空 空格
# 介绍各个折线所代表的含义放在哪个位置:plt.legend(loc="upper left")
upper right
upper left
lower left
lower right
right
center left
center right
lower center
upper center
center
'''
x_lable=["11h{}min".format(i)for i in x]
axes[0].set_xticks(x[::5],x_lable[::5])
axes[0].set_yticks(range(0,40,5))
axes[1].set_xticks(x[::5],x_lable[::5])
axes[1].set_yticks(range(0,40,5))
axes[0].grid(linestyle="--",alpha=0.5)
axes[1].grid(linestyle="--",alpha=0.5)
axes[0].set_xlabel("时间变化")
axes[0].set_ylabel("温度")
axes[0].set_title("城市温度变化")
axes[1].set_xlabel("时间变化")
axes[1].set_ylabel("温度")
axes[1].set_title("城市温度变化")
plt.savefig("shujutupian4.png")
import numpy as np
x=np.linspace(-1,1,1000)
y=2*x*x
plt.figure(figsize=(20,8),dpi=80)
plt.plot(x,y)
plt.grid(linestyle="--")
plt.savefig("shujutupian3.png")
x=[1,2,3,4,5,6,7,8,9]
y=[8,3,5,3,1,9,6,1,5]
plt.figure(figsize=(20,8),dpi=80)
plt.scatter(x,y)
plt.savefig("shujutupian2.png")
plt.show()
import matplotlib
print(matplotlib.matplotlib_fname())
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
movie_names=['雷神3-诸神昏暗','阿凡达','寻梦环游记','美丽心灵','肖生客的救赎','三湾改编','驯龙高手3','复联4','蜘蛛侠-英雄远征']
tickets=[88888,77777,66666,78965,92345,65435,85236,25874,96321]
plt.figure(figsize=(20,8),dpi=80)
x_ticks=range(len(movie_names))
plt.bar(x_ticks,tickets,color=('b','r','g','y','c','m','y','k','g'))
plt.xticks(x_ticks,movie_names)
plt.grid(linestyle="--",alpha=0.5)
plt.title("部分电影票房")
plt.savefig("shujutupian5.png")
movie_names2=['美丽心灵','肖生客的救赎','三湾改编']
first_day=[10587.6,10062.5,1275.7]
first_week=[36224.9,34497.6,11830]
plt.figure(figsize=(20,8),dpi=80)
plt.bar(range(3),first_day,width=0.2,label="首日票房")
plt.bar([0.2,1.2,2.2],first_week,width=0.2,label="首周票房")
plt.grid(linestyle="--",alpha=0.5)
plt.legend()
plt.xticks([0.1,1.1,2.1],movie_names2)
plt.savefig("shujutupian6.png")
place_count=[60605,54546,45819,28246,13270,9945,7679,6799,20105]
plt.figure(figsize=(20,8),dpi=80)
plt.pie(place_count,labels=movie_names,colors=['b','r','g','y','c','m','y','k','g'],autopct="%1.2f%%")
plt.legend()
plt.axis('equal')
plt.savefig("shujutupian8.png")
plt.show()
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
time=[120,118,124,135,156,158,159,169,147,158,168,123,147,159,146,168,158,157,143,127,138,139,134,156,167,182,193,110,147,158,124,132,147,124,151,161,182,143,163,153,175,185,195,164,156,143,134,126,186,172,193,120,150,103,140]
plt.figure(figsize=(20,8),dpi=80)
distance=5
group_num=int((max(time)-min(time))/distance)
plt.hist(time,bins=group_num,density=True)
plt.xticks(range(min(time),max(time)+2,distance))
plt.grid(linestyle="--",alpha=0.5)
plt.savefig("shujutupian7.png")
plt.show()
|