Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.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_Python 2.7_Numpy_Matplotlib - Fatal编程技术网

使用Python在单个绘图上复制两个发行版

使用Python在单个绘图上复制两个发行版,python,python-2.7,numpy,matplotlib,Python,Python 2.7,Numpy,Matplotlib,我想绘制如下图所示的分布--分布的尾部。我尝试了以下几点,但还没有达到目的: import matplotlib.pyplot as plt import numpy as np import matplotlib.mlab as mlab import math mean1 = 0 variance1 = 1 sigma1 = math.sqrt(variance1) x = np.linspace(-3,3.5,100, endpoint=True) plt.plot(x,mlab.nor

我想绘制如下图所示的分布--分布的尾部。我尝试了以下几点,但还没有达到目的:

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.mlab as mlab
import math

mean1 = 0
variance1 = 1
sigma1 = math.sqrt(variance1)
x = np.linspace(-3,3.5,100, endpoint=True)
plt.plot(x,mlab.normpdf(x,mean1,sigma1))

mean2 = 0.4
variance2 = 2
sigma2 = math.sqrt(variance2)
y = np.linspace(-4,3.5,100, endpoint=False)
plt.plot(x,mlab.normpdf(y,mean2,sigma2))
##plt.axis('off')
plt.yticks([])
plt.xticks([])
plt.show()
您有什么建议吗


您想要在
之间填充

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.mlab as mlab
import math

mean1 = 0
variance1 = 1
sigma1 = math.sqrt(variance1)
x = np.linspace(-3,3.5,100, endpoint=True)
y1 = mlab.normpdf(x,mean1,sigma1)
fig, ax = plt.subplots()
ax.plot(x,y1)

mean2 = 0.4
variance2 = 2
sigma2 = math.sqrt(variance2)
y = np.linspace(-4,3.5,100, endpoint=False)
y2 = mlab.normpdf(y,mean2,sigma2)
ax.plot(x,y2)


ax.fill_between(x[:30], y1[:30], color='blue')
ax.fill_between(x[:30], y2[:30], color='green')
ax.fill_between(x[-30:], y1[-30:], y2[-30:], color='red', alpha=0.5)
ax.set_yticks([])
ax.set_xticks([])
plt.savefig('fill_norms.png')
plt.show()


这是一个非常简单的例子——请参阅并查看
where
子句;高光之间的填充可以适应正在绘制的线条的变化(例如,在任何地方都会自动进行红色填充,坏事超过好事,而无需计算索引(本例中为30或-30))。

您需要
填充线之间的填充:

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.mlab as mlab
import math

mean1 = 0
variance1 = 1
sigma1 = math.sqrt(variance1)
x = np.linspace(-3,3.5,100, endpoint=True)
y1 = mlab.normpdf(x,mean1,sigma1)
fig, ax = plt.subplots()
ax.plot(x,y1)

mean2 = 0.4
variance2 = 2
sigma2 = math.sqrt(variance2)
y = np.linspace(-4,3.5,100, endpoint=False)
y2 = mlab.normpdf(y,mean2,sigma2)
ax.plot(x,y2)


ax.fill_between(x[:30], y1[:30], color='blue')
ax.fill_between(x[:30], y2[:30], color='green')
ax.fill_between(x[-30:], y1[-30:], y2[-30:], color='red', alpha=0.5)
ax.set_yticks([])
ax.set_xticks([])
plt.savefig('fill_norms.png')
plt.show()


这是一个非常简单的例子——请参阅并查看
where
子句;高光之间的填充可以适应正在绘制的线条的变化(例如,在任何地方都会自动进行红色填充,坏事超过好事,而无需计算索引(本例中为30或-30))。

您需要
填充线之间的填充:

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.mlab as mlab
import math

mean1 = 0
variance1 = 1
sigma1 = math.sqrt(variance1)
x = np.linspace(-3,3.5,100, endpoint=True)
y1 = mlab.normpdf(x,mean1,sigma1)
fig, ax = plt.subplots()
ax.plot(x,y1)

mean2 = 0.4
variance2 = 2
sigma2 = math.sqrt(variance2)
y = np.linspace(-4,3.5,100, endpoint=False)
y2 = mlab.normpdf(y,mean2,sigma2)
ax.plot(x,y2)


ax.fill_between(x[:30], y1[:30], color='blue')
ax.fill_between(x[:30], y2[:30], color='green')
ax.fill_between(x[-30:], y1[-30:], y2[-30:], color='red', alpha=0.5)
ax.set_yticks([])
ax.set_xticks([])
plt.savefig('fill_norms.png')
plt.show()


这是一个非常简单的例子——请参阅并查看
where
子句;高光之间的填充可以适应正在绘制的线条的变化(例如,在任何地方都会自动进行红色填充,坏事超过好事,而无需计算索引(本例中为30或-30))。

您需要
填充线之间的填充:

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.mlab as mlab
import math

mean1 = 0
variance1 = 1
sigma1 = math.sqrt(variance1)
x = np.linspace(-3,3.5,100, endpoint=True)
y1 = mlab.normpdf(x,mean1,sigma1)
fig, ax = plt.subplots()
ax.plot(x,y1)

mean2 = 0.4
variance2 = 2
sigma2 = math.sqrt(variance2)
y = np.linspace(-4,3.5,100, endpoint=False)
y2 = mlab.normpdf(y,mean2,sigma2)
ax.plot(x,y2)


ax.fill_between(x[:30], y1[:30], color='blue')
ax.fill_between(x[:30], y2[:30], color='green')
ax.fill_between(x[-30:], y1[-30:], y2[-30:], color='red', alpha=0.5)
ax.set_yticks([])
ax.set_xticks([])
plt.savefig('fill_norms.png')
plt.show()


这是一个非常简单的例子——请参阅并查看
where
子句;高光之间的填充可以适应正在绘制的线条的变化(例如,在“坏事大于好事”的地方自动填充红色,而无需计算索引(本例中为30或-30))。

My OP不够清晰。我主要是想让两者的尾部分布都正确,尤其是在右边,你是说你的y值是错误的吗?这是一个统计问题,而不是编程问题。问题是——统计和给尾巴涂颜色。修复了所有问题,但唯一剩下的问题是如何将y1和y2的右尾涂成与示例图一样的颜色?示例所需的所有内容都在回答代码中。您有一个在某个x值上方填充的示例,一个在y2和y1之间以及在y1和0之间填充的示例。样本就是这么做的,我的操作不够清晰。我主要是想让两者的尾部分布都正确,尤其是在右边,你是说你的y值是错误的吗?这是一个统计问题,而不是编程问题。问题是——统计和给尾巴涂颜色。修复了所有问题,但唯一剩下的问题是如何将y1和y2的右尾涂成与示例图一样的颜色?示例所需的所有内容都在回答代码中。您有一个在某个x值上方填充的示例,一个在y2和y1之间以及在y1和0之间填充的示例。样本就是这么做的,我的操作不够清晰。我主要是想让两者的尾部分布都正确,尤其是在右边,你是说你的y值是错误的吗?这是一个统计问题,而不是编程问题。问题是——统计和给尾巴涂颜色。修复了所有问题,但唯一剩下的问题是如何将y1和y2的右尾涂成与示例图一样的颜色?示例所需的所有内容都在回答代码中。您有一个在某个x值上方填充的示例,一个在y2和y1之间以及在y1和0之间填充的示例。样本就是这么做的,我的操作不够清晰。我主要是想让两者的尾部分布都正确,尤其是在右边,你是说你的y值是错误的吗?这是一个统计问题,而不是编程问题。问题是——统计和给尾巴涂颜色。修复了所有问题,但唯一剩下的问题是如何将y1和y2的右尾涂成与示例图一样的颜色?示例所需的所有内容都在回答代码中。您有一个在某个x值上方填充的示例,一个在y2和y1之间以及在y1和0之间填充的示例。这就是样本的全部功能。