一、code

import os.path

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

csv_path = r"XXX.csv"
save_fig_path = os.path.join(os.path.split(csv_path)[0], "metrics_cdf.png")

# 从CSV读取数据
data = pd.read_csv(csv_path)['XXX']

# 计算CDF
data_sorted = np.sort(data)[::-1]
cdf = np.arange(1, len(data_sorted)+1) / len(data_sorted)

# 绘制CDF图
plt.plot(data_sorted, cdf, linewidth=2)  # marker='.',
plt.xlabel('Value')
plt.ylabel('CDF')
plt.xticks(np.arange(0, 1.1, 0.1))
plt.yticks(np.arange(0, 1.1, 0.1))
plt.title('Cumulative Distribution Function (CDF)')
plt.grid(True)
plt.savefig(save_fig_path)
plt.show()

二、plt.plot的marker有什么可选的标识

matplotlib库中,plt.plot函数的marker参数用于指定在图上绘制数据点的标识符。这些标识符可以帮助你在图中更清晰地标记数据点的位置。以下是一些常用的marker参数及其对应的标识符:

  • '.': 小点
  • ',': 像素
  • 'o': 圆圈
  • 'v': 倒三角
  • '^': 正三角
  • '<': 左箭头
  • '>': 右箭头
  • '1': 下箭头
  • '2': 上箭头
  • 's': 正方形
  • 'p': 五角星
  • '*': 星号
  • 'h': 六边形1
  • 'H': 六边形2
  • '|': 垂直线
  • '_': 水平线

你可以在plt.plot函数中使用这些标识符来改变数据点的外观。例如,如果要在绘制的线上使用圆圈作为数据点的标识,可以这样设置:

plt.plot(x_data, y_data, marker='o')

其中,x_datay_data分别是你要绘制的数据的X和Y值。根据需要,你可以选择不同的标识符来突出显示数据点。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐