[問題] matplotlib.pyplot 的y軸數字太長

作者: treefrog (Roots)   2019-06-25 23:27:28
各位大大好,
小妹正在練習用matplotlib. Pyplot 練習畫群組直條圖,但發現y軸數字太長,單位變成「le7」,請問各位大大有無辦法講單位改成千位計算,並且標記單位「$k」呢?
# 資料表/圖:
https://imgur.com/a/xqhpTwj
# 程式:
import pandas as pd
import matplotlib.pyplot as plt
product_rev=pd.read_excel("revenue.xlsx")
product_rev.sort_values(by="2017",inplace=True,ascending=False)
print(product_rev)
product_rev.plot.bar(x="Product",y=["2016","2017"],color=["blue","orange"])
plt.title("Total revenue by products",fontsize=16,fontweight="bold")
plt.xlabel("Product")
plt.ylabel("Figure")
plt.tight_layout()
plt.show()
作者: WayneHong (韋恩咖啡)   2019-06-26 08:28:00
感覺直接改原始資料比較快
作者: yuasa (XD)   2019-06-26 12:29:00
先用product_rev.div(1000),把妳的原始資料都除1000。再改你ylabel的單位就好了
作者: treefrog (Roots)   2019-06-26 12:37:00
不好意思,請問怎麼修改單位?
作者: gmccntzx1 (o.O)   2019-06-26 12:42:00
google “matplotlib FuncFormatter”
作者: Pieteacher (pieteacher)   2019-06-26 18:54:00
Try plt.semilogy()

Links booklink

Contact Us: admin [ a t ] ucptt.com