我的x值T =(585,590,595,605)有不连续的数据。我需要它们在x轴上均匀分布。
我不能使用“ T.astype(str)”,因为我需要添加/减去一点,因为每个值都有三个小节。
这是现在的样子: Click for image
代码如下:
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
# Read exel file
Tabelle = pd.read_excel("path.xlsx", nrows=4)
# T = temperature for (x-axis):
T = Tabelle["T./°C"]
xpos = np.array(T, dtype=int)
# for Rp/Rm/e over T:
y = Tabelle["MW. Rm"]
y1 = Tabelle["MW. Rp0,2"]
y2 = Tabelle["MW. e"]
# barwidth
w = 0.33
# figures in grid:
fig = plt.figure(figsize=(10, 5))
# graph in 0,0:
ax1 = plt.subplot2grid(shape=(1, 2), loc=(0, 0))
# graphs in (0,0):
ax1.bar(xpos - 0.33, y, label="Rm", color="firebrick", width=-0.5, align="edge")
ax1.bar(xpos, y1, label="Rp0,2", color="c", width=0.5, align="center")
ax2 = ax1.twinx()
ax2.bar(xpos + 0.33, y2, label="ε-Bruch", color="orange", width=0.5, align="edge")
# settings (0,0):
ax1.set_xlabel("Gießtemperatur / °C")
ax1.set_ylim(0, 250)
ax2.set_ylim(0, 5)
ax1.set_ylabel("Rp0,2 und Rm / N/mm²")
ax2.set_ylabel("Bruchdehnung / %")
plt.show()
计划为(1,2)网格,但(0,1)中什么都没有。
我该怎么做才能获得xticks和585,590,595,605的标签,并且仍然能够使三个条形图彼此相邻?
感谢您的帮助和欢呼,
亚历克斯