Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在数字线和颜色上绘制数据_Python_Matplotlib_Data Visualization - Fatal编程技术网

Python 在数字线和颜色上绘制数据

Python 在数字线和颜色上绘制数据,python,matplotlib,data-visualization,Python,Matplotlib,Data Visualization,我有两个列表predictedY,其中包含从0到1的n元素,以及unlabelledY,其中包含n元素1或0 我希望在数字行上绘制predictedY的值,如果unlabeledY中的对应元素为1,则将其涂成红色,否则将其涂成黑色 我该怎么做 predictedY =[0.456,0.962,0.231] UnlabelledY=[0,1,0] 您可以使用seaborn图书馆的。查看df的group属性。其余部分应遵循评论 import matplotlib.pyplot as plt imp

我有两个列表
predictedY
,其中包含从0到1的
n
元素,以及
unlabelledY
,其中包含
n
元素1或0

我希望在数字行上绘制
predictedY
的值,如果
unlabeledY
中的对应元素为1,则将其涂成红色,否则将其涂成黑色

我该怎么做

predictedY =[0.456,0.962,0.231]
UnlabelledY=[0,1,0]

您可以使用seaborn图书馆的。查看
df
group
属性。其余部分应遵循评论

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

# creating dataframe. y is zeros since you want to plot on x-axis. Also len(x) should be equal to len(y)
df = pd.DataFrame({"x":np.array(predictedY),"y":np.zeros(len(predictedY)), "group":np.array(UnlabelledY)})

# fit_reg=False will not draw a horizontal line(which is the regression line)
sns.lmplot(data=df, x="x", y="y", hue="group", fit_reg=False)

plt.ylim(-0.05, 1) # for proper formatting. 
plt.show()

使用散点图,可以提供
UnlabelledY
作为颜色参数。选择合适的颜色映射(在这种情况下,例如使用
vmin=-2
“hot\r”)可以获得您选择的颜色

import numpy as np
import matplotlib.pyplot as plt

predictedY =[0.456,0.962,0.231] 
UnlabelledY=[0,1,0]

plt.scatter(predictedY, np.zeros_like(predictedY), 
            c=UnlabelledY, cmap="hot_r", vmin=-2)

plt.yticks([])
plt.show()