python matplotlib数据作图

请问下这个用python怎么用matplotlib来处理成图形啊?
2024-11-06 10:36:22
推荐回答(4个)
回答1:

一、使用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次;之后,使用上述设置时保持不变,发现另一行几乎是一条直线。

回答2:

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倍;后面沿用上面设置不变,发现另一条线几乎成为一条直线。

回答3:

主要使用的是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()

回答4:

大叔大叔的