import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
#散点图随机生成数据
x=np.random.rand(20)
y=np.random.rand(20)
#插入数据,设置点的形状
plt.scatter(x,y,marker='x')
plt.show()
#随机生成数据
x2=np.random.rand(20)
y2=np.random.rand(20)
df=pd.DataFrame({'x2':x2,'y2':y2})
#设置子图
sns.jointplot(x='x2',y='y2',data=df,kind='scatter',marker='*')#scatter表示散点图 kind表示是什么图 data=df,df内含x2,y2
plt.show()
# # 数据准备
# x = [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019]
# y = [5, 3, 6, 20, 17, 16, 19, 30, 32, 35]
# # 使用 Matplotlib 画折线图
# plt.plot(x, y)
# plt.show()
# # 使用 Seaborn 画折线图
# df = pd.DataFrame({'x': x, 'y': y})
# sns.lineplot(x="x", y="y", data=df)
# plt.show()
import matplotlib.pyplot as plt
import numpy as np
#定义两个数组,作为x轴,y轴
xpoints=np.array([0,6])
ypoints=np.array([0,100])
plt.plot(xpoints,ypoints,'o:r')
plt.show()
#将数据放进plt 画了一张图
ypoints=np.array([1,3,4,5,8,9,6,1,3,4,5,2,4])
plt.plot(ypoints,marker="*")
plt.show()
ypoints=np.array([1,3,4,5,8,9,6,1,3,4,5,2,4])
plt.plot(ypoints,'o:r')
plt.show()
xpoints=np.array([1,3,5,7,8,10])
ypoints=np.array(xpoints*2)# [2,6,10,14,16,20]
plt.plot(xpoints,ypoints,'+:g')# +是实心圆标记 :是虚线 g是绿色
plt.show()
import numpy as np
import matplotlib.pyplot as plt
#定义数据
ypoints=np.array([1,3,9,10,20,50,70,100,110])
#数据插入到图表
#plt.plot(ypoints,'o:g') marker是点的形状 ls是线
plt.plot(ypoints,marker='o',ls=':',c='g',lw='1')#linestyle可以简写为ls color可以简写为c linewidth设置线的宽度,可简写为lw
#设置x和y的名字(默认不支持中文,要下载一个字体)
plt.xlabel('x-label')
plt.ylabel('y-label')
#设置图表的名字
plt.title('table')
plt.rcParams['xtick.direction']='in'
#添加网格线 方法中添加axis='x'设置纵向网格线,y为设置横向网格线 visible=False/True是否显示网格线
# which='major'表示显示主刻度 minor表示显示次刻度 both表示都显示 0 1 2这些是主刻度 0.1,0.5或者其他是次刻度
# **kwargs,可选,设置网格样式 可以是color='r' linestyle='-'(设置网格线样式) 和 linewidth=2(设置网格线线宽)
#
plt.grid()
#图表显示
plt.show()
import matplotlib.pyplot as plt
import numpy as np
#定义数据
ypoints=np.array([1,3,9,10,20,50,70,100,110])
#设置子图的位置
plt.subplot(1,2,1)
#数据插入到图表
plt.plot(ypoints,'o:g')
#设置x和y的名字(默认不支持中文,要下载一个字体)
plt.xlabel('x-label')
plt.ylabel('y-label')
#设置图表的名字
plt.title('table')
#添加网格线
plt.grid()
#定义数据
ypoints2=np.array([1,2,3,4,5,6,7,8,9])
#设置子图的位置
plt.subplot(1,2,2)
#数据插入到图表
plt.plot(ypoints2,'o-r')
#设置x和y的名字(默认不支持中文,要下载一个字体)
plt.xlabel('x-label')
plt.ylabel('y-label')
#设置图表的名字
plt.title('table2')
#添加网格线
plt.grid()
#一起显示
plt.show()
import matplotlib.pyplot as plt
import numpy as np
x = np.array([1,2,3,4,5,6,7,8])
y = np.array([1,4,9,16,7,11,23,19])
#设置散点图每个点的大小
sizes = np.array([20,50,100,200,500,1000,60,90])
#设置散点图每个点的颜色
colors = np.array(["red","green","black","orange","purple","beige","cyan","magenta"])
plt.subplot(1,2,1)
plt.scatter(x,y,s=sizes,c=colors)
plt.title("scatter")
x2 = np.random.rand(50)#生成50个随机数 随机数范围是0~1之间
y2 = np.random.rand(50)
colors2 = np.random.rand(50)
plt.subplot(1,2,2)
plt.scatter(x2,y2,c=colors2)
plt.title("scatter2")
plt.show()
import matplotlib.pyplot as plt
import numpy as np
# 定义数据
x=np.array(['math','english','chinese','history','physical'])
y=np.array([99,55,66,11,44])
c=np.array(["#4CAF50","red","hotpink","#556B2F"])
#设置子图
plt.subplot(1,2,1)
# 插入数据显示纵向柱形图
plt.bar(x,y,color=c,width=0.5) #设置不了高度
plt.title('score')
plt.xlabel('course')
plt.ylabel('grade')
#设置子图
plt.subplot(1,2,2)
# 插入数据显示纵向柱形图
plt.bar(x,y,color='b',width=0.5) #设置不了高度
plt.title('score2')
plt.xlabel('course2')
plt.ylabel('grade2')
plt.show()
'''y=np.array([35,25,25,15])
l=np.array(['basketball','football','pingpong','baseball'])
c=np.array(["#d5695d","#5d8ca8","#65a479","#a564c9"])
plt.pie(y,labels=l,colors=c,explode=(0,0.2,0,0),autopct='%.2f%%')
plt.title('hobby')
plt.savefig('123.png')
plt.show()'''