Точечная диаграмма с изменением размера маркеров в зависимости от количества представленных точек - PullRequest
0 голосов
/ 20 марта 2020

Я строю простой график рассеяния: Current plot

Он правильно представляет мои данные, однако в графике есть много точек данных с координатами (1.00,1.00), они появляются под одним маркером (верхний правый угол). Я хотел бы иметь функциональность, которая изменяет размер каждого маркера в зависимости от количества точек, которые он представляет. Буду признателен за любую помощь. Вот мой код:

def saveScatter(figureTitle, xFeature, yFeature, xTitle, yTitle):
''' save a scatter plot of xFeatures vs yFeatures '''

    fig = plt.figure(figsize=(8, 6), dpi=300)
    ax = fig.add_subplot(111)    
    ax.scatter(dfModuleCPositives[names[xFeature]][:], dfModuleCPositives[names[yFeature]][:], c='r', marker='x', alpha=1, label='Module C Positives')
    ax.scatter(dfModuleCNegatives[names[xFeature]][:], dfModuleCNegatives[names[yFeature]][:], c='g', alpha=0.5, label='Module C Negatives')
    ax.scatter(dfModuleDPositives[names[xFeature]][:], dfModuleDPositives[names[yFeature]][:], c='k', marker='x', alpha=1, label='Module D Positives')
    ax.scatter(dfModuleDNegatives[names[xFeature]][:], dfModuleDNegatives[names[yFeature]][:], c='b', alpha=0.5, label='Module D Negatives')    
    ax.set_xlabel(xTitle, fontsize=10)
    ax.set_ylabel(yTitle, fontsize=10)
    ax.set_title(figureTitle)
    ax.grid(True)
    ax.legend(loc="lower right")
    fig.tight_layout()
    plt.show()
    return ax
...