Статья

Статья ASP.NET пример построения круговой диаграммы

Работа добавлена на сайт bukvasha.net: 2015-10-29

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 25.11.2024



ASP.NET: пример построения круговой диаграммы

Христофоров Юрий

Ниже будет показано, как можно в ASP.NET приложении, используя графические методы GDI+, нарисовать круговую диаграмму. Это может быть полезно, например, для наглядного представления данных.

Файл pie.aspx (написан на VB.NET):

<%@ Page Language="VB" ContentType="image/jpeg" %>

<%@ Import Namespace="System.Drawing" %>

<%@ Import Namespace="System.Drawing.Imaging" %>

<%@ Import Namespace="System.Drawing.Drawing2D" %>

<%

Response.Clear()

Dim height As Integer = 200

Dim width As Integer = 320

Dim x As Integer

Dim i As Integer

Dim start_angle As Integer

Dim pie_size As Integer

Dim sub_total As Integer

Dim offset As Integer

Dim diameter As Integer

Dim arrData() As Integer = {75, 45, 19, 10, 55} ' значения

Dim arrProcent(4) As Integer

Dim total As Integer

Dim arrColor() As Object = {Color.Salmon, Color.SeaGreen, Color.Gold, Color.Maroon, Color.Orchid}

Dim arrTitle() As String = {"Пункт1", "Пункт2", "Пункт3", "Пункт4", "Пункт5"}

Dim rect As Object

sub_total = 0

start_angle = 0

offset = 20

diameter = 170

total = 0

Dim bmp As New Bitmap(width, height, PixelFormat.Format32bppArgb)

Dim g as Graphics = Graphics.FromImage(bmp)

Dim fnt As New Font("Arial", 8)

Dim sb As New SolidBrush(Color.Blue)

g.Clear(Color.White)

g.SmoothingMode = SmoothingMode.HighQuality

' сумма значений в массиве

For i = 0 To arrData.GetUpperBound(0)

total = total + arrData(i)

Next

' проценты

For i = 0 To arrData.GetUpperBound(0)

arrProcent(i) = Math.Round((arrData(i)/total)*100)

Next

For i = 0 To arrProcent.GetUpperBound(0)

sub_total = sub_total + arrProcent(i)

pie_size = sub_total*360 / 100 - start_angle

g.FillPie(New SolidBrush(arrColor(i)), offset, offset, diameter, diameter, start_angle, pie_size)

start_angle = start_angle + pie_size

rect = New Rectangle(offset + diameter + 10, offset + i*20, 15, 15)

g.FillRectangle(New SolidBrush(arrColor(i)), rect)

g.DrawString(arrTitle(i) & " - [" & arrProcent(i) & "%]", fnt, sb, offset + diameter + 10 + 20, offset + i*20)

Next

bmp.Save(Response.OutputStream, ImageFormat.Jpeg)

g.Dispose()

bmp.Dispose()

Response.End()

%>



Результат работы скрипта:

Результат работы скрипта

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://www.activex.net.ru/



1. Реферат Преса країнської діаспори у міжвоєнний період
2. Реферат на тему Darkling Thrush Essay Research Paper Analysis of
3. Статья Геометрия эмоций
4. Контрольная работа на тему Потребительские свойства и показатели качества товаров
5. Курсовая Кран машиниста локомотивного депо
6. Реферат Методи конкурентної боротьби
7. Курсовая Стресс и пути его преодоления
8. Реферат на тему The Horse Dealers Daughter Essay Research Paper
9. Доклад на тему Религиозная жизнь в Москве
10. Реферат Стремление к власти в теории А.Адлера