matplotlib:带有 2 个 xticks 的直方图?

我有一个熊猫系列,X如 X1、X2、... Xn


我正常化X系列有一个新的Y与系列mean=0和std=1。


我想用 2绘制histogramof ,一个是原始值,另一个表示归一化值。Xxticks


我怎么能用 matplotlib 做到这一点?


更新:


import numpy as np


x = np.random.randint (0,100,1000)


y = (x- np.mean(x))/np.std(x)

现在我想绘制 的直方图y,而且还要显示原始值 ( x),而不仅仅是 的值y。


jeck猫
浏览 231回答 1
1回答

翻阅古今

这是一个示例,带有第二个缩放的顶轴:import numpy as npimport matplotlib.pyplot as plt# Some datax = 12 + 3*np.random.randn(1000)x_normed = (x - np.mean(x))/np.std(x)# Graphfig, ax1 = plt.subplots()ax1.hist(x_normed, bins=20)x1_lim = np.array(ax1.get_xlim())x2_lim = x1_lim*np.std(x) + np.mean(x)ax2 = ax1.twiny()ax2.set_xlim(x2_lim)ax1.set_ylabel('count')ax1.set_xlabel('normed x', color='k')ax2.set_xlabel('x', color='k');反过来做我认为更好:import numpy as npimport matplotlib.pyplot as plt# Some datax = 12 + 3*np.random.randn(1000)# Graphfig, ax1 = plt.subplots()ax1.hist(x, bins=20)x1_lim = np.array(ax1.get_xlim())x2_lim = (x1_lim - np.mean(x))/np.std(x)ax2 = ax1.twiny()ax2.set_xlim(x2_lim)ax1.set_ylabel('count')ax1.set_xlabel('x', color='k')ax2.set_xlabel('x normed', color='k');这使:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python