xiangtaiyugu
@xiangtaiyugu (SHT AMG)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

openpyxlでエクセルでグラフを作りたいのですが、縦軸の目盛りの値が表示されません。

pythonのopenpyxlとchart.BarChart()を使いグラフを作成したいのですが、
Y軸の目盛りの値が表示されません。エクセルはエクセル2024だと思います。

下記のコードの
chart.y_axis.scaling.min = 0
chart.y_axis.scaling.max = 600
chart.y_axis.majorUnit = 50
の箇所が問題があるのかと考えていますが、解決策が分かりません。
コード)python3

import openpyxl

wb = openpyxl.load_workbook('openpyxl_training.xlsx')
ws = wb.active
chart = openpyxl.chart.BarChart()
chart.title = 'openpyxlで作成したグラフ'
chart.height = 7.5
chart.width = 15
chart.y_axis.scaling.min = 0
chart.y_axis.scaling.max = 600
chart.y_axis.majorUnit = 50
chart.y_axis.title = 'Y軸ラベル'
chart.x_axis.title = 'X軸ラベル'
data = openpyxl.chart.Reference(ws, min_col = 3, min_row = 4, max_col = 4, max_row =9)
chart.add_data(data, titles_from_data = True)
categories = openpyxl.chart.Reference(ws, min_col = 2, min_row = 5, max_col = 2, max_row = 9)
chart.set_categories(categories)
ws.add_chart(chart,"F4")
wb.save('python_training1.xlsx')

image.png

下記のようにY軸に0~600までの目盛りの値を出したいです。
image.png

chatGPTなどで試行錯誤しましたが、うまくいきません。どなたかご教示いただければと思います。

0

1Answer

scr5.png

自分の環境で実行したところ、↑ こうなりました。

macOS Sonoma 14.7.2 (23H311)
python 3.11.11
openpyxl 3.1.2
Microsoft 365 Excel for Mac 16.92 (24120731)

Windowsですか?

1Like

Comments

  1. @xiangtaiyugu

    Questioner

    コメントありがとうございます。
    MACです。macOS Sequoia 15.11
    Microsoft® Excel for Mac Ver 16.92 ライセンスは2024です。
    環境の違いですかね...

  2. macOS Sequoia 15.2 でも実行してみました。
    OSは無関係で、openpyxl 3.1.5 だと NGで、openpyxl 3.1.2 では 目盛が表示されました。

    次のコマンドで、openpyxl を一度アンインストールして、バージョンを指定して再インストールするとよいと思います。

    $ pip3 uninstall openpyxl
    
    $ pip3 install openpyxl==3.1.2
    
  3. @xiangtaiyugu

    Questioner

    ありがとうございます!3.1.2で試したら目盛りの値が出てきました!はまっていたので助かりました!

  4. 解決でよろしければ、当Q&Aをクローズしてください。

Your answer might help someone💌