使用CSV的Python散点图

2024-09-22 04:55:32 发布

您现在位置:Python中文网/ 问答频道 /正文

使用Python:我正在尝试使用.csv数据框绘制散点图,以可视化FIM入学和出院分数。我可以做一个散点图,但我正在努力

制作外螺纹散点:蓝色,圆形标记(“.”),尺寸100,标签“外螺纹(N=)”

使女性分散点:红色,加上标记(“+”),大小100,标签“女性(N=)”

Y=X线:黑色,虚线样式(“-”),X极限和Y极限为[0,140] 我的图形应该读入我的“RIC”列,但为列中的每个实例制作不同的图形(例如“repILE”)

它应该是这样的: enter image description here

到目前为止,我已经包括了代码:

patient_data_df.plot.scatter(x='Admission Total FIM Score', y= 'Discharge Total FIM Score', s=50, marker= "X", color= "green")

plt.title("FIM Scatter Plot:<RIC> (N=<total>)<RIC> (N=<total>)")

#plt.show()

Tags: csv数据标记图形可视化绘制plt标签
1条回答
网友
1楼 · 发布于 2024-09-22 04:55:32

最好使用matplotlib而不是pandas plot

下面是示例代码:

import pandas as pd
from matplotlib import pyplot as plt

data = pd.DataFrame([[1.1, 4.2, 'Male'], [1.2, 3.3, 'Male'], [2.3, 3.2, 'Male'], [1.4, 7.1, 'Male'], [1.3, 3.2, 'Female'], [2.3, 2.2, 'Female'], [4.2, 1.8, 'Female']], columns=['Admission Total FIM Score', 'Discharge Total FIM Score', 'Sex'])

x_name = 'Admission Total FIM Score'
y_name = 'Discharge Total FIM Score'

plt.figure(figsize=(10, 8))
plt.plot([0, 5], [0, 5], 'k ', label='No Change')
plt.plot(data[data.Sex == 'Female'][x_name], data[data.Sex == 'Female'][y_name], 'r+', label='Female (N=%i)' % len(data[data.Sex == 'Female']))
plt.plot(data[data.Sex == 'Male'][x_name], data[data.Sex == 'Male'][y_name], 'b.', label='Male (N=%i)' % len(data[data.Sex == 'Male']))
plt.title('RepILE (N=%i)' % len(data))
plt.xlabel(x_name)
plt.ylabel(y_name)
plt.legend();

输出图:

enter image description here

相关问题 更多 >