Using After Effects CC 2018, Excel and JSON to create Graphs

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ค. 2024
  • Access this course + 30 of my other courses for $12 p/m: bit.ly/34j5tIJ
    Free Exercise Files: bit.ly/34ktwHj
    Free Cheat Sheet: bit.ly/34j5wUV
    Get Adobe After Effects here: goo.gl/HnRxzo
    In this free video, we'll look at the awesome new upgrade in Adobe After Effects CC 2018, which allows you to take a spreadsheet from something like excel, export it to JSON and use it to produce a graph dynamically.
    Follow me on Instagram: / bringyourownlaptop
    Follow me on TikTok: www.byol.com/tiktok
    Follow me on Twitter: / danlovesadobe
    Follow us on Facebook: / bringyourownlaptop

ความคิดเห็น • 78

  • @BringYourOwnLaptop
    @BringYourOwnLaptop  6 ปีที่แล้ว +3

    Thanks for all the positivity, remember to check out my website here: goo.gl/ysjGyB

  • @BenSullinsOfficial
    @BenSullinsOfficial 5 ปีที่แล้ว +6

    this is incredible, thank you for putting this together. Now to automate everything in my workflow :)

  • @BryceAC
    @BryceAC 5 ปีที่แล้ว +2

    Fantastic tutorial! Really easy to understand and follow your instructions (tyvm for the Windows shortcuts too!)

  • @derhacki
    @derhacki 4 ปีที่แล้ว

    Thank you so much! Just what I needed! Insane!!

  • @hei38cuhc
    @hei38cuhc 6 ปีที่แล้ว +2

    thank you for this great explanation!

  • @simongentry
    @simongentry 6 ปีที่แล้ว

    it will keep you warm AND you can stand up in it for a while ☕️🎥🔥

  • @justuscilliers
    @justuscilliers 6 ปีที่แล้ว +1

    WOW ,.. cool tutorial ,.. thanks

  • @marcoantonio7648
    @marcoantonio7648 5 ปีที่แล้ว +1

    DAMMMMM MAAAAAANNNNN. This has so much potential.

  • @hyacinthempinado8132
    @hyacinthempinado8132 5 ปีที่แล้ว

    Thanks for the tutorial! Is there a way to add or remove points to the path after creating nulls from points?

  • @jacvanderspuy5618
    @jacvanderspuy5618 5 ปีที่แล้ว

    Thanks so much for this. Could you use the dataValue(datapath) method instead of eval?

  • @karpulol
    @karpulol 6 ปีที่แล้ว

    nice tutorial, thanks
    is there now a workaround, how i can still animate the Y position?

  • @marlinknecht
    @marlinknecht 4 ปีที่แล้ว

    Nice video, I am just beginning to look at some of the dynamic capabilities, we used to do a lot of this sort of thing in Flash back in the day, but with real time dynamic pulls from remote databases. Are there any tutorials you know of that have a "how to" on this? I can imagine writing a page to retrieve it and deliver the information in JSON format, but will AE deal with this? What would trigger the page call from a server?

  • @amaxim5586
    @amaxim5586 2 ปีที่แล้ว

    DAN you are the MAN. thanks for this tutorial!

  • @nturner2176
    @nturner2176 6 ปีที่แล้ว +1

    Excellent! All the tools!

  • @zedzero01
    @zedzero01 6 ปีที่แล้ว +1

    hey, Great tutorial!
    I'm having one issue though:
    My data is in the form of "year' : value,
    so for example "1990':5.5,
    I wanted to be able to add a slider to drive the year value so I can get it to animate, but it doesn't work.
    I've tried converting the slider value to a string, rounding it down, nothing seems to work.
    Any idea why?

  • @MurthyA
    @MurthyA 6 ปีที่แล้ว

    @Bring Your Own Laptop , thanks for a precise explanation, I was trying to render this file using aerender and unfortunately aerender is not JSON aware , any suggestions on this

  • @DanielPartzsch
    @DanielPartzsch 6 ปีที่แล้ว

    in the release video for the JSON import Adobe mentioned, that you can also create new paths from JSON. do you know how to do that?

  • @milkiastonji6804
    @milkiastonji6804 3 ปีที่แล้ว

    You are just amazing!

  • @Breeakthesilence
    @Breeakthesilence 6 ปีที่แล้ว +1

    if you want to change all the values at the same time, for example from 2016 to 2017, you can also create a text layer and paste the source text.
    Example: (my new Textlayer is named as changer)
    weather[thisComp.layer("change").text.sourceText].Year;
    Then you can simply change the number in the newly created text layer and all values will be automatically swapped.
    Best regards from Germany
    PS: Sorry for my bad english

  • @insidemotion_
    @insidemotion_ 3 ปีที่แล้ว

    you saved my life dude.. thanks

  • @eduardoasta
    @eduardoasta 5 ปีที่แล้ว

    That's great. Thks!

  • @luisernestoperafanchacon907
    @luisernestoperafanchacon907 5 ปีที่แล้ว +1

    Good video!, but what if I wanted to create a chart that shows de data dynamically? I mean, in the x-axis instead of twelve months let it be sixty months moving in a row, in the y-axis instead of fixed values let it be random values that go up and down according to date, both of them attached to the "trim paths". How can I make something like that?

  • @Censtudios
    @Censtudios 6 ปีที่แล้ว +6

    This is great. I have one question though. You use weather[0] as an example, but I have a json file with about 140 different keys (so for an example weather[78]). Is there a way to quickly change weather[0] to any sort of weather[x] number I want in all my expressions without having to edit 40 different layers manually? I want to use this for a live-broadcast setting where I'll need to be able to change the value within a few seconds so it can be inserted into the live broadcast almost instantly. I was thinking of using a hidden text layer somewhere where I can just put in the number and pickwhip it or something, but I'm not sure how that works with the expressions.

    • @ironknee16
      @ironknee16 4 ปีที่แล้ว +5

      I know this is a super late reply. Apologies. A useful tactic that you might try for this (so long as you're careful/intentional with your layer order) is using thisLayer.index as an auto-updating "x" value. This will reference the layer's number in the layer stack order. So long as your comp and your json file work in tandem with one another - i.e. the data set and layer stack are in the same relative order - you should be able to craft an expression that automatically cycles to the next column in the json file without having to manually advance the number within the expression. So in your example, "weather[78]" would be "weather[thisLayer.index]" instead and would work as expected so long as the layer this expression is applied to is 78th in the stack order. Lastly, if you need some layers above the layers that have the expression (thereby disrupting the index number in relation to the json file) simply add a variable onto the end of the thisLayer.index. Something like a slider on a master null object. It would look something like "thisLayer.index+thisComp.layer("Master Null").effect("Index Offset")("Slider")". That way you can dynamically (instead of manually) offset the index number to all layers in case the stack order has to change. Hope this helps.

  • @KidChillinVideos
    @KidChillinVideos 4 ปีที่แล้ว

    Wonderful.

  • @lua9757
    @lua9757 6 ปีที่แล้ว

    my mirror edges don’t work since i have ae 2018!! i did it just the same way as i did in 2017 but there is just no mirror effect! it’s just black not like a reflection... i really need that effect.. does anyone maybe know what i can do or what i maybe did wrong? :)

  • @lindaabruzzo
    @lindaabruzzo 5 ปีที่แล้ว

    I have the CS4 version; do I need any plug-in to use json files? Because I can't import that type of file. Or how can I do?

  • @davidserban
    @davidserban 5 ปีที่แล้ว +1

    Amazing...

  • @orangefanta6567
    @orangefanta6567 4 ปีที่แล้ว

    Hi, when I previewed my project after using this tutorial, it worked fine, but when I tried to export it was just a flat line, what should I do?

  • @cutterjohnston5668
    @cutterjohnston5668 4 ปีที่แล้ว

    Thanks for this tutorial. I am not able to convert excel into a JSON file with an online convert or Dreamweaver successfully. Does anyone know of a converter that works?

  • @shawnmeyer6153
    @shawnmeyer6153 6 ปีที่แล้ว +2

    Thanks for the video! Any tips on pointing to an image file that can be switched out? What would that layer look like and can it accept a file path string from my JSON file?

    • @rikvandenreijen
      @rikvandenreijen 14 วันที่ผ่านมา

      Have you figured out how to that part?

  • @veggiet2009
    @veggiet2009 6 ปีที่แล้ว +1

    The most recent update includes CSV support directly in AE!

  • @holiday7parade
    @holiday7parade 5 ปีที่แล้ว

    What if instead of just "city" I have data with, for example, "city white". How can I call this into function?

  • @thomassantana9193
    @thomassantana9193 4 ปีที่แล้ว

    thank you

  • @Comic_Book_Creator
    @Comic_Book_Creator 4 ปีที่แล้ว

    how ca we do this with maps? like country maps?

  • @gerganagergova
    @gerganagergova 6 ปีที่แล้ว +5

    When you write your expression in Jan's position, can't you just split the dimensions instead of trying to find myYheight inside the expression? 14:45

    • @BooneLovesVideo
      @BooneLovesVideo 6 ปีที่แล้ว +2

      I was thinking the same thing.

  • @michalbotor
    @michalbotor 5 ปีที่แล้ว +1

    thank you daniel!
    this was very helpful. i must say however, that i still find data visualization and animation in after effects quite cumbersome. it just seems like there is so much work to achieve such a simple result.. :/
    anyway, i've played a little with the expression that you gave and i come up with its simplified version:
    let data = footage("Dublin Weather.json").sourceData[0];
    let mon = thisLayer.name;
    let temp = data[mon];
    let y = linear(temp, 0, 30, 883, 283);
    [value[0], y];
    warning: this assumes that the null layers are named exactly like the keys in the json file, i.e. for january: in json we have "Jan" and the null is called "Jan" as well, and so on.., just like you did.
    how to use it: select your top null, hit "p" to open its position, alt+click it to open its expression field, and paste it there. then right-click position and click "Copy Expression Only". select all nulls but your top one, and paste it with ctrl+v. done. ;)

  • @EdwinvandenAkker
    @EdwinvandenAkker 6 ปีที่แล้ว +1

    I love this feature! I work a lot with JSON. And now I can finally use it in AFX.
    In this video you had to "hard-code" the months in the expressions. What if you can select the month by the layer name? I think you might be able to do that with the "eval" function, right?

    • @DanielPartzsch
      @DanielPartzsch 6 ปีที่แล้ว +3

      you can just use "thisLayer.name"

    • @BringYourOwnLaptop
      @BringYourOwnLaptop  6 ปีที่แล้ว +2

      You can. I guess I was trying to keep it simple for the demo but referencing the layer name would be better.

  • @vanjasrdic8325
    @vanjasrdic8325 4 ปีที่แล้ว

    where can I find te bar graph tutorial?

  • @anthonytonev1357
    @anthonytonev1357 6 ปีที่แล้ว

    Can I use "Bodymovin" plugin to export animation in json format from AE and then put it back in AE with this new feature? Would it work?

    • @chenjony8407
      @chenjony8407 6 ปีที่แล้ว

      The same thought. But I guess it won't work well

  • @haazmedia
    @haazmedia 3 ปีที่แล้ว

    Does any program exist that can do something similar?

  • @srrondohd
    @srrondohd 6 ปีที่แล้ว

    Hello, I have a very big silly problem. First thank you for this tutorial because I've been able to successfully animate the data with a JSON file!
    The problem just came when I try to render the composition... AE itself doesn't have any MP4 option, so I export it to the Media Encoder.. but It seems to not recognize the JSON file so the output result is the video without any data from the JSON file!!!
    Would you be able to tell me how do you export your project files so the media encoder detects the JSON? Has anybody faced this problem and sorted it out? Thanks in advance

    • @StudiodeRaaf
      @StudiodeRaaf 6 ปีที่แล้ว +3

      If you still have this problem maybe this will help, i had the same probem and found the solution (on the net): you should place the .json file also in the composition and not only in the project window. Then it will also render the data. Hope this will do the trick for you.

  • @rafaeltoschichiafarelli8952
    @rafaeltoschichiafarelli8952 6 ปีที่แล้ว

    really great video!
    Makes me wonder of how many hours I´ve lost, and how many hours I will not loose again!

    • @BringYourOwnLaptop
      @BringYourOwnLaptop  6 ปีที่แล้ว

      haha , good to hear ( Now the thing is to put all those extra hours to good use )

    • @BringYourOwnLaptop
      @BringYourOwnLaptop  6 ปีที่แล้ว

      Glad to hear you've found some valuable information!

  • @AhadUd
    @AhadUd 6 ปีที่แล้ว

    Can you please tell me where can I download the latest ae for free

  • @RAM_Tv
    @RAM_Tv 6 ปีที่แล้ว

    how to replace images with expressions but depend on data?

    • @MassimodiSegni
      @MassimodiSegni 6 ปีที่แล้ว

      I need this!!!!!! You've done?

  • @dineshkumarsoftware
    @dineshkumarsoftware 3 ปีที่แล้ว

    This is okay for small datasets but what can we do about high volumes of data's can't really create 10k points with pen tool lol

  • @icegoogles
    @icegoogles 4 ปีที่แล้ว +1

    Nice video! It gives a nice overview!
    One small error is made in the formula for 'myYheight', this is the correct formula:
    myYheight = (temp - min)/(max - min) * max_movement + newBaseline;
    otherwise it it only correct if the minimum value is 0.
    maybe you could write this in the description or pin this comment.

    • @syafiqmazli
      @syafiqmazli 2 ปีที่แล้ว

      You're a life saver! I've been working around this for hours. Really appreciate this!

  • @matthewcampagiorni2271
    @matthewcampagiorni2271 5 ปีที่แล้ว

    super informative. definitely going to say "sex it up" more often too

  • @trueog2
    @trueog2 6 ปีที่แล้ว +2

    I think you could have used the "copy/paste expression only" feature to save a little time. Obviously you would have to change the ref for the months but, hey, time is unvaluable, ain't it?

    • @BringYourOwnLaptop
      @BringYourOwnLaptop  6 ปีที่แล้ว

      Great idea! thanks for the idea

    • @MrKevinMulder
      @MrKevinMulder 2 หลายเดือนก่อน

      And instead of “Jan” use “thisLayer.name” you wouldn’t have to change the refs, since it takes the names from your already correct named layers.

  • @palpytine
    @palpytine 6 ปีที่แล้ว +4

    Can't help but feel that there needs to be a better way. Repeating that full JSON parse for each expression has got to be terrible for efficiency, plus the amount of code duplication is just begging for an error to creep in.

    • @FakeGreenDress
      @FakeGreenDress 6 ปีที่แล้ว +2

      Kevin Wright There is a better way! You can do footage("whateveryourfileis.json").sourceData instead, much like you would use sourceText for a text layer. It's much faster (won't re-parse the data on every frame) and much easier to read.

    • @AVUltra
      @AVUltra 6 ปีที่แล้ว

      This is really a tough workaround- Im using Dataclay Templater to drive a lot of data animation and replacements.

    • @jedpatton2547
      @jedpatton2547 6 ปีที่แล้ว

      Could you explain this further? Would this help for data with 1000s of datapoints?

    • @AVUltra
      @AVUltra 6 ปีที่แล้ว

      All depends on what exactly you are trying to do.
      I've tried several different options for integrating and visualizing Data sets into After effcts with little success.
      I just recently hd to use a set of 900 individual compositions, numbers of each item, and different images/videos for those items, while making sure they were all uniform and the same layout/animation etc for broadcast.
      Having a google doc, I was able to have the specific item, the number, the description field, photos, all aniamte by row down my google doc and create a new composition for each unit.
      Something that took a team of 4 people, 3 weeks to do I was able to animate and deliver in a single afternoon.
      I dont work for dataclay, and i kinda hate the price structure, but it has been bar non the best way to animate/ integrate large sets of data driven assets.
      If you are looking at raw numbers Im positive the data fields in dataclay templater can be tied to expressions to make simple graphs as well.
      Hope that helps- I'd really recommend checking them out.
      -Stanislaw Luberda
      AV-Ultra

    • @drewalderfer3726
      @drewalderfer3726 6 ปีที่แล้ว

      There is a better way for a lot of this. Create a simple two point line with the pen tool. Using an expression in the path property create an array of the xy coordinates for each point in your data then just plop it in the createLine method and you're done. This way you don't have null objects filling up your time line and it's one expression in one place for the entire graph. Also using the "linear" method for remapping the data points to pixel coordinates is a lot easier than doing the math yourself with a bunch of different variables particularly in this case where you're going to have all those variables duplicated across 12 null objects. If you need to change something you'll have to go through and change every variable again in each object. It should go without saying but if you're copy pasting the same variables across multiple objects they should be linked to sliders or something in a null layer.

  • @GlennG5150
    @GlennG5150 6 ปีที่แล้ว +1

    Using After Effects to make graphs is like using a Wacom Cintiq tablet to make stick figures. Waste of a powerful tool when you can use presentation software, and not worth the time/effort for the return. And before anyone gets picky, it's just one professional's opinion here.

    • @barianii
      @barianii 5 ปีที่แล้ว

      Perfect. Felt the same.

  • @thecruisebalcony
    @thecruisebalcony 4 ปีที่แล้ว +1

    FFS Mate, Talk slower.

  • @markchadwick77
    @markchadwick77 3 ปีที่แล้ว

    Excellent tutorial. Thanks! I have some constructive criticism. Your speech has a relaxed, random intonation. A more conventional intonation would be better for the listener.

  • @vijfmm5055
    @vijfmm5055 5 ปีที่แล้ว

    Too long, didn't watch.