import matplotlib.pyplot as plt
import numpy as np
# 模型名称
models = ['Unet', 'segnet', 'UNet++', 'Attention Unet', 'UNext_S', 'MALUNet',
'vmunet', 'UltraLight_VM_UNet', 'vmunet-v2', 'H_vmunet', 'HSH-UNet', 'SP_SRFD']
# miou值
miou = [76.39, 75.52]
# flops计算量G
flops = [9.36, 0.27]
# 创建散点图
plt.figure(figsize=(10, 8))
# 为不同的数据点使用不同的颜色
colors = plt.cm.jet(np.linspace(0, 1, len(models))) # 使用jet颜色映射
for i, (model, mi, fl) in enumerate(zip(models, miou, flops)):
plt.scatter(fl, mi, color=colors[i], label=model, s=200)
# 为每个点添加备注
# plt.text(fl, mi, model, fontsize=12, ha='left') # ha='right' 表示文本在点的右侧
# 不添加网格线
plt.grid(False)
# 设置刻度标记的字体大小
plt.tick_params(axis='both', which='major', labelsize=16) # 增大刻度标签的字体大小
# # 添加图例
# plt.legend()
# plt.legend(fontsize=11.8)
plt.title('FLOPs vs. MIoU', fontsize=22)
plt.xlabel('FLOPs (Giga)', fontsize=18)
plt.ylabel('MIoU', fontsize=18)
plt.grid(True)
plt.show()
二维散点图
于 2024-08-01 07:53:46 首次发布