2024,江端さんの忘備録

私、入社直後、研究所で「テニス部の部長」をやっていたことがあります ―― 正確には「やらされた」です。

I was once the “head of the tennis club” at the institute right after I joined the company -- or more accurately, I was “made” to do so.

ちなみに、就任した時にテニス歴は1年で、週末の1日にテニスコートで拙いラリーを最大5往復できる程度でした。

Incidentally, when I took office, I had only one year of tennis experience and could only manage a maximum of five poor rallies back and forth on the tennis court on a single weekend day.

その経緯や背景はすっかり忘れてしまっていますが、今から思えば、私の「発信力」に期待されたように思います。

I have forgotten the circumstances and background, but in retrospect, they were hoping for my “ability to communicate.”

テニス部練習会のお知らせ

Tennis Club Practice Sessions

新人部員募集のお知らせ

Recruitment of new club members

結果として、『そこそこ成果を上げた』と評価されたようです。

As a result, they evaluated me as having 'achieved a good amount of success there.

-----

私が、何が言いたいかというと、

What I am trying to say is,

「拙いラリーを最大5往復できる程度」の政治家であったとしても(誰のことか、そして、どういう内容かについては、差し控えさえて頂きます)、

Even if he/she is a politician who is “capable of making up to five round trips to a poor tennis rally” (I will refrain from telling you who I am talking about and what I am talking about),

―― 一度、我が国の舵取りをやらせてみるのもありなのかな?

"I am wondering if it is possible to let him/her take the helm of our country for once."

という気もしています。

I am thinking that it might be a good idea.

-----

事実上、国民の信を失ってしまった政党であるなら、ここは、一発逆転狙いで賭けてみるのも良いかもしれません。

If the party has effectively lost the public's trust, it might be a good idea to take a shot at an upset here.

まあ、「立場が人を作る」という諺もあります。

Well, there is a saying that “position makes the person.

内閣総理大臣の役職や責任の重さで、その人の成長や変化を促すことができるなら、これは「儲け物」です。

If the position and responsibilities of the Prime Minister can encourage a person to grow and change, this is a “win-win” situation.

あの政党が、この賭けに出られるかどうか ―― これもまた「見物(みもの)」です。

Whether that party will be able to take this gamble or not -- this is also something to “watch”.

少なくとも、私には、大リーグで偉業を続けている日本人選手の活躍よりも、楽しみです。

At least, to me, it is more exciting than the success of Japanese players who continue to achieve greatness in the big leagues.

ともあれ、世代には世代なりにミートする「肩書」というものがあるようです。

2024,江端さんの忘備録

私、チームでの仕事がスタックしてしまうと、誰の許可も得ずに、『勝手に動くモノを作ってしまいます』。

When I get stuck working in a team, I 'make things that work independently' without anyone's permission.

これは、よい手段ではありません。チームワークを蔑ろにする行為でもあります

The work style is not a good measure. It is also an act of disrespect for teamwork.

それに「私が面倒くさい」。

Besides, “I feel troublesome.”

動くモノを自分で作るのは、時間も頭脳も大量消費するので、可能ならやりたくない。

Making a moving object consumes a lot of time and brainpower, and I would not want to do it if possible.

ですので、この、『勝手に動くモノを作る』は、最後の手段です。

Therefore, “making something that moves on its own” is a last resort.

―― という話は、これまで散々してきましたので、もう皆さんも飽きているでしょう。

-- I've talked about this so much that I'm sure you are all tired of it by now.

「シミュレーションは、究極の暴力である」

とはいえ、「モノを作る」というのは、大変幸せなことなんだろうなぁ、とは思います。

Nevertheless, I think “making things” must be pleasant.

亡き父は、木工職人でした。職人として働いている時の父は、いわゆる「職人の顔」をしていましたが、それは、少なくとも『辛そう』ではかったと思う。

My late father was a woodworker. When working as a craftsman, my father had a “craftsman's face,” but I don't think it was, at least, a “painful” face.

テレビで見る職人さん(料理、大工、鍛冶、陶芸、染色、和紙、石工、竹細工、畳、その他たくさん)も ―― 経営的な苦労はあるでしょうが ―― 『嫌々やっている』風に見えたことはありません。

The artisans I see on TV (cooks, carpenters, blacksmiths, potters, dyers, Japanese paper, stonemasons, bamboo craftsmen, tatami mats, and many others) may have to work hard to run their businesses. Still, they never seem to “hate what they do.”

もちろん、創作の苦労はあるでしょうし、様々な制約(徒弟、しきたり、監修、規則、縛り)など面倒もあります。私の場合、他人から口を出されると不快になります。

Of course, there are difficulties in the creation and various restrictions (apprenticeships, traditions, supervision, rules, bindings) and other troublesome things. In my case, I am uncomfortable when others talk to me.

それでも、『生きていくだけの金はやるから、これから一切、何も作るな』は、『何を作ってもいいが、金になるかどうかは保証しないぞ』より劣るのです ―― 私の場合は、ですが。

Still, 'I'll give you enough money to live on, so don't make anything at all from now on' is inferior to 'You can make anything you want, but I can't guarantee you'll make money' -- in my case, anyway.

私が作ったモノがどうなるか ―― 金になるとか、人の役に立つとか、あるいは、他人から評価されるとか ―― そういうことは、私にはどーでもいいことです。

What happens to the things I make - whether they make money, are useful to others, or are appreciated by others - is of no concern to me.

私は『車輪の再開発? 上等だ!』と言い切れる人間なのです。

I am a person who can say, 'Wheel redevelopment? I'm a man who can say, 'Great!'

『破壊的イノベーション』を、「破壊的」に「破壊している」主体の一人が、私です。

閑話休題

Now, let's return to the main subject

-----

とか、いっているうちに、博多のGISシミュレータのテンプレ作成を完了しました(一部バグっているようですが)。

And while I'm at it, I have completed the creation of the GIS simulator temps for Hakata (although some seem buggy).

首都圏鉄道、柏、豊洲、広袴、宇都宮、山口、横浜、渋谷、そして、博多。

Metropolitan railroads, Kashiwa, Toyosu, Hirohama, Utsunomiya, Yamaguchi, Yokohama, Shibuya, and Hakata.

思えば、遠くに来たものです(遠い目)。

Thinking back, I have come a long way (far away).

ちなみに、私、これらの技術を、全部公開しているんですけど ―― 誰一人として、引き継いでくれる気配がありません。

By the way, I have made all these technologies available to the public. But no one seems to be willing to take them over.

GISをDIYで作ろう―PostGISを使い倒す

JOSMで地図を改ざんして道路と鉄道を交えた最⼩コスト経路探索をやってみよう-完全版

2024,江端さんの技術メモ

「Redisをインストールすることなく、Windows10で使う方法」がある、と、ChatGPTに言われて「ホンマかいな?」と思いながらやってみたのですが、さっくり動きました。

$ docker run --name redis -p 6379:6379 -d redis

これだけで、Windows上で動かしているGoプログラムの中のredisが動いています(理屈は分かりません)。

Redisの動作確認
Dockerコンテナ内のRedisが動作しているか確認するためには、以下のコマンドを実行します。

$ docker exec -it redis redis-cli ping

-----

また、「docker run --name redis -p 6379:6379 -d redis を次回再起動するには、どうしたら良いですか」と聞いてみたところ、

Redisコンテナを再起動するコマンド

  1. コンテナを再起動する コンテナが停止している場合、次のコマンドで再起動します:
    docker start redis
  2. コンテナが実行中かどうかを確認する docker psコマンドを使って、Redisコンテナが正しく動作しているか確認できます:
    docker ps

    Redisコンテナが実行中であれば、一覧に表示されます。

だ、そうです。ちなみに、

もし、Dockerが起動するたびにRedisコンテナを自動的に再起動させたい場合は、--restartオプションを使って自動再起動ポリシーを設定できます。次回docker runを実行するとき、--restartオプションを追加しておくと、自動再起動が設定されます。

$ docker run --name redis -p 6379:6379 -d --restart unless-stopped redis

私は、redisが必要のない時に立ち上げたくはないので、上記の設定はしていません。

以上

 

2024,江端さんの忘備録

先日、『韓国の 文在寅ムンジェイン 前大統領に収賄容疑が浮上している』というニュースを見ました。

The other day, I saw a news report that said, 'Former South Korean President Moon Jae-in is facing bribery charges.

『またか』と思ったので、ChatGPTに

'Again,' I thought and asked to ChatGPT.

『韓国の大統領は、在任後に逮捕されていることが多いようです。比率を教えて下さい』

'It seems that many Korean presidents have been arrested after their term in office. What is the ratio?'

と尋ねてみました。

===== ChatGPT回答ここから ======

===== ChatGPT answers here ======

大統領経験者のうち、逮捕・刑事処分を受けた割合:

Percentage of persons with presidential experience who have been arrested and criminally charged:

李承晩(イ・スンマン) - 自ら亡命し、刑事処分なし。
尹 善(ユン・ボソン) - 刑事処分なし。
朴正煕(パク・チョンヒ) - 暗殺され、刑事処分なし。
崔圭夏(チェ・ギュハ) - 刑事処分なし。
全斗煥(チョン・ドゥファン) - クーデター後の権力掌握により逮捕・起訴され、死刑判決を受けたが後に特赦。
盧泰愚(ノ・テウ) - クーデター関与で逮捕・起訴され、有罪判決を受けるが後に特赦。
金泳三(キム・ヨンサム) - 刑事処分なし。
金大中(キム・デジュン) - 刑事処分なし。
盧武鉉(ノ・ムヒョン) - 在任後に贈賄疑惑で捜査中に自殺。
李明博(イ・ミョンバク) - 汚職で逮捕・起訴され、有罪判決。
朴槿恵(パク・クネ) - 弾劾後、汚職で逮捕・起訴され、有罪判決。
文在寅(ムン・ジェイン) - (2024年時点で刑事処分なし)。
尹錫悦(ユン・ソンニョル) - 現職。

Lee Seung-man - Voluntarily defected, no criminal action.
Yun Bo-seon - no criminal action.
Park Chung-hee - Assassinated; no criminal action.
Choi Kyu-ha - no criminal action.
Jeon Doo-hwan - arrested and indicted for seizing power after the coup, sentenced to death but later granted a special pardon.
Roh Tae-woo -  Arrested and indicted for his involvement in the coup and convicted but later granted a special pardon.
Kim Young-sam - No criminal action.
Kim Dae-jung - No criminal action.
Roh Moo-hyun - Committed suicide while under investigation for alleged bribery after serving in office.
Lee Myung-bak - Arrested, indicted, and convicted for corruption.
Park Geun-hye - Arrested, indicted, and convicted of corruption after her impeachment.
Moon Jae-in - (no criminal action as of 2024).
Yun Seong-yeol - incumbent.

上記から、現在までの大統領経験者12名のうち、6名(盧泰愚、全斗煥、李明博、朴槿恵、盧武鉉)のケースが刑事処分または捜査を受けたことになります。したがって、**比率としては約50%**です。

From the above, we can conclude that of the 12 presidents to date, 6 cases (Roh Tae-woo, Jeon Doo-hwan, Lee Myung-bak, Park Geun-hye, and Roh Moo-hyun) have been criminally punished or investigated. Thus, the **proportion is approximately 50%**.

ただし、この比率は尹錫悦大統領や文在寅大統領についての将来的な状況が変わる可能性があります。

However, this ratio between President Yun Seok-yue and President Moon Jae-in may change.

===== ChatGPT回答ここまで ======

===== ChatGPT response so far ======

検挙率50%--これなら万引きの方がよっぽど割がいい。

50% arrest rate -- I thought shoplifting would be much more profitable for this.

-----

引き続き、

Continued,

『なぜ、このような逮捕の比率が高いのでしょうか。理由を考えてみて下さい。』

'Why is the percentage of such arrests so high? Can you think of a reason?'

と聞いてみました。

I asked to ChatGPT.

===== ChatGPT回答ここから ======

===== ChatGPT answers here ======

韓国の大統領経験者が逮捕されたり刑事処分を受けたりする比率が高い理由には、いくつかの要因が考えられます。

Several factors may account for the high rate of arrests and criminal prosecutions of former South Korean presidents.

1. 権力集中と腐敗のリスク
韓国の大統領は強力な権限を持っています。行政の長であり、立法に影響を与え、軍の最高指導者でもあります。このように権力が集中することで、汚職や権力乱用のリスクが高まります。長期にわたる権力の保持が腐敗を招き、退任後にその責任を追及されるケースが多いのです。

1. concentration of power and risk of corruption
The president of South Korea has mighty powers. He is the head of the executive branch, influences legislation, and is the supreme leader of the military. This concentration of power increases the risk of corruption and abuse of power. Long-term retention of power often leads to corruption, and people are often held accountable for their actions after they leave office.

2. 政治的対立と報復
韓国では、政権交代の際に新たな政権が前政権の腐敗や違法行為を厳しく追及する傾向があります。これは、政治的対立や報復とみなされることが多く、特に保守派と革新派の間でこの傾向が顕著です。新政権が前政権のスキャンダルを暴露し、前大統領を起訴することがしばしば見られます。

2. political conflict and retaliation
In Korea, when there is a change of government, there is a tendency for the new administration to pursue corruption and illegal activities of the previous administration harshly. This is often seen as political confrontation and retaliation, especially between conservatives and innovators. Often, the new administration exposes scandals of the prior administration and prosecutes the former president.

3. 司法の独立と市民の監視
韓国では、民主化以降、司法の独立性が強まり、市民社会の監視も強化されています。これにより、現職の大統領であっても不正行為があれば厳しく追及される環境が整っています。また、メディアや市民団体が政府の腐敗を暴く役割を果たしており、大統領退任後に捜査が進むことが一般的です。

3. judicial independence and citizen oversight
Since Korea's democratization, the independence of the judiciary has been strengthened, and civil society monitoring has also been enhanced. This has created an environment where even the incumbent president can be harshly pursued for wrongdoing. In addition, the media and civil society groups expose government corruption, and investigations typically proceed after the president leaves office.

4. 歴史的背景と前例
韓国の現代史において、軍事政権や独裁政権の遺産が深く影響しており、その過去の清算が行われる過程で大統領が逮捕されるケースが多発しました。このような前例があるため、後続の大統領も同様の運命を辿ることが多くなっている可能性があります。

4. historical background and precedent
The legacy of military and dictatorial regimes has deeply affected Korea's modern history, and presidents were often arrested in the process of clearing the past. Because of this precedent, subsequent presidents will likely suffer a similar fate.

5. 大統領制の限界と期待の高さ
韓国では大統領制に対する国民の期待が非常に高く、その分失望も大きいです。大統領は国民の期待に応えることが求められる反面、期待に応えられなかった場合や不祥事が発覚した場合、国民や政敵から厳しい批判を受け、退任後にその責任を問われることが多いです。

5. limitations of the presidential system and high expectations
In South Korea, public expectations of the presidential system are very high, as are their disappointments. While the president is expected to meet the people's expectations, when they fail or scandals are uncovered, the president is subject to harsh criticism from the people and political opponents and is often held accountable for their actions after leaving office.

これらの要因が組み合わさり、韓国では大統領経験者の逮捕・刑事処分の比率が高くなっていると考えられます。

These factors may be responsible for the high rate of arrests and criminal actions against people with presidential experience in South Korea.

===== ChatGPT回答ここまで ======

===== ChatGPT response so far ======

-----

ここで、 上記のChatGPT回答に気になった点がでてきたので、すこしツッコんでみました。

I was curious about the above ChatGPT answer, so I tried it.

『上記「2. 政治的対立と報復」について、韓国の国民性の観点からの関連があるでしょうか』

“Regarding “2. Political Conflict and Retaliation” above, is there any relevance from the perspective of Korean national character?”

===== ChatGPT回答ここから ======

「政治的対立と報復」の背景にある韓国の国民性についても、いくつかの観点から関連があると考えられます。

Several perspectives on the Korean national character behind the “political conflict and retaliation” are also relevant.

1. 高い政治的関心と参加意識
韓国の国民は、政治に対する関心が非常に高く、選挙やデモなどの政治活動に積極的に参加する傾向があります。これは、韓国の歴史的背景、特に民主化運動の影響が大きく、国民が政治的な正義や透明性を強く求める文化が形成されているためです。その結果、政治的対立が激化し、政権交代のたびに新政権が前政権の不正を厳しく追及することが一般的になっています。

1. High level of political interest and participation
The Korean public is very interested in politics and actively participates in political activities such as elections and demonstrations. This is due to Korea's historical background, especially the influence of the democratization movement, which has formed a culture in which the people strongly seek political justice and transparency. As a result, political conflicts have intensified, and with each change of government, it is common for the new administration to pursue the injustices of the previous administration harshly.

2. 集団主義と報復文化
韓国社会は伝統的に集団主義が強く、個人よりも集団の利益を重視する文化があります。この集団主義は、政治の場でも顕著で、政党や政治的勢力が結束しやすい一方で、対立する集団に対しては強い敵対心が生まれやすいです。このため、政権が交代する際には、集団間の対立が激化し、報復的な行動が取られることが少なくありません。

2. Collectivism and culture of retaliation
Korean society has traditionally been strongly collectivist, with a culture that values the group's interests over those of the individual. This collectivism is also evident in politics, where political parties and political forces tend to unite while intense hostility develops toward opposing groups. As a result, when there is a change of government, intergroup rivalries often intensify, and retaliatory actions are often taken.

3. 義理と恩義の重視
韓国の文化では、義理や恩義を重んじる傾向が強く、この価値観が政治的対立や報復にも影響を与えています。新たな政権が前政権の不正行為を追及する際、国民はその行動を「義理を通す」「正義を貫く」として支持することが多いです。逆に、前政権が「恩義を忘れた」「裏切った」と見なされると、国民の怒りを買い、報復的な対応が強化される傾向があります。

3. Emphasis on duty and beneficence
Korean culture strongly emphasizes righteousness and ingratitude, and this value system influences political conflict and retaliation. When a new administration pursues the wrongdoings of the previous administration, the public often supports its actions as “doing the right thing” or “doing justice. Conversely, when the previous administration is seen as having “forgotten its ingratitude” or “betrayed,” the public tends to be outraged and retaliatory responses are intensified.

4. 正義感と道徳観の強さ
韓国の国民性として、強い正義感と道徳観が挙げられます。国民は政治家に対して高い倫理基準を求め、その基準に反する行為があれば強く非難します。このため、大統領や高官が汚職や権力乱用で告発されると、国民は厳しい対応を求めることが多く、その結果として、退任後に逮捕や刑事処分を受けるケースが増える要因となっています。

4. Strong sense of justice and morality
A strong sense of justice and morality characterizes Korea's national character. The public demands high ethical standards from politicians and strongly condemns any behavior that violates those standards. For this reason, when a president or high-ranking official is accused of corruption or abuse of power, the public often demands a harsh response, which has contributed to an increase in the number of cases of arrests and criminal actions after leaving office.

これらの要因が絡み合い、韓国の国民性が政治的対立と報復に影響を与えていると考えられます。韓国では、政権交代時に前政権の不正を追及することが、国民の期待に応える形で行われることが多く、これが高い逮捕比率につながっていると言えるでしょう。

These factors are intertwined, and South Korea's national character likely influences political conflict and retaliation. In South Korea, the wrongdoings of the previous administration during regime change are often pursued in response to public expectations, which has contributed to the high arrest rate.

===== ChatGPT回答ここまで ======

===== ChatGPT response so far ======

ChatGPTの回答が妥当でないことは多いのですが、今回の回答は非常に納得できるものが多かったです。

ChatGPT's answers are often unreasonable, but many of the answers in this case were very convincing.

「高い政治的関心と参加意識」とか、「正義感と道徳観の強さ」とかは ―― 色々と我が国との軋轢を発生させているものではありますが ――

A “high level of political interest and participation” and a “strong sense of justice and morality” -- things that have caused friction with our country in many ways -- are not the only things that are important to us.

それでも自民党の裏金問題などに関する対応についての、我が国の国民の対応は、私には、少し『弱すぎる』ようにも感じます。

Still, the response of our nation's people regarding the LDP's handling of the slush fund issue, etc., seems a bit too 'weak' to me.

=====

先日、NHKスペシャル「永田町“政治とカネ”の攻防 ~改革のゆくえは~」を見ていました。

The other day, I was watching the NHK special “Nagatacho ‘Politics and Money’: Where is the Reform?

インタビューに応じた、安倍派議員や政治資金規正法改正の各党の責任者たちの『全員』が、自分が被害者の様に振る舞う様は ―― 見ていて"醜悪"そのものでした。

It was “ugly” to see how “all” of the interviewed Abe faction members and those in charge of revising the Political Funds Control Law acted as if they were the victims.

『私こそがこの問題の根本だ!』という発言までは期待していなかったですが、この問題に対する自己批判(×組織批判)の言葉が「一言もなかった」ことだけは覚えておこう、と思いました。

I did not expect to hear, “I am the root of this problem!” but I thought I would keep in mind that there was “not a single word” of self-criticism (x criticism of the organization) on this issue.

ふーん、20万円どころか、1000万円を越えても、納税しないでいいんだぁ~

―― キックバックの金額が4000万円であろうが、4000円だろうが、アカンだろう

新党の名称は、やはりこれで決まりでしょう ―― 「新党"脱税"」または「新党"裏金"」

 

2024,江端さんの技術メモ

(1)地図DBに接続されている状態であること。

(2)go.modが入っていること

(3)prune_isonodes.go の依存パッケージのインストール方法が変っていること

// 依存パッケージ  $ go get github.com/lib/pq
//↓
G:\home\ebata\hakata\hakata_db>go get github.com/lib/pq
G:\home\ebata\hakata\hakata_db>go install github.com/lib/pq
go: 'go install' requires a version when current directory is not in a module
        Try 'go install github.com/lib/pq@latest' to install the latest version
G:\home\ebata\hakata\hakata_db>go install github.com/lib/pq@latest
package github.com/lib/pq is not a main package

(4)prune_isonodes.goに書き込まれたターゲットのdb名称を変更すること

    dbParam := fmt.Sprintf("host=localhost port=%d user=postgres password=password dbname=hakata_db sslmode=disable", *dbPort)
"go run prune_isonodes.go"で孤立ノードが削除されます。
G:\home\ebata\hakata>go run prune_isonodes.go
[ノード#1からのスキャン] 到達数: 60781 未到達: 1108
削除対象のノード (1108個):
[57493 59415 46635 51008 46336 59154 48022 59511 39412 22789 59166 59535 59531 53964 31094 45646 55303 45386 51069 59394 59129 59175 59215 59190 59297 45602 61062 50473 53933 51663 60258 17471 17566 59406 48023 60228 49200 49186 58539 60103 51007 59546 51006 57326 59547 45680 59250 59598 46354 47335 47010 58527 54516 31095 59323 45327 45676 60125 46868 53953 60226 32888 50574 60213 18763 59290 60114 59520 60264 59393 59538 32894 51854 59477 59061 59245 47003 59615 53958 60245 59325 61661 59064 58529 52435 47547 47001 60231 39841 61645 59130 45613 46221 46356 59059 28051 59191 59237 59286 59125 59229 59548 42380 59074 53967 59424 58543 59305 59524 59413 45664 53966 47343 59292 50984 47012 60109 58530 58678 60156 45606 59184 49184 53951 37012 42383 46334 59195 59362 45599 59601 60266 29342 59056 47337 45699 45648 59635 59293 5237 47004 22462 61660 45621 61655 53239 49196 59077 59112 60255 53934 42382 59179 56864 45620 52871 46817 59216 59512 5238 19595 48020 46326 59610 60221 47340 61734 61737 45647 45638 58568 59132 50582 59288 57488 61668 59244 31964 51274 59161 47315 19587 51327 45628 49198 59576 59550 51158 45674 53950 59401 45669 59226 46226 58528 35214 59348 37000 53921 18761 51267 60256 53968 17485 51273 48352 50363 59501 59211 57485 59636 59084 50580 19594 31093 59055 53928 37013 45600 60104 53970 60214 59234 28899 60110 50578 47334 32889 59505 60219 41557 60239 50267 53939 29424 59239 60131 57486 39415 59343 49201 53243 45662 60252 45665 60217 46223 61658 46864 58083 59334 45610 60155 59327 59131 59542 53940 46342 59478 59388 59392 59414 59296 45653 59879 59169 61644 53238 59500 59549 45655 57484 45614 59360 59345 59316 59135 59122 59568 59176 59251 60251 50577 59158 59509 45618 60102 22775 59196 59361 59203 52870 53686 59595 58537 59491 45670 59142 53975 42610 60337 53947 53919 53973 59618 59145 39409 24519 45654 59289 53931 46220 47002 46866 59355 45625 60260 60257 53962 53235 37018 57327 37008 59308 45962 53937 53932 59354 59160 59194 37023 53957 53961 59384 59342 37020 61724 59349 59621 53237 59537 47316 51665 59173 22114 32892 46007 46327 59609 53942 59157 46974 59486 59495 59356 51853 53226 50355 50979 59137 54531 59508 51206 59205 59487 40314 53926 45659 59221 50983 45601 60262 59526 36997 53955 59232 59163 18757 60237 45675 57324 53930 59209 53242 22115 45698 19576 59206 59144 59240 59515 59522 45673 59189 45656 59220 59386 59407 59399 59604 45637 61643 57332 59111 59385 46331 60240 59162 59303 54923 36998 60232 59299 56623 59498 59607 60218 55301 49189 31966 59338 57906 45690 45322 59423 45615 59301 60716 60115 53687 60121 45660 37019 45619 50354 51165 52437 48272 32059 60243 59307 59306 53241 59228 58534 59602 59319 59082 60238 50474 45666 59310 59391 10298 60116 59496 59417 59081 61871 45617 59411 59078 59597 37016 59558 46949 40315 46324 60119 59553 59219 59422 32897 59507 59243 59523 59114 45639 46329 59287 47339 59350 60242 53959 59247 43492 59118 61738 61880 45325 59076 53948 53972 5240 59324 40316 59155 59242 59187 59426 60224 59479 45624 59183 59128 59246 58580 45678 39840 46862 59476 59344 59201 43246 59620 59492 59113 59351 59612 59418 59224 60216 60222 59121 45645 59217 59494 59359 57904 53971 53922 59159 45679 59115 55300 59347 58581 50592 59561 59529 60248 59592 59563 36996 45663 60215 53943 59140 59480 59880 45603 59060 59197 53949 58351 60227 44923 58541 56622 37007 40313 60122 46975 45627 59565 59126 58082 57487 59593 49190 57914 60233 45634 59554 45671 45324 59198 59400 46330 59124 59594 17541 19581 60120 19593 47033 38208 5236 59412 60334 28944 53927 61725 5239 59171 60154 46335 59180 59285 45640 60254 59427 61061 45644 45414 31965 53918 57490 59284 17522 57489 52439 59138 59534 60261 59489 50589 54396 47902 59398 37011 59225 45658 51068 59313 54423 50583 61662 57910 45689 50586 59613 57325 53965 47904 58532 59346 60241 59182 60124 60267 59231 50982 52436 61666 61495 46315 61665 58544 32891 51174 59341 59599 46227 59235 37005 32895 53240 61872 59300 45436 60111 53935 46225 59419 60338 59227 59622 46867 59167 46339 59283 54517 60246 45616 53236 45657 48021 59249 51330 45650 22452 54922 59172 59395 59409 46950 59202 47901 60106 61642 46861 59533 10301 59062 59352 59403 59544 52438 45608 59340 57909 59617 59605 45642 53234 54530 45635 50360 59207 38209 59192 52440 37014 59320 56855 45672 59482 54525 44926 59141 19597 59545 59119 59248 42064 57331 61672 59199 42381 59164 45641 45677 59566 59499 17519 46341 50595 57323 51070 58579 50576 59567 58695 60108 49188 45609 59065 31967 22778 46333 59136 59185 59337 59624 17539 59506 29339 46222 52872 48010 59485 51326 59357 50978 53944 59490 45626 53941 50585 57911 45629 56621 49194 48011 39411 58538 53689 59302 59304 53923 59497 61663 37024 59282 59358 59188 32890 46332 59521 59483 59488 60220 50361 60234 56713 59430 53945 47336 59335 22783 50991 37022 32896 53936 50575 59133 59551 53920 57913 58526 45661 59608 59170 59389 50587 59058 52447 54398 59339 50992 53946 60259 10300 45611 53954 60235 15200 45651 46355 59397 93 46863 60236 61657 36995 50591 59311 59193 59156 45323 32893 59353 10297 60126 61063 53960 37021 59314 59513 59402 49192 22776 50980 59484 42379 59063 59390 59315 45633 59562 37017 15165 46337 60107 57482 53925 39413 59637 59429 59318 59208 59168 49195 45623 59552 58533 49193 22769 59143 59222 37009 47903 22782 37004 50594 45604 60112 61060 39408 54397 59085 53938 59174 59564 59493 59421 53963 19588 46318 59178 60153 59241 61659 59600 45630 43493 43480 59083 59123 60244 59139 46224 59186 53924 58542 59117 59606 60113 59218 50590 59238 44919 59181 61656 38207 59416 50579 51662 57329 60223 59312 24502 58536 6768 46321 59134 61654 55302 59322 59057 17560 39414 45649 49191 50334 51329 59387 59326 50879 53312 59420 37010 60229 61059 32898 45643 49185 37003 59611 59410 59619 59404 59054 59514 39416 59317 53969 53974 53952 55795 18764 50596 3068 59532 47314 59295 60249 47014 50588 39574 59294 60265 60263 37015 45326 3066 45668 37006 43491 51325 10299 61667 59536 60105 45605 58535 59503 45631 57905 51664 59556 60118 59212 45622 22780 45667 59309 22768 59502 57912 59616 46317 53956 59396 57483 45632 59405 59210 59321 47017 57491 59623 6767 44924 45607 58509 60253 59213 50593 59177 58531 48351 57328 3067 45319 45652 60225 50993 51328 50584 59120 61494 31036 49199 22791 59328 45612 59075 37574 22443 59577 59408 59614 39410 60117 59603 59230 53688 50581 59557 40312 59291 59596 45697 59080 61879 59336 59236 59214 59079 60230 37002 36999 46366 46865 19584 59116 49187 58540 45636 53929 52794 59200 60247 58084 60618 59428 52446 59233 46338 59629 18762 49197 59204 59165 59127 60123 60250 59223 61664 59425 57492 59298 37001 59504 19592 57330]
削除を実行します。
完了しました。

2024,江端さんの忘備録

航空自衛隊のパイロットの人のドキュメントとか見ると、「凄いなぁ」と素直に感動します。

When I see a documentary or something by a pilot of the Air Self-Defense Force, I am honestly impressed and think, “That's great.

才能と訓練で、戦闘機に命を与え、国防に従事して頂いている自衛隊の皆様に感謝しております。

I am grateful to the Self-Defense Forces for their talent and training, giving life to our fighters, and serving in our national defense.

しかし、これからは、そのパイロットが、戦闘機の弱点になっていくんだろうなぁ、と思っています。

However, from now on, that pilot will probably become the weakest link in the fighter.

人間が操縦する以上は、人間の生存が確保されなければなりませんが、人間の体は"6G"がプラスにもマイナスに秒単位で変化するような移動体に乗れるようにはできていないのです。

The human body is not designed to ride on a moving vehicle with “6G” that can change from positive to negative in seconds.

どう考えても、「これからの戦闘機は、無人機になっていく」 ―― が流れです。

No matter how you look at it, the trend is that “future fighter planes will be unmanned”—that is the trend.

-----

しかし、この「戦闘機の無人機化」は、それはそれで問題があるのです。

But this “unmanned fighter aircraft” has its problems.

まず、リモートコントロールをする場合は、信号の伝送が問題になります。音速の物体に、制御信号を送るというのは、至難の技です。特に電波の場合は、天候は勿論、外部からの妨害などにも弱いです。これは、近年のドローン兵器の台頭で明らかになってきています。

First, signal transmission is a problem for remote control. Sending a control signal to an object moving at the speed of sound is a challenging task. Radio waves, especially, are vulnerable to external interference, not to mention weather. It is apparent with the rise of drone weapons in recent years.

加えて、制御遅延という問題もあります(0.1秒でも反応が遅ければ、簡単に撃墜されかねません)。

In addition, there is the problem of control delay (if the response is even 0.1 second too slow, the aircraft can quickly be shot down).

-----

とすれば、独立型の知能 ―― AI搭載戦闘機になりますが、正直、こいつは『何をやらかすか分からん』のです。

If so, it will be an independent intelligence and AI-equipped fighter, but to be honest, nobody knows what the AI something will do.

AI技術が搭載された機械は、与えられたルールをちゃんと守るだけなので、領空侵犯した外国の戦闘機にはその瞬間ミサイル攻撃するでしょうし、下手すれば民間機も撃墜するかもしれません。

Since machines equipped with AI technology only follow the given rules correctly, they will attack foreign fighter jets that violate airspace with missiles at that moment. If they are not good enough, they may shoot down civilian planes as well.

ルールに何十ものフェールセーフをかけたとしても、予想もせぬ条件では、コンピュータ(AI技術)が何をやるかは、分からないのです(私は、システムエンジニアとして、山ほど経験してきました。『あ! そんなところに、そんなところにif文(抜け穴)がぁぁぁ!!』です)。

Even with dozens of fail-safes in the rules, you never know what the computer (AI technology) will do under unexpected conditions (I've experienced this a lot as a systems engineer. 'Oh! There is an if statement (loophole) in such and such a place!)

実際のところ「人間の逡巡(しゅんじゅん)」こそが、これまで世界破滅から救ってきたのです。

“human hesitation” has saved the world from ruin so far.

国防や戦争を担当する人達が何を考えているかは分かりませんが、「戦闘機の無人機化」について、未来がどうなっていくのかについては、エンジニアとして興味があります。

I don't know what the people in charge of national defense and warfare are thinking, but as an engineer, I am interested in what the future holds regarding “unmanned fighter aircraft.”

-----

私が、今一つ「トップガン」という映画に興味が持てない理由は、いわゆる「トップガン」と言われているパイロットの凄い技術も、いつかは、機械(AI技術)に奪われていくのだろうなぁ、と考えてしまい、今ひとつ、熱中できないのです。

I am not interested in the movie Top Gun because I think that the excellent skills of the so-called “Top Gun” pilots will one day be taken away by machines (AI technology), and I can't get into the movie.

それは、数学、科学、ITができない奴が虐げられる世界 ―― 『理系にあらざれば、人にあらず』

2024,江端さんの忘備録

人間というのは ―― という言い方は卑怯ですね。

It's not fair to say that "human beings are."

「私という人間は」と正確に言ってみます。

Try to be precise: “I am who I am.”

私という人間は、今更ながらですが、性格が悪いです。

I, as a person, have a bad character, even after all this time.

先日、「地面師たち」というNetFlixのコンテンツを見ていて思ったのですが、山本耕史さんが演じる「騙されて、堕ちていくエリート」を見ていて、本当に気分がよかった。

I was watching NetFlix content the other day called “The Groundhogs,” I thought it felt excellent to watch the “deceived and fallen elite” played by Koji Yamamoto.

そして、人生において、一度も「エリート」ではなかった自分のことを、『ああ、本当によかった』と思えるほどに、私は、浅学で狭量で、そして卑怯です。

And I am so shallow, narrow-minded, and cowardly that I can think, 'Oh, I have been so happy' that I have never been 'elite' in my life.

-----

そして、私は、人の成功を、素直に喜べない人間でもあります。

I am also a person who cannot honestly rejoice in the success of others.

で、まあ、私は、この性格を一生変えられないと思います ―― 残念とは思いますが。

And, well, I don't think I'll ever be able to change this personality -- although I think it would be a shame.

しかし、私は、『一生懸命頑張っている人が堕ちていくのを楽しいと思える最悪の性格である』としても、『一生懸命頑張っている人を1mmたりとも邪魔をしてはならない』とは思っています。

However, I believe that even if I 'have the worst personality to enjoy seeing someone working hard fall,' I should not 'interfere with someone working hard, not even for a millimeter.

これは、これまで『一生懸命の私が、邪魔されまくってきたから』という経験があります。

The reason has been based on my experience: 'I'm a hard worker, and many people often interrupt me.

『9日間の忍耐』ができるエンジニア ―― これが、SLIMプロジェクトのエンジニアの皆さんと、私の決定的な差です。

―― 私は一度だって、誰かに何かを頼んだことがないのに、なんで、わざわざ口を出してくるんだろう?

"I never once asked anyone for anything, so why do they bother to talk to me?"

と、今でも不思議です。

And I still wonder.

これは日常生活でも、簡単に観測できます。

We can easily observe many cases in everyday life.

アニメとか見ていると、「作画がどうの」「ストーリーがどうの」と色々言ってくる人間の、まあ、なんと多いことか。

When I watch anime, I am amazed at the number of people who say things like, “What about the drawings?” and “What about the story?”.

でも、彼らの気持ちは理解できます。

But I can understand how they feel.

『ケチをつけることで、自分もその作品に参加しているような気になれる』からです。

I think it's because 'by being stingy, I can feel like I'm participating in the work.

実によく分かります ―― 思い上がった幻想ですが。

I understand -- even if it's a hubristic illusion.

-----

私、作品を発表する側の人間でもありましたので、まあ、山のようにケチをつけられてきました

I have been on the side of presenting my work, and I have been criticized a lot.

自分の思いと異なる主張には、ケチをつけることで議論に参加するつもりになるのですよね。

You think you will participate in the discussion by being stingy with claims that differ from your thoughts.

で、ロジックで対抗できないから、個人攻撃をしたくなるんですよね。

And since you can't counter with logic, you want to make personal attacks.

うん、これも、実によく分かる。

Yes, I can understand this, too.

でも、はっきり言って

But let me be clear.

―― 鬱陶(うっとう)しい

"It's depressing."

です。

-----

とは言え、私自身が、そういう性格ですから、そういう性格の人間が少なからず存在することは、認めなければなりません。

Nevertheless, I must admit that there are more than a few people with that kind of personality because I, myself, have that kind of personality.

私は、性格は変えられなくても、努力をしています。

I am trying, even if I can't change my personality.

『一生懸命頑張っている人を、できるだけ見ないようにする』という、全力後方向きの努力です。

It is an all-out backward-looking effort to 'try as much as possible not to see people who are trying their best.

私のような性格の人は、一生懸命頑張っている人を見れば、何かをケチを言いたくなるのでしょう。

If you are like me, you are tempted to stink at something when you see someone working hard.

ならば、そういう人やコトから目をそらせばいいんです。

Then you can turn away from such people and things.

例えば、

For example,

■アニメの作画が気にいらなければ、ケチを付けるのではなく、ただ、視聴をやめる

-If you don't like the animation, don't be stingy. Just stop watching.

■米国で活躍している日本人選手に、ケチを付けるのではなく、ただ、テレビのチャンネルを変える

-Don't be stingy with active Japanese athletes in the U.S. Change the channel on the TV.

■日本チームのサッカーチームのパフォーマンスに、ケチを付けるのではなく、別の番組 (NHKスペシャルとか)を見る

-Watch another program (such as NHK Special) instead of being stingy about the Japanese team's soccer performance.

もっとも、この問題は、ずっと昔から(2ちゃんねるどころか、fjの時代から)論争になってきていますきたことであり、今なお、解決の糸口すらありません(いわゆる、『嫌なら見るな』論争)。

However, this issue has been a long-standing controversy (since the days of fj, not 2channel), and even now, there is no solution (the so-called “if you don't like it, don't watch it” controversy).

-----

私は、今の時代に必要なのは「積極的無関心」ではないかと思うのです。

I believe that what is needed today is “active indifference.”

つまり、『人のことはほっとけ。自分のことだけやっとけ』です。

In other words, 'Leave other people alone. Just do your own thing.

つまるところ、『人のことなんぞ、ほっとけ』ということです。

これ、かなり難しいですが、私は、「一生懸命やっている人は見ないようにしている」という日々の対応と、「私のサイトには、誰からもコメントを受けつけないようにする」という措置を取っています。

These approaches are pretty challenging, but I have taken the daily operations of not looking at people trying their hardest and not accepting comments from anyone on my site.

辻説法(つじせっぽう)

まあ、「積極的無関心」という用語が成立するかどうかは疑義があるところかもしれません。

There may be some doubt as to whether the term “active indifference” is viable.

まあ、かつては、故安倍政権の基本政策として「積極的平和主義」が唱えられていたことがありました(最近は、すっかり聞かれなくなりましたが)。

There was once a time when “aggressive pacifism” was advocated as a fundamental policy of the late Abe's administration (although it has been all but unheard of recently).

ならば、「積極的無関心」も、それなりに成立するのではないか、と思っています。

Then, I believe that “active indifference” is also valid in its own right.

2024,江端さんの技術メモ

この地図のプロパティは、424 x 379

で、

set datafile separator "," # データの区切り文字をコンマに指定
set title "Cluster Data with Map" # グラフタイトル
set xlabel "X-axis" # X軸のラベル
set ylabel "Y-axis" # Y軸のラベル
set zlabel "Z-axis" # Z軸のラベル
set xrange [0:1] # X軸の範囲をデータに合わせて調整
set yrange [0:1] # Y軸の範囲をデータに合わせて調整
set zrange [0:1] # Z軸の範囲
set ticslevel 0 # Z軸を平面上に表示
set xyplane at 0 # XY平面をZ=0に設定
set view 40, 30, 1, 1 # 視点の角度とスケールを調整

# 地図画像をXY平面に表示 (画像のX軸、Y軸範囲を設定し、Z軸は0に固定)
splot "img_664a03bcd2376.png" binary filetype=png dx=1.0/424 dy=1.0/379 with rgbimage, \
'Cluster1.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" title 'Cluster 1', \
'Cluster2.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster3.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster4.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster5.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster6.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster7.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster8.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster9.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster10.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster11.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster12.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster13.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster14.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster15.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster16.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster17.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster18.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster19.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster20.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster21.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster22.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster23.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster24.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster25.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster26.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster27.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster28.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster29.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster30.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster31.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster32.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster33.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster34.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster35.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster36.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster37.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster38.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster39.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster40.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle, \
'Cluster41.csv' using 1:2:3 with points pt 7 ps 2 lc rgb "blue" notitle

cluster1.csvの内容はこんな感じ
0.63, 0.65, 0.58
0.62, 0.65, 0.56
0.61, 0.65, 0.56
0.61, 0.65, 0.56
0.62, 0.65, 0.56
0.62, 0.66, 0.55
0.63, 0.65, 0.55
0.62, 0.65, 0.56
0.62, 0.66, 0.57
0.62, 0.65, 0.58
0.62, 0.65, 0.58
(後略)

2024,江端さんの忘備録

私、東京裁判については、映画「東京裁判」の音声を、今でもバックグラウンドで流しながら仕事をしているくらいです。

I am so interested in the Tokyo Trials that I still play the audio of the movie “Tokyo Trials” in the background while I work.

―― 江端家のトイレライブラリの書架にある「はみだしっ子」が、娘たちに貸出された形跡がない

法律の基礎を特許法のゼミで叩き込まれたこの身の上としては、「東京裁判」の合法性について、当然に疑義はあります(主に、「遡及処罰の禁止」のことです)。

I had the basics of the law hammered into me in a seminar on patent law, so I naturally have my doubts about the legality of the “Tokyo Tribunal” (mainly about the “prohibition of retroactive punishment”).

ただ、「東京裁判」の歴史的意義は非常に大きかったとは思うのです。

However, I think the historical significance of the “Tokyo Trials” was very significant.

もし、あの裁判がなければ、「南京事件」「バターン死の行進」「満州事変」も、何もかも分からないまま戦争指導者の処刑で終了、ということになっていたからです。

If there had been no trial, the “Nanking Incident,” the “Bataan Death March,” and the “Manchurian Incident” would have ended with the execution of the war leaders, with nothing known about them.

-----

我が国の国民性として「自決、または辞任したら、その後の追求をやめてしまう」という特性があります。

The national character of our country is that “once the defendant has committed suicide or resigned, we stop pursuing the case afterward.

この是非ともかく、これも「公正世界仮説」の一つだと思います。

Regardless of the pros and cons, I believe this is one of the “Fair World Hypothesis.”

『北朝鮮に拉致された人は、きっと、その国の人間として、普通に幸せに暮しているよ』―― と。

ですので、私としては、現在の兵庫県知事の「パワハラ疑惑」「不正行為疑惑」「告発者への処罰と自殺」「第三者委員会の設置妨害」について、知って、自分なりに判断して、自分の言葉で論じたいので、知事には「自決、または辞任を絶対にしないで欲しい」のです。

So, for my part, I want to know about the current Hyogo governor's “power harassment allegations,” “misconduct allegations,” “punishment of the accuser and suicide,” and “obstruction of the establishment of a third-party committee” make my judgment, and discuss them in my own words, so I want the governor “never to commit suicide or resign.

ここで敢えて言いましょう ―― がんばれ!兵庫県知事、しがみつけ!兵庫県知事。明日の私の日記のネタの為に。

Let me dare to say here -- Hang in there! Governor Hyogo. Hang on there! Governor Hyogo. For my diary entry tomorrow.

2024,江端さんの技術メモ

chartjs-plugin-streaming.js は、今も便利に使わせて貰っています。

Golangから送り込んだデータを、chartjs-plugin-streaming(リアルタイムストリーミングデータ向け Chart.js プラグイン)で表示してみた件

で、今回、リアルタイムは必要なくて、単にグラフ表示が必要になりました。

このライブラリが必要です。https://www.papaparse.com/ からダウンロードできます。

sample.htmlという名前で以下のファイルをセーブします。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>CSV to Chart.js</title>
  <script src="./chart.js"></script>
  <script src="./papaparse.min.js"></script> <!-- 正しいPapaParseのCDN -->
</head>
<body>
  <canvas id="myChart" width="400" height="200"></canvas>
  <script>
    // サンプルのCSVファイルを読み込む処理
    fetch('sample.csv')
      .then(response => response.text())
      .then(csvData => {
        Papa.parse(csvData, {
          header: true,
          dynamicTyping: true,
          complete: function(results) {
            const data = results.data;
            const labels = [];
            const values = [];

            // CSVファイルからラベルとデータを抽出
            data.forEach(row => {
              labels.push(row['label_column']);  // 'label_column' はラベル用の列名
              values.push(row['value_column']);  // 'value_column' は値用の列名
            });

            // Chart.jsでグラフを描画
            const ctx = document.getElementById('myChart').getContext('2d');
            const chart = new Chart(ctx, {
              type: 'line',  // 折れ線グラフの例
              data: {
                labels: labels,
                datasets: [{
                  label: 'CSV Data',
                  data: values,
                  borderColor: 'rgba(75, 192, 192, 1)',
                  borderWidth: 1,
                  fill: false
                }]
              },
              options: {
                scales: {
                  x: {
                    beginAtZero: true
                  },
                  y: {
                    beginAtZero: true
                  }
                }
              }
            });
          }
        });
      });
  </script>
</body>
</html>

sample.csv は以下の通り。

label_column,value_column
January,10
February,15
March,20
April,25
May,30
June,35
July,40
August,45
September,50
October,55
November,60
December,65

あとは、

python3 -m http.server 8000

などとしてサーバを立ち上げておいて、ブラウザから、

http://localhost:8000/sample.html

とすれば、