一、使用numpy生成长度为100的等差序列作为自变量,命名为x,并使用三角函数SiNx和cosx**2生成两个因变量,命名为y和Z。
二、设置画布的大小、颜色、宽度、类型和标签。
三、通过plt.figure(figsize=(10,6))的画布。图((10,6))。
四、尝试plt.plot(x,y,color='red',linewidth=2,label='$\sinx$')和plt.plot(x,z,'b--',label='$\cosx^2$')。
五、分通过plt.xlabel('T')和plt.ylabel('V')设置X和Y轴的轴标签;并通过plt.title('V changes by T')为图形设置标题。
六、Y[:,0]=Y[:,0]*888表示修改第一个数据并将其展开888次;之后,使用上述设置时保持不变,发现另一行几乎是一条直线。
1、使用numpy生成一个长度为100的等差数列作为自变量,命名为x,分别使用三角函数sinx和cosx**2生成2个因变量,命名为y和z。
2、设置画布的尺寸大小和图形颜色、线条宽度、线条类型、图形标签等。
3、通过plt.figure(figsize=(10,6))设计一个10*6的画布。
4、尝试plt.plot(x,y,color='red',linewidth=2,label='$\sinx$')和plt.plot(x,z,'b--',label='$\cosx^2$')。
5、分别通过plt.xlabel('T')和plt.ylabel('V')设置X和Y轴的轴标签;通过plt.title('V changes by T')为图形设置标题。
6、y[:,0]=y[:,0]*888表示修改第一个数据,扩大888倍;后面沿用上面设置不变,发现另一条线几乎成为一条直线。
主要使用的是bar函数
效果还不错吧~
import matplotlib.pyplot as plt
import numpy as np
plt.rc('font', family='SimHei', size=13)
num = np.array([13325, 9403, 9227, 8651])
ratio = np.array([0.75, 0.76, 0.72, 0.75])
men = num * ratio
women = num * (1-ratio)
x = ['聊天','支付','团购\n优惠券','在线视频']
width = 0.5
idx = np.arange(len(x))
plt.bar(idx, men, width, color='red', label='男性用户')
plt.bar(idx, women, width, bottom=men, color='yellow', label='女性用户')
plt.xlabel('应用类别')
plt.ylabel('男女分布')
plt.xticks(idx+width/2, x, rotation=40)
plt.legend()