0
点赞
收藏
分享

微信扫一扫

使用python 绘制不同冷却方式下 物料温度随时间的变化曲线图

心存浪漫 2023-10-07 阅读 47

import matplotlib.pyplot as plt

# 按Material_ID分组并绘制曲线图
for material_id in range(1, num_materials + 1):
    material_data = data[data['Material_ID'] == material_id]
    plt.plot(material_data['Measurement_Time'], material_data['Temperature'], label=f'Material {material_id}')

# 添加图表标题和标签
plt.title('Material Temperature Over Time')
plt.xlabel('Measurement Time (hours)')
plt.ylabel('Temperature')
plt.legend()  # 添加图例
plt.grid(True)  # 添加网格线
plt.show()  # 显示图表

# 导入matplotlib库
import matplotlib.pyplot as plt
# 指定支持中文的字体,例如SimHei或者Microsoft YaHei
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

# 设置图形大小和分辨率
plt.figure(figsize=(10, 6), dpi=100)

# 获取不同冷却类型的数据
natural_cooling_data = data[data['Cooling_Type'] == '自然冷却']
single_fan_data = data[data['Cooling_Type'] == '单面风机']
double_fan_data = data[data['Cooling_Type'] == '双面风机']

# 绘制不同冷却类型的温度曲线
plt.plot(natural_cooling_data['Measurement_Time'], natural_cooling_data['Temperature'], label='自然冷却')
plt.plot(single_fan_data['Measurement_Time'], single_fan_data['Temperature'], label='单面风机')
plt.plot(double_fan_data['Measurement_Time'], double_fan_data['Temperature'], label='双面风机')

# 设置图形标题和坐标轴标签
plt.title('不同冷却方式下物料温度随时间的变化曲线图')
plt.xlabel('时间(小时)')
plt.ylabel('温度(摄氏度)')

# 显示图例和网格线
plt.legend()
plt.grid()

# 保存并显示图形
plt.savefig('temperature_curve.png')
plt.show()

import matplotlib.pyplot as plt
# 指定支持中文的字体,例如SimHei或者Microsoft YaHei
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

# 获取不同冷却方式的列表
cooling_types = data['Cooling_Type'].unique()

# 针对每种冷却方式绘制曲线图
for cooling_type in cooling_types:
    cooling_data = data[data['Cooling_Type'] == cooling_type]
    
    # 按Material_ID分组并绘制曲线图
    for material_id in range(1, num_materials + 1):
        material_data = cooling_data[cooling_data['Material_ID'] == material_id]
        plt.plot(material_data['Measurement_Time'], material_data['Temperature'], label=f'Material {material_id}')
    
    # 添加图表标题和标签
    plt.title(f'Material Temperature Over Time ({cooling_type} Cooling)')
    plt.xlabel('Measurement Time (hours)')
    plt.ylabel('Temperature')
    plt.legend()  # 添加图例
    plt.grid(True)  # 添加网格线
    plt.show()  # 显示图表

根据以下代码所生成的数据 使用python 绘制不同冷却方式下 物料温度随时间的变化曲线图 


import numpy as np
import pandas as pd

# 定义物料数量
num_materials = 40

# 定义每个物料的温度测量次数和时间间隔
num_measurements = 10
time_interval_hours = 6

# 创建一个时间数组,模拟测量时间点
measurement_times = np.arange(0, num_measurements * time_interval_hours, time_interval_hours)

# 创建一个空的DataFrame来存储数据
data = pd.DataFrame(columns=['Material_ID', 'Measurement_Time', 'Width', 'Thickness', 'Weight', 'Workshop_Temperature',
                             'Annealing_Type', 'Cooling_Type', 'Temperature'])

# 模拟每个物料的数据
for material_id in range(1, num_materials + 1):
    # 生成物料特征数据(宽度、厚度、重量、车间温度、退火类型、冷却类型)
    width = np.random.uniform(5, 20)  # 宽度范围在5到20之间
    thickness = np.random.uniform(1, 5)  # 厚度范围在1到5之间
    weight = np.random.uniform(10, 100)  # 重量范围在10到100之间
    workshop_temperature = np.random.uniform(20, 30)  # 车间温度范围在20到30之间
    annealing_type = np.random.choice(['O态', 'H2态'])  # 随机选择退火类型
    cooling_type = np.random.choice(['自然冷却', '单面风机', '双面风机'])  # 随机选择冷却类型
    
    # 模拟温度数据(指数衰减)
    initial_temperature = np.random.uniform(100, 200)  # 初始温度范围在100到200之间
    decay_rate = np.random.uniform(0.01, 0.1)  # 衰减速率范围在0.01到0.1之间
    temperature_data = initial_temperature * np.exp(-decay_rate * measurement_times)
    
    # 创建一个临时DataFrame来存储物料的数据
    material_data = pd.DataFrame({
        'Material_ID': [material_id] * num_measurements,
        'Measurement_Time': measurement_times,
        'Width': [width] * num_measurements,
        'Thickness': [thickness] * num_measurements,
        'Weight': [weight] * num_measurements,
        'Workshop_Temperature': [workshop_temperature] * num_measurements,
        'Annealing_Type': [annealing_type] * num_measurements,
        'Cooling_Type': [cooling_type] * num_measurements,
        'Temperature': temperature_data
    })
    
    # 将物料数据添加到总体数据中
    data = pd.concat([data, material_data], ignore_index=True)

举报

相关推荐

0 条评论