marker 可以定义的符号:
折线图
import numpy as np
import matplotlib.pyplot as plt
ypoints = np.array([1,3,9,25,12,32,5,1])
数据插入到图表
marker:符号
color:颜色,可简写为c
linewidth:线条宽度
#plt.plot(ypoints,'o:g')
#plt.plot(ypoints,marker='o',linestyle=':',color='g')
plt.plot(ypoints,marker='o',ls=':',c='g',linewidth='1.5')
设置xy
plt.xlabel('x-lable')
plt.ylabel('y-lable')
plt.title('table')
添加网格
plt.grid()
图标显示
plt.show()
散点图
import numpy as np
import matplotlib.pyplot as plt
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
y = np.array([1, 4, 9, 16, 7, 11, 23, 18])
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,cmap='afmhot_r') #viridis颜色条
plt.title("scatter")
plt.colorbar() #颜色条输出
x2 = np.random.rand(50)
y2 = np.random.rand(50)
colors2 = np.random.rand(50)
plt.subplot(1,2,2)
plt.scatter(x2,y2,c=colors2,cmap='afmhot_r') #viridis颜色条
plt.title("scatter2")
plt.colorbar() #颜色条输出
plt.show()
柱形图
import matplotlib.pyplot as plt
import numpy as np
x=np.array(['math','english','chinese','history','physic'])
y=np.array([88,77,66,55,99])
c=np.array(["#4CAF50","red","hotpink","#556B2F","pink"])
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)
x=np.array(['math','english','chinese','history','physic'])
y=np.array([88,77,66,55,99])
plt.bar(x,y,color='pink',width=0.5)
plt.title('score')
plt.xlabel('course')
plt.ylabel('grade')
plt.show()
饼图
y=np.array([35,25,25,15])
l=np.array(['basketball','football','pingpong','others'])
c=np.array(["#4CAF50","red","hotpink","#556B2F"])
plt.pie(y,labels=l,colors=c,explode=(0,0.2,0,0),autopct='%.2f%%')
plt.title('hobby')
plt.savefig('123.png')
plt.show()
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.subplot(1,2,1)
#插入数据
plt.scatter(x,y,marker='x')
#随机生成数据
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');
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()