Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2014, 13:06   #1
inkerman
Новичок
Джуниор
 
Регистрация: 11.02.2012
Сообщений: 1
Вопрос Заливка между графиками (кривыми) в MS Excel

Добрый день
Подскажите как можно сделать заливку между линиями (это коридоры допустимых отклонений для различных точек надежности)





Проблема в том, что графики уходят ниже нуля и сделать подобную заливку проблематично. У меня вариант только один: разбивать каждую линию на две: больше нуля и меньше нуля и для каждой определять правила заливки и цвета, причем важен будет порядок наслоения.
Таким образом из 6 синусоид получится 12 кусочных кривых. Помимо громоздкости, неприятность в том, что в легенде графика будет 12+1 позиций из которых нужны лишь 6+1. ИМХО это кривоватое решение. Есть ли более красивое?

файл данных
inkerman вне форума Ответить с цитированием
Старый 29.09.2014, 17:33   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

как-то так

Код:
Sub Sinus()
  Dim y(3) As Double, dy(3) As Double, y0 As Double, i As Long, x As Double
  dy(1) = 90: dy(2) = 50: dy(3) = 20
  For x = 0 To 314 * 5
    y0 = 100 * Sin(x / 100)
    For i = 1 To 3
      With ActiveSheet.Shapes.AddLine(50 + x / 3, 200 - y0 - dy(i), 50 + x / 3, 200 - y0 + dy(i)).Line
        .ForeColor.RGB = RGB(i, 100 * i, 25 * i * i)
      End With
    Next
  Next
End Sub



Sub DelShapes()
  Dim sh As Shape
  For Each sh In ActiveSheet.Shapes
    sh.Delete
  Next
End Sub
первая процедура наризует 3 синусоиды, а вторая удалит линии из которых они нарисованы (чтобы не удалять 5 тыс.линий вручную)
добавте массив из 3-х RGB (нужного Вам цвета) - зарисуете нужными Вам цветами а не как у меня получилось.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Закраска области между графиками aaurov Microsoft Office Excel 1 04.09.2013 13:10
Заливка ячеек в Excel Доктор Microsoft Office Excel 12 04.02.2011 13:51
TChart: как заштриховать область между графиками 2х серий? vassel Компоненты Delphi 2 02.02.2011 01:40
Заливка прямоугольника в Excel UFO665 Microsoft Office Excel 7 24.06.2010 19:34
Excel заливка + формула DEHcuk Microsoft Office Excel 12 15.10.2009 14:27