Lab01 数据表绘图指南:使用 Python 语言绘制图表
Lab01 数据表绘图指南:使用 Python 语言绘制图表
本指南将详细介绍如何使用 Python 语言对 Lab01 数据表进行绘图,涵盖线图、散点图、条形图、饼图、直方图、箱线图和雷达图等多种图表类型,并提供清晰的步骤和代码示例,帮助您轻松完成数据可视化。
1. 绘制数据表中 'total profit' 的线图
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_csv('lab01.csv') # 导入您的 Lab01 数据表
plt.plot(data['Month Number'], data['total profit'], color='red', linestyle='--', linewidth=3, marker='o', markerfacecolor='red')
plt.xlabel('Month Number')
plt.ylabel('Sold units number')
plt.title('图一:全年公司售卖数据')
plt.legend(loc='lower right')
plt.grid(True)
plt.show()
2. 绘制每个月 'toothpaste' 售卖量的散点图
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_csv('lab01.csv') # 导入您的 Lab01 数据表
plt.scatter(data['Month Number'], data['toothpaste'], color='blue', marker='x')
plt.xlabel('Month Number')
plt.ylabel('Number of Units Sold')
plt.title('图二:牙膏售卖量散点图')
plt.legend(loc='upper left')
plt.grid(True, linestyle='-')
plt.show()
3. 绘制 'face cream' 售卖量的条形图
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_csv('lab01.csv') # 导入您的 Lab01 数据表
plt.bar(data['Month Number'], data['face cream'], color='skyblue')
plt.xlabel('Month Number')
plt.ylabel('Sales Units in Number')
plt.title('图三:洗面奶和面霜售卖量对比条形图')
plt.legend(loc='upper left')
plt.grid(True, linestyle='-')
plt.show()
4. 计算去年每种商品的总售卖量,并绘制各商品售卖额的饼图
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_csv('lab01.csv') # 导入您的 Lab01 数据表
product_sales = data.sum(axis=0)[1:] # 计算每种商品的总售卖量
plt.pie(product_sales, labels=product_sales.index, autopct='%1.1f%%', startangle=90)
plt.title('图四:各商品售卖额占比图')
plt.legend(loc='lower right')
plt.show()
5. 绘制个月售卖额的直方图,并添加分布密度曲线
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
data = pd.read_csv('lab01.csv') # 导入您的 Lab01 数据表
plt.hist(data['total profit'], bins=10, edgecolor='black')
plt.xlabel('Profit Range in dollar')
plt.ylabel('Frequency Counts')
plt.title('图五:售卖额条形分布图')
plt.legend(loc='upper left')
# 添加分布密度曲线
x = np.linspace(data['total profit'].min(), data['total profit'].max(), 100)
y = np.exp(-(x - data['total profit'].mean())**2 / (2 * data['total profit'].std()**2)) / (data['total profit'].std() * np.sqrt(2 * np.pi))
plt.plot(x, y, color='red', label='Density Curve')
plt.show()
6. 绘制 'toothpaste', 'face cream' 和 'face wash' 售卖量的箱线图
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_csv('lab01.csv') # 导入您的 Lab01 数据表
plt.boxplot([data['toothpaste'], data['face cream'], data['face wash']], labels=['Toothpaste', 'Face Cream', 'Face Wash'], patch_artist=True, showmeans=True)
plt.title('图六:牙膏、洗面奶和面霜售卖量箱线图')
plt.show()
7. 根据数据绘制该同学各门课程成绩的雷达图
import matplotlib.pyplot as plt
import numpy as np
# 定义科目和成绩数据
subjects = ['物理', '化学', '生物', '数学', '英语']
scores = [60, 40, 68, 94, 77]
# 创建雷达图的角度
angles = np.linspace(0, 2 * np.pi, len(subjects), endpoint=False)
# 将角度扩展到 360 度,并添加最后一个点以闭合图形
angles = np.concatenate((angles, [angles[0]]))
# 创建雷达图数据
data = np.concatenate((scores, [scores[0]]))
# 绘制雷达图
fig, ax = plt.subplots(subplot_kw={'projection': 'polar'})
ax.plot(angles, data, 'o-', linewidth=2)
ax.fill(angles, data, alpha=0.25)
ax.set_thetagrids(angles * 180 / np.pi, subjects)
ax.set_title('图七:各门课程成绩雷达图')
plt.show()
注意:
- 以上代码示例仅供参考,具体代码需要根据您的数据表格式和绘图需求进行调整。
- 请确保您的 Lab01 数据表路径正确。
- 您可以通过调整参数来控制图表的外观,例如颜色、线宽、标记等。
- 您可以参考 matplotlib 库的官方文档了解更多绘图选项: https://matplotlib.org/stable/index.html
希望本指南能够帮助您完成 Lab01 数据表的绘图任务!如果您还有其他问题,欢迎随时提问。
原文地址: https://www.cveoy.top/t/topic/bTf3 著作权归作者所有。请勿转载和采集!