乙Py先生のプログラミング教室
初学者のためのプログラミング学習サイト

テクノロジー

昨日

Googleの新ゲームサービス
「STADIA」が発表されました。


ヤバすぎて笹喰ってる場合じゃない

Googleの発表はこれ


Google GDC 2019 Gaming Announcement


解説動画はこれ:




主なサービスを自分なりにまとめてみました。

ゲームのストリーミングサービスである。

ゲーム自体はGoogleのサーバー上で再生される仕組みのため
ゲームをダウンロードしなくて良い

加えてゲーム機のスペックに依存しなくなるので
どのプラットフォームでも再生ができる
マルチプラットフォームとなる

Googleのサーバー上にゲームがあり
ハッキングやチート行為ができなくなるため
チート対策が完璧

これにより、今まで高スペックPCが必要で
手が出せていなかった層や
ラグに悩まされていたFPSゲーマーなんかも
凄い恩恵をうける

同時プレイの様子も自分の画面上で写せて
一緒にプレイできる

YouTubeのゲーム実況をしている人と
同じゲームに入り一緒にプレイできる


このような内容でした。

これは
・ゲーマー
・ゲームの実況をするYouTuber
・ゲームを開発者

全てに恩恵のある
物凄い画期的なサービスであります。

以前スクエニの人の講演を聞いた際には
ゲームはクラウドの中で再生されるみたいなことを言っていて

そのサービスを待っていたものの
Googleが先に出してしまいましたねー

ゲーマーサイドは
まずスマホでもテレビでもPCでもタブレットでも
ゲームができるのだから場所や端末に依存が少ないので
敷居が下がり参加できる人間が増えます。

実況者も
ゲームをする人が増えれば
当然恩恵を受けます。

一番の恩恵を受けるのは
開発者ではないでしょうか?

ゲームの開発は
再生端末の性能にかなり左右される部分があります。

再生スペックが低い端末に合わせて
泣く泣く低画質にしていたゲームなどは
いきなり超高画質でも
低スペックスマホで再生できてしまう・・・

そういった端末に合わせた開発をしなくていいのと
端末に合わせたビルドとかも必要なくなり
工数を減らせてクオリティーと利益がアップします。

今までは
iphone用とか
アンドロイド用とか
作り分けていたものを

STADIA用だけで済むのだから
これは捗るでしょう!!!

UnityやUnrealEngineへの対応も
発表されているようなので

もしかすると
最近低調だったゲーム業界も
もう一盛り上がりするのかもと
期待しています。

ゲームハードの会社にとっては
悪夢のようなサービス
・Microsoft
・任天堂
・Sony
のようなハード会社はここに追随していくのか
それとも諦めるのか!!

なかなか面白くなってきましたね

ただし、このサービスは
北米やカナダでの展開とのことで
日本はまだサービス開始のアナウンスがされていません。

ここら辺の情報が入ったらまたお届けしたいと思います。

さて

ライトノベル
皆さん読みますか?

自分は小説を読めない病で
小説を見ると頭が痛くなってしまうので
小説を読んだことが無いです。

ただしライトノベルの
タイトルは気になりました。

まずはラノベのタイトルに関するデータを
頑張って用意して・・・・

それをTableauで
こねこねします。

まずは全体のデータ量


文字数での作品数

3万タイトルくらいですかね
そのタイトルの文字数をヒストグラムにしてみました。

ボリュームゾーンは10-15文字くらいの
タイトルが多そうですね。


お次は
発売年月でタイトルの平均文字数を見てみます。

発売年別文字数平均の推移


年月単位で見ると
2005年から2019年のデータです。
上昇傾向にあるのがわかります。

年にまとめてみると

発売年別文字数平均

前年比が急激に変わったのは
2016年からですね

タイトルの平均文字数
16文字前後で推移していたのが
ドカンと増えています。

その後も上昇傾向は続きます。

年別で文字数の分布ごとの作品数の推移を見ます。

作品数は毎年上昇傾向にあります。

ラノベの年度別文字数別作品数の推移

10文字ずつでまとめた作品数を見てみると
2015年をピークに
10文字以下の作品数が減っています。

10-20文字の作品数は横ばい

2016-2018年では30文字以上のタイトルが
かなり増えてますね。

ここら辺が
タイトルの文字数が増える要因になっていると
考えられます。

いやー
小説のタイトルは
あまり気にしたことはないですが

最近はライトノベルの
タイトルが長いのが多いなーと
思ってはいたものの

統計的にも
数字に現れているんだなーと
実感しました。

タイトルの文字数が多いから売れたのか

売れてるタイトルの文字数が多いから
文字数を多くしたのか


そこがどっちなのかが気になりますね〜〜〜

販売数のデータ
どなたかお持ちでは無いでしょうか!!!!!!

だれか
データをください!!

2019年2月
プログラミング系の求人情報をデータ化して
Tableauで可視化しました。

動画はこちら



Tableauはこちら


BIツールの最高峰
Tableauがver10.2になって
Pythonが使えるようになりました

使い方

1.
Tableau10.2をインストールするかアップグレード 

2.
TabPyをダウンロード

git clone git://github.com/tableau/TabPy

gitコマンドでのダウンロードになるので
gitが無い人は要git install 

3.
TabPyディレクトリに移動

cd TabPy

4. 
TabPyサーバーのインストール

sh setup.sh (Macの場合)
setup.bat (Windowsの場合)

※ここでエラーが出るかも知れませんが
普通に使えました

5.
TabPyサーバーを起動

anacondaを既にインストールしている場合
anacondaディレクトリ配下に
インストールされるみたいなので
そこの中のstartup.sh(windowsはstartup.bat)を使って起動させる

起動させるとポート9004で立ち上がる

6.
Tableau側の連携設定

外部サービス接続設定で
no title

サーバー:localhost
ポート:9004
を指定する

※外部サーバーを指定することも可能

これで環境は整ったのであとは使う側


TableauからPythonの呼び出し方

計算式を作り
SCRIPT_REAL関数等を使って呼び出す

構文
SCRIPT_REAL(
'Pythonスクリプト' , 引数指定するメジャー1 , 引数指定するメジャー2 ・・・)

引数は2個以上設定可能なため , で繋げて行く

Pythonスクリプトの部分は
Pythonの関数を定義するような形にする

引数をPython側に渡すには引数名を
_arg1 , _arg2 ・・・のような命名にする

例:
サンプルストアのデータを使って
numpyで売上、利益の相関係数を返す

1

SCRIPT_REAL( '
import numpy as np
return np.corrcoef(_arg1,_arg2)[0,1]
' , 
SUM([売上]) ,
SUM([利益]) )

2つの引数がPython側に渡り
計算値がreturnでTableau側に返ってきます

この場合単に計算式を作って配置しただけだと
式のエラー表示が出ます

これは表計算で
ディメンジョンを使用しているからです

なので式の表計算設定で
使っているディメンジョンを指定してやります
(この場合は顧客名)
フィルターに設定する場合も同様です

最後に
トヨタの株価の推移と
米ドルの価格をつかって
どれだけ相関しているかを求めてみました

toyota

期間でフィルターしており
2016年10月から現在までのトヨタの株価と
米ドルの相関性は93%ほどになりました

期間によっては相関していない部分もあったり
こういう調査をするのにプログラムコードを書かずに
マウス操作だけで出来るようになるのは
Tableauの強みかと思います

因みに
Python連携できるのは
Tableau Desktopか
Tableau Serverだけで
Public版ではできないようです

買うしか無いとかwww



 

前回はシートの作り方をやったので
今回はダッシュボードの作り方です

シートを2つ作りましょう

こんな感じのシートを作りました

40

47
これをダッシュボードにしたいと思います

23
「新しいダッシュボード」をクリックして
ダッシュボードを開きます
25

ここにはダッシュボードに使えるシートが表示されています

ここでシート名を右側にドラッグしてみます
「カード」「コスト」2つをドラッグすると
39

34

こんな感じに2つのシートが表示されます
 
後は調整を

全部を表示させるのは見づらいので
フィルターを追加します

シートでフィルターを設定しておくと
ダッシュボードでもそのフィルターが使用できます

57
「ディメンジョン」から項目を
ドラッグしてフィルターを追加しておきましょう

次はダッシュボード側で設定を
58

追加したシートの右上部分にメニューがあり
そこから「フィルター」で使用したい
項目を選択します

26
こんな感じでフィルターが表示されてきます

ただこれだけだと、片方のシートにしかフィルターが
適用されないため、フィルター右上のメニューから
「ワークシートに適用」「選択したワークシート」
を選択します

37


そして
もう一方のシート名のチェックを入れ
OKを押します
14

これで両方のシートにフィルターがかかります


またシート自体をフィルターにすることも可能です
54
追加したシートの右上にある
「フィルターとして使用」のチェックを入れます

25
 
 こうすることにより
シートの値をクリックした際に
フィルタリングされるようになります

最終的に出来上がりがこんな感じです
シートをフィルター化したものは
再度クリックすると元に戻ります


 

このページのトップヘ