我正在尝试使用matplotlib创建条形图。
x轴数据是带有年份的列表:[19501960、19701、980、19901、995-2015]
y轴数据是一个数量与年数相等的列表。
这是我的代码:
import csv
import matplotlib.pyplot as plt
path = "bevoelkerung_entwicklung.csv"
with open(path, 'r') as datei:
reader = csv.reader(datei, delimiter=';')
jahr = next(reader)
population = next(reader)
population_list = []
for p in population:
population_list.append(str(p).replace("'",""))
population_list = list(map(int, population_list))
jahr = list(map(int, jahr))
datei.close()
plt.bar(jahr,population_list, color='c')
plt.xlabel('Year')
plt.ylabel('Population in 1000')
plt.title('Population growth')
plt.legend()
plt.show()
结果是:条与条之间有太多的空间
正如你所看到的,1950-1960年之间的差距是巨大的。我怎么能做到这一点,这样1950-1995年酒吧之间就没有间隙。我知道它的间隔为10年,但看起来并不好。
任何帮助都将不胜感激。
您需要将总体数据绘制为增加整数的函数。这使得条具有相等的间距。然后,您可以将标签调整为每个图表所代表的年份。
import matplotlib.pyplot as plt
import numpy as np
jahre = np.append(np.arange(1950,2000,10), np.arange(1995,2017))
bevoelkerung = np.cumsum(np.ones_like(jahre))
x = np.arange(len(jahre))
plt.bar(x, bevoelkerung)
plt.xticks(x, jahre, rotation=90)
plt.show()
问题内容: 我在Matplotlib中制作条形图,调用如下: 有没有一种方法可以在Matplotlib中使用此功能来实现? 问题答案: 将添加为关键字参数。例如 。 这将垂直填充条形间隙。
我用Matplotlib做了一个条形图,调用如下: 我得到一个条形图,看起来像这样: 我想要的是在连续的条之间没有空白,例如,更像这样: 有没有办法在Matplotlib中使用函数来实现这一点?
我试图添加定制器类,以删除条形图中的条形图之间的空间,但我得到了一些错误的iReport后添加定制器类属性包barchart定制器。我还在iReport的类路径中添加了barchartcustomizer.jar。 我的代码:- 但是当我点击预览得到这个错误:- 错误 如何解决这个错误任何建议都会对我很有帮助。
问题内容: 以下代码生成一个带有xticklabels的条形图,每个条形图居中。但是,缩放x轴,更改条形数量或更改条形宽度确实会更改标签的位置。是否存在处理该行为的通用方法? 建议和可行的解决方案: 问题答案: 因此,问题在于您只能致电。这样可以固定标签,但是刻度位置仍由来处理,在更改轴限制时会添加/删除刻度。 因此,您还需要修复刻度位置: 通过调用将替换为引擎盖下的。 然后,您可以将条居中以使其
在使用matplotlib时,如何为直方图绘制平均线(水平)? 现在,我可以毫无问题地绘制直方图。下面是我使用的代码: 我想绘制PAAE 1,2和AAE 1,2的平均线。我应该用什么来绘制平均线?
我使用chart.js在我的网页上有一个BarChart。 我在其中添加了两个数据点 现在我想要更新那些条A和B,而不是删除它们并再次添加它们(我已经想好了如何做到这一点)。我想让它们垂直移动以适应它们的新值,但我无法找到如何访问图表中已经存在的数据。 没有什么比得上 其中第一个值将是存储数据的索引(F.E.)。 我该怎么做呢?