Processing:Примеры/Круговая диаграмма: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Строка 3: Строка 3:
{{Перевод от Сubewriter}}
{{Перевод от Сubewriter}}
{{Myagkij-редактор}}
{{Myagkij-редактор}}
{{Черновик}}


=Описание<ref>[https://processing.org/examples/piechart.html processing.org - Pie Chart ]</ref>=
=Описание<ref>[https://processing.org/examples/piechart.html processing.org - Pie Chart ]</ref>=
Строка 72: Строка 70:
}
}
</syntaxhighlight>
</syntaxhighlight>
{{#set:
Код примера=
int[] angles = { 30, 10, 45, 35, 60, 38, 75, 67 };


void setup() {
  size(640, 360);
  noStroke();
  noLoop();  // делаем один цикл и останавливаемся
}
void draw() {
  background(100);
  pieChart(300, angles);
}
void pieChart(float diameter, int[] data) {
  float lastAngle = 0;
  for (int i = 0; i < data.length; i++) {
    float gray = map(i, 0, data.length, 0, 255);
    fill(gray);
    arc(width/2, height/2, diameter, diameter, lastAngle, lastAngle+radians(data[i]));
    lastAngle += radians(data[i]);
  }
}
}}
=См.также=
=См.также=


Строка 78: Строка 100:


<references />
<references />
{{SEO
|Заголовок статьи=Processing: Круговая диаграмма / Онлайн справочник - wikihandbk.com
|Ключевые слова=processing, Круговая диаграмма,Круговая диаграмма в processing, пример Круговая диаграмма, пример Круговая диаграмма в processing
|Описание статьи=
|Изображение статьи для Open Graph=
|Адрес страницы для schemaNewsArticle=<nowiki>http://wikihandbk.com/wiki/Processing:Примеры/Круговая диаграмма</nowiki>
|Изображение статьи для schemaNewsArticle=<nowiki></nowiki>
|Высота изображения статьи для schemaNewsArticle=
|Ширина изображения статьи для schemaNewsArticle=
|Дата публикации для schemaNewsArticle=2017-09-22
|Автор=Мякишев Е.А.
|Издатель=myagkij
|Логотип издателя для schemaNewsArticle=<nowiki>http://wikihandbk.com/ruwiki/images/6/61/Tech_geek_logo_1x.jpg</nowiki>
|Ширина логотипа издателя для schemaNewsArticle=60
|Высота логотипа издателя для schemaNewsArticle=45
}}


{{Навигационная таблица/Справочник языка Processing}}
{{Навигационная таблица/Справочник языка Processing}}
{{Навигационная таблица/Processing/Примеры}}
{{Навигационная таблица/Processing/Примеры}}
{{Навигационная таблица/Телепорт}}
{{Навигационная таблица/Телепорт}}

Версия от 02:12, 22 февраля 2023


Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Описание[1]

Этот скетч при помощи функции arc() генерирует круговую диаграмму на основе данных, хранящихся в массиве.

Пример

int[] angles = { 30, 10, 45, 35, 60, 38, 75, 67 };

void setup() {
  size(640, 360);
  noStroke();
  noLoop();  // делаем один цикл и останавливаемся
}

void draw() {
  background(100);
  pieChart(300, angles);
}

void pieChart(float diameter, int[] data) {
  float lastAngle = 0;
  for (int i = 0; i < data.length; i++) {
    float gray = map(i, 0, data.length, 0, 255);
    fill(gray);
    arc(width/2, height/2, diameter, diameter, lastAngle, lastAngle+radians(data[i]));
    lastAngle += radians(data[i]);
  }
}

{{#set: Код примера= int[] angles = { 30, 10, 45, 35, 60, 38, 75, 67 };

void setup() {

 size(640, 360);
 noStroke();
 noLoop();  // делаем один цикл и останавливаемся

}

void draw() {

 background(100);
 pieChart(300, angles);

}

void pieChart(float diameter, int[] data) {

 float lastAngle = 0;
 for (int i = 0; i < data.length; i++) {
   float gray = map(i, 0, data.length, 0, 255);
   fill(gray);
   arc(width/2, height/2, diameter, diameter, lastAngle, lastAngle+radians(data[i]));
   lastAngle += radians(data[i]);
 }

} }}

См.также

Внешние ссылки