scilabで離散的な階段状のグラフを描くには、どうすればいいのですか?
例えば、1ポイントずつ階段状に描写したいと思って作った以下のグラフは、点と点をまっすぐつないだだけのグラフになってしまいました。

X=0:1:4;
Y=[2,1,6,4];
plot(X,[Y(1) Y])

A 回答 (2件)

既に、質問者さんは、解決したかもしれませんが、他の方(離散値のプロットをmatlab風に行いたい人)が同じ問題で悩むかもしれないので、1つの解決方法を以下に示します。



h = gca(); //現在の座標(軸)を得る。
h.children.children.polyline_style = 2; //下位へのプロパティをたどり、polylineのスタイルを変更

で出来ると思います。
同じ座標に、2つ以上のプロットを行っている場合は、多分

h.children(1).children.polyline_style = 2; //現在の座標上の最後のプロット
h.children(2).children.polyline_style = 2; //現在の座標上の1つ前のプロット

だと思います。

※この場合、恐らく
h: 座標
children(x): 同じ座標上の複数のプロット
children(x).children: polylineという項目
だと思いますが、詳細は、参照URLを読んでみてください。

参考URL:http://www.scilab.org/product/man/axes_propertie …
    • good
    • 0

つまり、


X=[0,1,1,2,2,3,3,4];
Y=[2,2,1,1,6,6,4,4];
plot(X,Y)
てなればよい。

たとえば、
X=0:1:4;
Y=[2,1,6,4];
X2 = [X X(1:$-2)];
X2(1:2:$) = X(1;$-1);
X2(2:2:$) = X(2:$);
Y2 = [Y Y];
Y2(1:2:$) = Y;
Y2(2:2:$) = Y;
plot(X2, Y2)
とか。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「データをプロットする」の意味は?

ユーザーアンケートや属性などのデータをエクセルなどで分布図やポジショニングマップにまとめる時に「データをプロットする」と言いますが、この言葉の正確な意味は何なんでしょうか?
辞書で調べるとプロットは「筋書き、構成」などと出てきますが、「データをプロットする」はちょっと違う意味のように思います。
「データをプロットする」=「分布図やポジショニングマップにデータを当て込むこと」と考えてよいのでしょうか?

Aベストアンサー

名詞ではなく、動詞のplotですね。プログレッシブ英和中辞典では、《数》
〈点を〉座標で示す, 〈曲線を〉(決めた点を結んで)描く, 〈数式を〉曲線で表す, グラフで計算する、とあります。
実務の現場では、書かれたように“データを当て込む(入れ込む)”という
意味合いに用いることが多いのも事実だと思います。

QScilabのグラフの凡例

Scilabのグラフの凡例

Scilabのグラフの凡例に,例えばP1(1は下付き文字)と表示させたいのですが,下付き文字はどのように指定すればよいのでしょうか.

Aベストアンサー

Scilab5.2から追加された機能です。

legend("$P_1$")

で下付になります。他にもTeX形式の数式を入力できます。

Q【英語】 racing on to a Hao Haidong passの意味

YahooUKのページで(http://uk.sports.yahoo.com/040803/2/5ex2.html)

German-based playmaker Shao Jiayi put China ahead after 19 minutes, racing on to a Hao Haidong pass to fire home a powerful left-foot shot from 12 metres.

の中の、racing on to a Hao Haidong passの訳を教えてください。ハオ・ハイドンのパスをどうしたのでしょうか?
ご回答よろしくお願いいたします。

Aベストアンサー

通りすがりですが、

raceは「走る。競争する。」
on to~は、その結果として~にたどり着く、ぴたりと間に合う感じでしょうか。

よって、racing on to a Hao Haidong passは、ダッシュに競り勝って、味方のパスにぴったりミートしたシーンでしょうか。

前の方の回答がパーフェクトだと思いますが、
私も試訳してみました。

「ドイツ在籍のゲームメーカー、シャオ・ジェイが前半19分、ハオ・ハイドンからのパスに殺到。12メーター長の強烈な左足シュートをホームで炸裂させ、中国に先取点をもたらした。」

playmaker は、日本語で言うゲームメーカーのことではないかと思います。中田のような存在?

名前の読みはあまり自信ありません、ごめんなさい。

Qscilab のグラフが表示されない

環境: Mac OS X Lion (10.7.5)

https://www.scilab.org/download/5.4.1 よりmac用のscilabをダウンロードしたのですが、例えば

-->x=[0:0.1:2*%pi]';

-->plot(sin(x))

などとやってもグラフが表示されません。
(何も起きずに処理が終わります)
何故でしょうか。

※1 Scilabのバージョンが新しいのが悪いのか? と思い
https://sites.google.com/site/uenatyzk/i_wanna_be_wizard/scilab
を参照して 5.3.3 をダウンロードしてもみたのですが、こっちでやった場合、plot をすると一瞬だけグラフが表示されるのですが、その後強制終了してしまいました。

※2 ※1の「強制終了する」という件については
http://oshiete.goo.ne.jp/qa/6176658.html
で同様の質問があるようですが、解答の「ビデオカードののハードウエアアクセラレーションを何段階か落とすと大丈夫です」という意味がよくわかりません…。 (Mac で具体的にどうすればいいのかがわからなかった)
ちなみにJavaは最新のものをダウンロード済です。

環境: Mac OS X Lion (10.7.5)

https://www.scilab.org/download/5.4.1 よりmac用のscilabをダウンロードしたのですが、例えば

-->x=[0:0.1:2*%pi]';

-->plot(sin(x))

などとやってもグラフが表示されません。
(何も起きずに処理が終わります)
何故でしょうか。

※1 Scilabのバージョンが新しいのが悪いのか? と思い
https://sites.google.com/site/uenatyzk/i_wanna_be_wizard/scilab
を参照して 5.3.3 をダウンロードしてもみたのですが、こっちでやった場合、plot をすると一瞬だけグラフが表示されるの...続きを読む

Aベストアンサー

windows環境ですが、できるみたいです。
添付図みたいのでいいのですか?

原因はわかりませんが、再インストールしてみてはどうでしょうか?
力になれず、申し訳ありません。

Qディズニーアニメの英語plot

ディズニーアニメの、英語のplot(セリフ)が載っているサイトや本を知りませんか?
ディズニーアニメの日本語字幕版を見て英語の勉強をしているのですが、plotがないと英語ではなんと言っているのかまだよくわからないのです。
よろしくお願いします。

Aベストアンサー

"plot" は "粗筋" です。
捜していらっしゃるのは、"script" ですか。

このサイトは、"Disney" だけではないし、数も少ないですが。。。
"Movie Script" で捜せば、他のサイトも見つかるかも。^^

参考URL:http://www.imsdb.com/genre/Animation

QScilabで行列をグラフ化したいのですが…

Scilabで行列をグラフ化したいのですが…

すみません、Scilabを使っていて詰まってしまったので初心者なゆえ質問させてください。

行列をMatplotを使ってグラフ化しようとしたのですが、
グラフ化するとなぜかオートスケールがきかず出力画面が真っ黒になってしまいます。

おそらく、カラーマップでナンバー1が黒なので行列内にある2未満の数値がすべて
黒として表示されているのだと思います。
行列内の数値はすべて0以上1未満でしたので。


ここで例えば、
A=[0 0.5:1 2];
Matplot(A)

とすると要素(2,2)だけが青色でほかすべてが黒の二次元グラフができるかと思います。
(カラーマップ2が青なので)


理想は行列内のMAX値を一番明るくし、0を今までどおりの黒にしたいです。
ここに行列Bがあり、

B=[0 0.3 0.2:0 0 0.5]
とするならば、

0.5を一番明るくして0に近づくほどその色を黒にしていく。
こんなグラフが欲しいと思っています。
できますでしょうか??

無知ですみません、よろしくお願いします。

Scilabで行列をグラフ化したいのですが…

すみません、Scilabを使っていて詰まってしまったので初心者なゆえ質問させてください。

行列をMatplotを使ってグラフ化しようとしたのですが、
グラフ化するとなぜかオートスケールがきかず出力画面が真っ黒になってしまいます。

おそらく、カラーマップでナンバー1が黒なので行列内にある2未満の数値がすべて
黒として表示されているのだと思います。
行列内の数値はすべて0以上1未満でしたので。


ここで例えば、
A=[0 0.5:1 2];
Matplot(A)

とす...続きを読む

Aベストアンサー

ご希望の感じになるのかどうかわかりませんが、
グレースケールでやるっていうのはどうでしょう?
//--------------------------------------------------------
lines(0)
Crange=100 // 増やすと分解能が上がる。(上限不明)
B=[0:0.1:0.9 ; 1:0.1:1.9 ; 2:0.1:2.9 ; 3:0.1:3.9]

Bg=B.*(Crange/max(B)) // Bの最大値をCrangeの最大値にしたMatrix
Matplot(Bg) // ColorMap
xset("colormap",graycolormap(Crange)) //グレースケール化
lines(50)
//--------------------------------------------------------

Q種類の異なるグラフを同時に表示

うまく伝わるかどうか自信がありませんが、質問です。

エクセルでグラフを作成する際に、種類の異なるグラフを同時に
表示させたいのです。具体的には、
「集合縦棒」「積み上げ縦棒」「折れ線グラフ」
この3種類を表示させたいのです。

2Dと3Dのグラフは同時に表示させることはできないようですが、
この場合は違いますよね。
最初に普通の「集合縦棒」でグラフを作っておいて、あとから「データの追加」で
積み上げ縦棒を作ろうとすると、さっき作った集合縦棒の分までが
一緒に「積み上げ縦棒」として表示されてしまいます。

また、最初にグラフを作成する際に、グラフウィザードから「ユーザー設定」タブを
選択し、その中にある「2軸上の折れ線と縦棒」を選択し、ここでひとまず
普通の縦棒(集合縦棒)と折れ線グラフを同時に表示できますが、ここに
新たに積み上げ縦棒を追加しようと思うと、縦棒グラフが積み上げ縦棒に
なってしまいます。

そもそも、私が考えているのは不可能なことなんでしょうか?
それとも何か手段があるのでしょうか?

よろしくお願い致します。

うまく伝わるかどうか自信がありませんが、質問です。

エクセルでグラフを作成する際に、種類の異なるグラフを同時に
表示させたいのです。具体的には、
「集合縦棒」「積み上げ縦棒」「折れ線グラフ」
この3種類を表示させたいのです。

2Dと3Dのグラフは同時に表示させることはできないようですが、
この場合は違いますよね。
最初に普通の「集合縦棒」でグラフを作っておいて、あとから「データの追加」で
積み上げ縦棒を作ろうとすると、さっき作った集合縦棒の分までが
一緒に「積み上げ縦棒...続きを読む

Aベストアンサー

「棒グラフ」と「折れ線グラフ」は、種類が違うので
同時に表示できますが、
「集合縦棒」と「積み上げ縦棒」は形式が違っても
種類は同じなので、同時には表示できないのでは?

QScilabでfor文を使用しないで記述する方法

最近Scilabの勉強を始めました。
Scilabではfor文を使用することはあまり薦められないとのことのようですので、下記処理を何らかのコマンドを使用して実現しようと思うのですが、どうしてもわかりません。
お詳しい方、ご教授願えないでしょうか。

for i=1:10000;
if AB(i)>CD(i)
Y(i)=AB(i)-CD(i); //AB>CDの時はそのまま差を計算
else
Y(i)=(AB(i)+%pi)-CD(i); //AB<=CDの時はABにπプラスして差を計算
end
end

Aベストアンサー

最近はScilabを使っていないので、もっとエレガントな方法があるかもしれませんが

bool2s()を使えば可能です。
bool2s(AB<=CD)*%pi
で真偽に応じて%piと0の配列が得られます。
あとは、AB-CDに加えるだけです。

Qエクセル 片対数グラフの二軸構成について。

エクセル 片対数グラフの二軸構成について。


エクセルでX軸を対数にして、測定値二つをY軸としてグラフを作成しています。


それぞれの測定値の値の大きさが違うので、二軸にしようとしたところ
「負の数値またはゼロは対数グラフにプロットできません」
みたいなエラーが出てきました。

無視して続行したら二軸にした値は変なグラフになってしまいました。

値にゼロや負の値は入っていません。

Y1 1000~800
Y2 0.001~0.015

だいたいこれくらいの値です。

片対数グラフは二軸構成ができないのでしょうか?


もし、できるとしたらなにか解決策はありますか?お願いします。


エクセルは2007を使用しております。

Aベストアンサー

ふつうにできました。
Y軸との交点を0にしてたりしませんか?

QScilab

scilabで
x(n)=U(n)-U(n-N)をfftを用いてフーリエ変換する
プログラムを教えてください!

Aベストアンサー

fft(x)
ではないでしょうか。

help fft
で説明があります。
Examples以下を参考にしてください。


人気Q&Aランキング

おすすめ情報