如何确定子图(AxesSubplot)是否为空?我想停用空子图的空轴,并删除完全空行。
例如,在此图中,仅填充了两个子图,其余的子图为空。
import matplotlib.pyplot as plt
# create figure wit 3 rows and 7 cols; don't squeeze is it one list
fig, axes = plt.subplots(3, 7, squeeze=False)
x = [1,2]
y = [3,4]
# plot stuff only in two SubAxes; other axes are empty
axe
因此,我尝试使用python的matplotlib绘制两个相同维度的不同数组。这是我目前拥有的代码:
from numpy import *
from pylab import *
import matplotlib.pyplot as plt
p, pdot, s400, dist=loadtxt("cc45list.txt", usecols=(1,2,3,4), unpack=True)
for i in arange(0,45,1):
k = (s400*(dist**2))/((p**1)*(pdot**0.5))
kbar=sum(k)
var=abs(k-k
简单地说,假设我有两个列表:
A ->的名字是'A','B','C','D','E','F','G','H‘
B ->有数值清单5、7、3、8、2、9、1、3
A是X轴标签的名称,B中对应的值是图形的高度(即Y轴)。
%matplotlib inline
import pandas as pd
from matplotlib import rcParams
import matplotlib.pyplot as plt
from operator import i
我正在尝试在同一组3d轴上绘制两个数据值。两个数据集的值可以相差1或2个数量级。因此,我想要两个Z轴,类似于二维绘图的twinx或twiny命令。下面的代码显示了一个粗略的示例
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
result=[['1', '2', '3'],
['4', '5', '6'],
[&
我正在学习如何用matplotlib绘图,但是,我似乎无法绘制一个线条图,其中x轴是文本文件中的值,y轴是文件中值的频率。
import matplotlib.pyplot as plt
x = []
y = []
thingTxt = open("thing.txt", "r")
for line in open('thing.txt', 'r'):
lines = [i for i in line.split()]
x.append(lines[0])
y.append() #Dont know
我正在尝试共享两个子图的轴,但我需要在图形创建后共享x轴。所以,举个例子,我创建了这个图:
import numpy as np
import matplotlib.pyplot as plt
t= np.arange(1000)/100.
x = np.sin(2*np.pi*10*t)
y = np.cos(2*np.pi*10*t)
fig=plt.figure()
ax1 = plt.subplot(211)
plt.plot(t,x)
ax2 = plt.subplot(212)
plt.plot(t,y)
# some code to share both x axis
p
我试图用来自同一数据文件的不同列绘制两个图。由于一个图的范围远大于另一个图,所以我将y轴设置为对数标度。由于这两个图的值域也很小,所以我也将x轴设置为对数标度。
我没有问题绘制图表,只是gnuplot没有绘制数据文件中的第一个点(其中x= 0)。
因此,我用来绘制图形的代码是:
set xrange [1:2500]
set yrange [1:2000]
set log x
set log y
plot "datafile.txt" using 1:2 with lines, "datafile.txt" using 1:3 with lines
请注意,因为
我很难用Pyplot imshow来绘制一个名为data的numpy ndarray的图像,同时保持它的纵横比和方形像素。ndarray的形状是(112, 2182)。下面是我正在使用的代码:
import matplotlib as mpl
from mpl_toolkits.axes_grid1 import make_axes_locatable
import numpy as np
mpl.use('Agg')
import matplotlib.pyplot as plt
data = np.random.random_sample((112, 2182))
p
我遇到的问题可以描述如下:具有两个不同的x和y轴的两个不同的数据集(让我们称它们为t1、y1、t2和y2)、t1和t2可以是相同的。
我需要做的是将两个图叠加/绘制在一起(即,不是在子图中,也不是在大小相同、完全重叠的子图中),并且能够独立地滚动每个轴。我的目标是能够将它们直观地排列起来,以便我能比较它们。
到目前为止,我有以下几点:
import numpy as np
from matplotlib import pyplot as plt
from matplotlib.widgets import Slider
dArray = np.genfromtxt("t5_24.csv
我想用下面的代码来产生4个相同大小的子图,x轴和y轴的大小之间的公共纵横比由我设置。参考下面的例子,我希望所有的子图看起来都和第一个完全一样(左上角)。现在的错误是y轴的大小与其最大值相关。这是我想要避免的行为。
import matplotlib.pyplot as plt
import numpy as np
def main():
fig = plt.figure(1, [5.5, 3])
for i in range(1,5):
fig.add_subplot(221+i-1, adjustable='box', aspect=1)
我为投资数据创建了一个海运方框图,从10万美元到4000万美元不等,分布在几年内。该图显示了每年投资金额的方格图。这些数据来自我从CSV中呈现的两个系列数据:投资年('inv_year')和投资额('inv_amount')。
问题:图的y轴自动以0.5的增量显示,因此:
0.0, 0.5, 1.0, 1.5, etc. (i.e. in tens of millions)
但是我想要轴的增量为5,所以:
0, 5, 10, 15, etc. (i.e. in millions)
我如何改变轴的比例?
以下是我的当前代码:
import seaborn as s
我将在matplotlib中制作一个堆叠条形图。不知何故,它没有包括我给他的所有条形图(应该有大约50个条形图堆叠在一起)
代码:
N=45 #numbers of columns
max_el=50
ind=np.arrange(N)
for bar in range(0,max_el):
y=[dic[value][bar] for value in dic]
plt.bar(ind,y,)
plt.show()
注意:我使用了类似的代码和相同的数据,并用plotly制作了一个堆叠的条形图(这是有效的)
有情节的
使用matplotlib
变量的某些值是零或0.1。
我一直在试用Python Matplotlib中的3-d表面的颜色条,但我不能让它真正对相应的表面进行颜色编码。代码如下: import numpy as np
import matplotlib.pyplot as plt
import math
from matplotlib import cm
fig = plt.figure()
ax = plt.axes(projection='3d')
x = np.linspace(0, 1600, 1600)
y = np.linspace(0, 1600, 1600)
X, Y = np.meshgrid(x, y)
j =