パチスロ ま ど マギ 4k8 カジノ[解決!Python]Excelワークシートに折れ線グラフを作成するには(OpenPyXL)仮想通貨カジノパチンコwilliam hill sign up offer
ファン 感謝 デー 2021 パチンコk8 カジノ
パチスロ 新台 検定 速報連載目次
from openpyxl import Workbookfrom openpyxl.chart import Reference, LineChartwb = Workbook()ws = wb.activevalues = [ (‘YEAR’, ‘A’, ‘B’, ‘C’), (2017, 600, 450, 400), (2018, 550, 500, 350), (2019, 750, 650, 450), (2020, 600, 750, 550), (2021, 800, 650, 500)]for v in values: ws.append(v)rmin = ws.min_rowrmax = ws.max_rowcmin = ws.min_columncmax = ws.max_columnchart = LineChart()src = Reference(ws, min_col=cmin+1, min_row=rmin, max_col=cmax, max_row=rmax)chart.add_data(src, titles_from_data=True)cat = Reference(ws, min_col=cmin, min_row=rmin+1, max_row=rmax) # 項目名の設定chart.set_categories(cat)chart.title = ‘Sample Chart’ # グラフタイトルchart.x_axis.title = ‘YEAR’ # 軸ラベルchart.y_axis.title = ‘SALES’chart.anchor = ‘A8’ # グラフの表示位置chart.width = 16 # グラフのサイズchart.height = 8ws.add_chart(chart)wb.save(‘sample_chart.xlsx’)# 線の色を変更するchart.ser[0].graphicalProperties.line.solidFill = "FF0000"chart.ser[1].graphicalProperties.line.solidFill = "00FF00"chart.ser[2].graphicalProperties.line.solidFill = "0000FF"wb.save(‘sample_chart.xlsx’)# 線種を変更する# 設定可能な値:’lgDash’, ‘sysDash’, ‘dashDot’, ‘solid’, ‘sysDashDot’,# ‘lgDashDotDot’, ‘dot’, ‘sysDot’, ‘sysDashDotDot’, ‘dash’, ‘lgDashDot’chart.ser[0].graphicalProperties.line.dashStyle = ‘sysDashDot’chart.ser[1].graphicalProperties.line.dashStyle = ‘lgDash’chart.ser[2].graphicalProperties.line.dashStyle = ‘sysDashDotDot’wb.save(‘sample_chart.xlsx’)# 線の太さを変更するchart.ser[0].graphicalProperties.line.width = 10000chart.ser[1].graphicalProperties.line.width = 20000chart.ser[2].graphicalProperties.line.width = 30000wb.save(‘sample_chart.xlsx’)# 線を滑らかにするchart.ser[0].smooth = Truewb.save(‘sample_chart.xlsx’)# マーカーを変更する# 設定可能な値:’x’, ‘auto’, ‘picture’, ‘star’, ‘diamond’, ‘plus’, ‘dot’,# ‘square’, ‘dash’, ‘triangle’, ‘circle’chart.ser[0].marker.symbol = ‘x’chart.ser[1].marker.symbol = ‘star’chart.ser[2].marker.symbol = ‘diamond’wb.save(‘sample_chart.xlsx’)# マーカーの色を変更するchart.ser[0].marker.graphicalProperties.line.solidFill = "FF0000"chart.ser[1].marker.graphicalProperties.line.solidFill = "00FF00"chart.ser[2].marker.graphicalProperties.line.solidFill = "0000FF"wb.save(‘sample_chart.xlsx’)# グラフの種類を変更するchart.grouping = ‘stacked’ # 積み上げ折れ線グラフchart.grouping = ‘percentStacked’ # 100%積み上げ折れ線グラフchart.grouping = ‘standard’ # 折れ線グラフwb.save(‘sample_chart.xlsx’)
サンプルのワークシート
本稿では主に以下のコードで作成したワークシートを例に取る。
from openpyxl import Workbookwb = Workbook()ws = wb.activevalues = [ (‘YEAR’, ‘A’, ‘B’, ‘C’), (2017, 600, 450, 400), (2018, 550, 500, 350), (2019, 750, 650, 450), (2020, 600, 750, 550), (2021, 800, 650, 500)]for v in values: ws.append(v)
これをExcelで表示したものを以下に示す。
サンプルのワークシート折れ線グラフ
OpenPyXLを使って折れ線グラフを作成するには、openpyxl.chart.LineChartクラスを使用する。その手順は以下の通り。
Referenceクラスを使って、グラフ作成の基となる範囲を指定するLineChartクラスのインスタンス(グラフ)を生成するグラフのタイトル、軸ラベル、項目名などの設定を行うグラフにデータ(上で作成したReferenceクラスのインスタンス)を渡すワークシートにグラフを挿入する
折れ線グラフ(LineChart)で設定できる項目としては以下がある(一部)。
LineChartクラスを使って、折れ線グラフを作成する基本的な方法を以下に示す。
from openpyxl.chart import Reference, LineChartrmin = ws.min_rowrmax = ws.max_rowcmin = ws.min_columncmax = ws.max_columnchart = LineChart()src = Reference(ws, min_col=cmin+1, min_row=rmin, max_col=cmax, max_row=rmax)chart.add_data(src, titles_from_data=True)cat = Reference(ws, min_col=cmin, min_row=rmin+1, max_row=rmax) # 項目名の設定chart.set_categories(cat)chart.title = ‘Sample Chart’ # グラフタイトルchart.x_axis.title = ‘YEAR’ # 軸ラベルchart.y_axis.title = ‘SALES’chart.anchor = ‘A8’ # グラフの表示位置chart.width = 16 # グラフのサイズchart.height = 8ws.add_chart(chart)wb.save(‘sample_chart.xlsx’)
title属性、X軸とY軸のタイトルなど、グラフ描画で必要になりそうな項目については上のコードに示した通りだ(「OpenPyXLを使ってExcelワークシートに棒グラフを作成するには」ではもう少し詳しく取り上げているので、そちらも参考にされたい)。
このコードでは、グラフ描画の基となるセル範囲を変数srcに、X軸の項目名として使用するセル範囲を変数catに設定している。このとき、変数srcには凡例として使用する部分まで含めて、LineChartオブジェクトにadd_dataメソッドでデータを追加する際に「titles_from_data=True」を指定している。これはOpenPyXLでグラフを描画する際の典型的な手段である。
このコードを実行した結果を以下に示す。
作成された折れ線グラフ
以下では折れ線グラフの線やマーカーを設定する方法を紹介する。
折れ線グラフの線を設定する
折れ線グラフの線やマーカーを系列別に設定するには、LineChartインスタンスのser属性を使用する。この属性はグラフの系列ごとの描画情報を格納している。線の色や種類、太さを変更するにはこの属性のgraphicalProperties属性を使用する。
例えば、線の色を設定するにはgraphicalProperties.line.solidFill属性にRGB値を指定する。以下はその例だ。
chart.ser[0].graphicalProperties.line.solidFill = "FF0000"chart.ser[1].graphicalProperties.line.solidFill = "00FF00"chart.ser[2].graphicalProperties.line.solidFill = "0000FF"
既に述べたが、ser属性にはグラフの描画情報が系列ごとに格納されている。上のグラフでは系列は3つあるので、ser属性の要素数は3つある(インデックスは0~2となることに注意しよう)。上のコードでは、3つの要素のgraphicalProperties.line.solidFill属性に赤(FF0000)、緑(00FF00)、青(0000FF)を設定している。
これによりグラフは次のようになる。
グラフの線色が変わった
グラフの線色が変わったことを確認されたい。
線種(実線、点線など)を設定するには、graphicalProperties.line.dashStyle属性を使用する。設定可能な値は’lgDash’/’sysDash’/’dashDot’/’solid’/’sysDashDot’/’lgDashDotDot’/’dot’/’sysDot’/’sysDashDotDot’/’dash’/’lgDashDot’のいずれかだ。以下に例を示す。
chart.ser[0].graphicalProperties.line.dashStyle = ‘sysDashDot’chart.ser[1].graphicalProperties.line.dashStyle = ‘lgDash’chart.ser[2].graphicalProperties.line.dashStyle = ‘sysDashDotDot’
これによりグラフは次のようになる。
線種が変わった
指定可能な値と線種の対応を以下に示す。
線種と実際に描画される線の対応
線の太さはgraphicalProperties.line.width属性にEMU単位で指定する。以下に例を示す。
chart.ser[0].graphicalProperties.line.width = 10000chart.ser[1].graphicalProperties.line.width = 20000chart.ser[2].graphicalProperties.line.width = 30000
実行結果を以下に示す。
線の太さが変わったところ
最後に、折れ線ではなく、滑らかな線で点をつなぎたいときにはser属性の要素が持つsmooth属性をTrueにする。以下に例を示す。
chart.ser[0].smooth = Truewb.save(‘sample_chart.xlsx’)
以下に実行結果を示す。赤い点線が滑らかに描画されていることに注目しよう。
赤い線が点線から滑らかな線に変わった折れ線グラフのマーカーを設定する#CmsMembersControl .CmsMembersControlIn {width:100%;background:url(https://image.itmedia.co.jp/images/spacer.gif) #DDD;opacity:0.05;filter:progid:DXImageTransform.Microsoft.Alpha(Enabled=1,Style=0,Opacity=5);z-index:1;}続きを閲覧するには、ブラウザの JavaScript の設定を有効にする必要があります。仮想通貨カジノパチンコじゅん 散歩 ロッピング 通販