Для этого я использую инструмент semporn lmplot (расширенный график рассеяния).
Вы можете создать новый столбец в файле электронной таблицы с именем «Категория».Очень легко классифицировать переменные в Excel или OpenOffice
(это что-то вроде этого -> (if (cell_value <0.6 -> low), if (cell_value> 0.6 -> high)).)
Таким образом, ваши тестовые данные должны выглядеть следующим образом:
Чем вы можете импортировать данные в Python (Iиспользовать Anaconda 3.5 с пауком: python 3.6) я сохранил файл в формате .txt.но возможен любой другой формат (.csv и т. д.)
#Import libraries
import seaborn as sns
import pandas as pd
import numpy as np
import os
#Open data.txt which is stored in a repository
os.chdir(r'C:\Users\DarthVader\Desktop\Graph')
f = open('data.txt')
#Get data in a list splitting by semicolon
data = []
for l in f:
v = l.strip().split(';')
data.append(v)
f.close()
#Convert list as dataframe for plot purposes
df = pd.DataFrame(data, columns = ['ID', 'Value', 'Value2','Category'])
#pop out first row with header
df2 = df.iloc[1:]
#Change variables to be plotted as numeric types
df2[['Value','Value2']] = df2[['Value','Value2']].apply(pd.to_numeric)
#Make plot with red color with values below 0.6 and green color with values above 0.6
sns.lmplot( x="Value", y="Value2", data=df2, fit_reg=False, hue='Category', legend=False, palette=dict(high="#2ecc71", low="#e74c3c"))
Ваш вывод должен выглядеть следующим образом.