到目前为止,我有以下代码:
colors = ('k','r','b')
ax = []
for i in range(3):
ax.append(plt.axes())
plt.plot(datamatrix[:,0],datamatrix[:,i],colors[i]+'o')
ax[i].set(autoscale_on=True)
有了autoscale_on=True
每个轴的选项,我认为每个图都应有其自己的y轴限制,但看起来它们都共享相同的值(即使它们共享不同的轴)。如何设置它们的缩放比例以显示每个范围datamatrix[:,i]
(只是对.set_ylim()
?的显式调用),而且如何为datamatrix[:,2]
上面可能需要的第三个变量()创建y轴偏移量?谢谢大家
听起来您想要的只是子图…您现在正在做的事情没有多大意义(或者我对您的代码片段感到非常困惑,无论如何……)。
尝试更多类似这样的方法:
import matplotlib.pyplot as plt
import numpy as np
fig, axes = plt.subplots(nrows=3)
colors = ('k', 'r', 'b')
for ax, color in zip(axes, colors):
data = np.random.random(1) * np.random.random(10)
ax.plot(data, marker='o', linestyle='none', color=color)
plt.show()
编辑:
如果您不想使用子图,则您的代码段会更有意义。
您正在尝试在彼此的正上方添加三个轴。Matplotlib正在认识到图中的大小和位置已经存在一个子图,因此每次都返回 相同的
轴对象。换句话说,如果您查看列表ax
,就会发现它们都是 同一对象 。
如果 确实 要这样做,则fig._seen
每次添加轴时都需要将其重置为空字典。但是,您可能真的不想这样做。
与其将三个独立的图放在彼此之上,不如看看使用方法twinx
。
例如
import matplotlib.pyplot as plt
import numpy as np
# To make things reproducible...
np.random.seed(1977)
fig, ax = plt.subplots()
# Twin the x-axis twice to make independent y-axes.
axes = [ax, ax.twinx(), ax.twinx()]
# Make some space on the right side for the extra y-axis.
fig.subplots_adjust(right=0.75)
# Move the last y-axis spine over to the right by 20% of the width of the axes
axes[-1].spines['right'].set_position(('axes', 1.2))
# To make the border of the right-most axis visible, we need to turn the frame
# on. This hides the other plots, however, so we need to turn its fill off.
axes[-1].set_frame_on(True)
axes[-1].patch.set_visible(False)
# And finally we get to plot things...
colors = ('Green', 'Red', 'Blue')
for ax, color in zip(axes, colors):
data = np.random.random(1) * np.random.random(10)
ax.plot(data, marker='o', linestyle='none', color=color)
ax.set_ylabel('%s Thing' % color, color=color)
ax.tick_params(axis='y', colors=color)
axes[0].set_xlabel('X-axis')
plt.show()
簇是在“我的地图”上创建的,但当标记具有相同的地址时,单击簇时,工具提示不会显示。我正在使用Gmaps标记聚类器。代码示例:`function initMap(){//map options var options={zoom:7,center:{lat:53.3938131,lng:-7.858913}}}var map=new google.maps.map(document.getEleme
好吧,这可能很容易,即使我在网上搜索,但无法得到它。基本上我想添加两个不同的标签到我的情节和这是我的代码行 但我得到了以下结果,其中有相同的标签为plot.as以下 连我都试过了 但请给出错误: 此链接指南为简单的方式,但在这里已在接受的答案中使用了两次。我的问题是我怎么能在单行代码中做同样的事情,就像我在代码中做的一样?
另外,如果我将instance设置为null,那么这两个类是否都设置为null?
我试图做一个散点图,并用列表中的不同数字注释数据点。例如,我想绘制vs,并用中的相应数字进行注释。 有什么想法吗?
我每年都通过联接进行
问题内容: 我有这段代码可以生成直方图,标识出三种类型的字段。“低”,“中”和“高”: 产生这个: 如何在其中获得三种不同颜色的图例? 问题答案: 您需要自己创建图例。为此,创建一些未在图中显示的矩形(所谓的代理艺术家)。 完整的例子:
问题内容: Java是强静态转换,因此这意味着“ ===”没有用处 我看了很多文档,但没有看过相同比较运算符。 问题答案: 在弱类型语言(例如Javascript)中非常有用,因为它可以验证被比较的对象是同一类型,并避免隐式转换。 在Java之类的强类型语言中绝对没有用,因为您不能在不编写特定方法的情况下比较不同类型的变量。 例如,如果你想一个比一个的,你将不得不写一些特殊的方法,例如: 但这几乎
问题内容: 我正在尝试绘制散点图,并用列表中的不同数字注释数据点。因此,例如,我想绘制并使用中的相应数字进行注释。 有任何想法吗? 问题答案: 我不知道有任何采用数组或列表的绘图方法,但是可以在对中的值进行迭代时使用。 的格式设置选项很多