タイトル : Re: VB2008でグラフ作成をしたいが 投稿日 : 2009/12/14(Mon) 18:51 投稿者 : 魔界の仮面弁士
> 過去ログをみると MSChart を使って…とあるのですが、 http://hanatyan.sakura.ne.jp/dotnet/mschart1.htm ≫パソコン内にVB6.0がインストールされていないと使用できません。 とありますね。 替わりに、アドオンの Chart コントロールを使うか、 http://www.microsoft.com/downloads/details.aspx?familyid=130F7986-BF49-4FE5-9CA8-910AE6EA442C&displaylang=ja http://www.microsoft.com/downloads/details.aspx?familyid=1d69ce13-e1e5-4315-825c-f14d33a303e9&displaylang=en http://www.microsoft.com/downloads/details.aspx?familyid=581FF4E3-749F-4454-A5E3-DE4C463143BD&displaylang=ja あるいは、ReportViwer を試してみてください。 http://msdn.microsoft.com/ja-jp/library/ms251671.aspx http://msdn.microsoft.com/ja-jp/library/ms252128.aspx 前者については、 http://code.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=1591 にサンプルがあります(C# ですけれども)。 後者はこんな感じ。ヘルプにもチュートリアルがあります。 (1) [プロジェクト]-[新しい項目の追加]から、「データセット」を追加。(DataSet1.xsd) (2) [プロジェクト]-[新しい項目の追加]から、「レポート」を追加。(Report1.rdlc) (3) ソリューション エクスプローラから、"DataSet1.rdlc" をダブルクリックして データセット デザイナを開く。 (4) データセット デザイナを右クリックして、[追加]-[DataTable] を選択。 (5) 追加された "DataTable1" を右クリックして、[追加]-[列]を繰り返して、 "DataColumn1"と"DataColumn2"を追加する。 (6) 追加した列の DataType プロパティを変更して、 DataColumn1 は System.Int32 に変更し、 DataColumn2 は System.String のままにする。 (7) ソリューション エクスプローラから、"Report1.rdlc" をダブルクリックして レポート デザイナを開く。 (8) ツールボックスにある、"グラフ" をレポートにドロップする。(Name = chart1) 初期表示では、縦棒グラフになっているので、とりあえずこれを利用。 (9) [データ]-[データソースの表示]を選択して、データソース ウィンドウを開く。 (10) データソース ウィンドウの DataTable1\DataColumn1 をドラッグして、 レポート デザイナ上の char1 の上に持っていく。すると、 上部に「ここにデータフィールドをドロップします」と表示されるので、 そこに DataColumn1 をドロップする。 (11) 同様に DataTable1\DataColumn2 をドラッグして、今度は char1 の 下部にある「ここにカテゴリ フィールドをドロップします」にドロップする。 (12) ソリューション エクスプローラから、"Form1.vb" をダブルクリックして フォーム デザイナを開く。 (13) ツールボックスにある、"MicrosoftReportViewer" を フォーム デザイナにドロップする。(Name = ReportViewer1) (14) フォーム デザイナ上の ReportViewer1 を選択し、右上に表示される 右向き三角(タスク)を選択して、「レポートの選択」から "WindowsApplication1.Report1.rdlc" を指定する。 (15) Form1 のコードに以下を追加。 Public Class Form1 Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load '実験用の人口データ Me.DataSet1.DataTable1.AddDataTable1Row(3699428, "東京都") Me.DataSet1.DataTable1.AddDataTable1Row(2587847, "大阪府") Me.DataSet1.DataTable1.AddDataTable1Row(1323390, "神奈川県") Me.DataSet1.AcceptChanges() 'データの表示 Me.ReportViewer1.RefreshReport() End Sub End Class |