我使用.plot()方法
创建一个图形 Unmarshal(response.entity).to[String].flatMap { body =>
Future.failed(new IOException(s"The response status is ${response.status} response body is $body"))}
我不使用“plt”对象创建图形:有没有办法用.plot()的参数显示虚线作为平均值。
我总是很不清楚如何处理属性和plt之间的区别:
df['age'].plot(kind='density')
此外,我如何注释靠近虚线的平均值?
答案 0 :(得分:5)
# Set seed to reproduce the results
np.random.seed(42)
# Generate random data
df = pd.DataFrame(dict(age=(np.random.uniform(-20, 50, 100))))
# KDE plot
ax = df['age'].plot(kind='density')
# Access the child artists and calculate the mean of the resulting array
mean_val = np.mean(ax.get_children()[0]._x)
# Annotate points
ax.annotate('mean', xy=(mean_val, 0.008), xytext=(mean_val+10, 0.010),
arrowprops=dict(facecolor='black', shrink=0.05),
)
# vertical dotted line originating at mean value
plt.axvline(mean_val, linestyle='dashed', linewidth=2)
选择切片0,因为它对应于matplotlib.lines.Line2D
轴对象的位置。
>>> np.mean(ax.get_children()[0]._x)
14.734316880344197