Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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 3.x 如何更改条形图中Y轴上的比例?_Python 3.x_Matplotlib - Fatal编程技术网

Python 3.x 如何更改条形图中Y轴上的比例?

Python 3.x 如何更改条形图中Y轴上的比例?,python-3.x,matplotlib,Python 3.x,Matplotlib,如何更新条形图以显示Y轴上从100到50.000的比例 请注意,此时它在图形上显示为10的幂 #plot the observations in a new bar plot import pandas as pd import matplotlib.pyplot as plt df3 = pd.read_csv('myDF.csv',index_col=0) plt.rcParams["figure.figsize"] = (40,10) plt.rc('font', s

如何更新条形图以显示Y轴上从100到50.000的比例

请注意,此时它在图形上显示为10的幂

#plot the observations in a new bar plot
import pandas as pd
import matplotlib.pyplot as plt

df3 = pd.read_csv('myDF.csv',index_col=0)
plt.rcParams["figure.figsize"] = (40,10)
plt.rc('font', size=20) 
plt.yscale('log')  

x_pos = [i for i, _ in enumerate(df3['customers'])]
plt.bar(x_pos, df3['customers'], color='green')

plt.xticks(x_pos, df3['city'], rotation=45)

plt.xlabel("City")
plt.ylabel("Customers #")
plt.title("Number of customers per city")
plt.show()
更新

csv文件:


添加您的输入数据帧,以便我们可以重现问题您可以尝试使用
plt.yscale('log')
进行日志缩放。您可以尝试
plt.xticks(..,rotation=45)
旋转x-tick标签。请根据您建议的代码查看更新,但y轴显示的是10的幂,而不是成百上千的
客户的幂(我认为应该如何设置?),您可以编辑您的问题以提出一个特定的问题吗。描述你的问题,展示你已经尝试过的,并提供一个代码示例来重现你的问题-这允许你获得帮助,也意味着你的问题对其他人来说是有价值的。您需要确定显示数据的适当方式。如果您需要帮助决定规范化技术,交叉验证站点将是一个更好的选择。您的问题的当前版本读起来像是对几个愿望的代码请求,不适合StackOverflow。@Jason我已经更新了问题,使其更相关。